xref: /aosp_15_r20/prebuilts/sdk/35/system/api/android-non-updatable.txt (revision 344a7f5ef16c479e7a7f54ee6567a9d112f9e72b)
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 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 @Deprecated public static final String ACCESS_FM_RADIO = "android.permission.ACCESS_FM_RADIO";
14    field public static final String ACCESS_FPS_COUNTER = "android.permission.ACCESS_FPS_COUNTER";
15    field public static final String ACCESS_HIDDEN_PROFILES_FULL = "android.permission.ACCESS_HIDDEN_PROFILES_FULL";
16    field public static final String ACCESS_INSTANT_APPS = "android.permission.ACCESS_INSTANT_APPS";
17    field public static final String ACCESS_LOCUS_ID_USAGE_STATS = "android.permission.ACCESS_LOCUS_ID_USAGE_STATS";
18    field public static final String ACCESS_MOCK_LOCATION = "android.permission.ACCESS_MOCK_LOCATION";
19    field public static final String ACCESS_MTP = "android.permission.ACCESS_MTP";
20    field public static final String ACCESS_NETWORK_CONDITIONS = "android.permission.ACCESS_NETWORK_CONDITIONS";
21    field public static final String ACCESS_NOTIFICATIONS = "android.permission.ACCESS_NOTIFICATIONS";
22    field public static final String ACCESS_PDB_STATE = "android.permission.ACCESS_PDB_STATE";
23    field public static final String ACCESS_RCS_USER_CAPABILITY_EXCHANGE = "android.permission.ACCESS_RCS_USER_CAPABILITY_EXCHANGE";
24    field public static final String ACCESS_SHARED_LIBRARIES = "android.permission.ACCESS_SHARED_LIBRARIES";
25    field public static final String ACCESS_SHORTCUTS = "android.permission.ACCESS_SHORTCUTS";
26    field public static final String ACCESS_SMARTSPACE = "android.permission.ACCESS_SMARTSPACE";
27    field public static final String ACCESS_SURFACE_FLINGER = "android.permission.ACCESS_SURFACE_FLINGER";
28    field public static final String ACCESS_TUNED_INFO = "android.permission.ACCESS_TUNED_INFO";
29    field public static final String ACCESS_TV_DESCRAMBLER = "android.permission.ACCESS_TV_DESCRAMBLER";
30    field public static final String ACCESS_TV_SHARED_FILTER = "android.permission.ACCESS_TV_SHARED_FILTER";
31    field public static final String ACCESS_TV_TUNER = "android.permission.ACCESS_TV_TUNER";
32    field public static final String ACCESS_ULTRASOUND = "android.permission.ACCESS_ULTRASOUND";
33    field public static final String ACCESS_VIBRATOR_STATE = "android.permission.ACCESS_VIBRATOR_STATE";
34    field public static final String ACTIVITY_EMBEDDING = "android.permission.ACTIVITY_EMBEDDING";
35    field public static final String ADD_ALWAYS_UNLOCKED_DISPLAY = "android.permission.ADD_ALWAYS_UNLOCKED_DISPLAY";
36    field public static final String ADD_TRUSTED_DISPLAY = "android.permission.ADD_TRUSTED_DISPLAY";
37    field public static final String ADJUST_RUNTIME_PERMISSIONS_POLICY = "android.permission.ADJUST_RUNTIME_PERMISSIONS_POLICY";
38    field public static final String ALLOCATE_AGGRESSIVE = "android.permission.ALLOCATE_AGGRESSIVE";
39    field public static final String ALLOW_ANY_CODEC_FOR_PLAYBACK = "android.permission.ALLOW_ANY_CODEC_FOR_PLAYBACK";
40    field public static final String ALLOW_PLACE_IN_MULTI_PANE_SETTINGS = "android.permission.ALLOW_PLACE_IN_MULTI_PANE_SETTINGS";
41    field public static final String ALLOW_SLIPPERY_TOUCHES = "android.permission.ALLOW_SLIPPERY_TOUCHES";
42    field public static final String ALWAYS_UPDATE_WALLPAPER = "android.permission.ALWAYS_UPDATE_WALLPAPER";
43    field public static final String AMBIENT_WALLPAPER = "android.permission.AMBIENT_WALLPAPER";
44    field public static final String APPROVE_INCIDENT_REPORTS = "android.permission.APPROVE_INCIDENT_REPORTS";
45    field public static final String ASSOCIATE_COMPANION_DEVICES = "android.permission.ASSOCIATE_COMPANION_DEVICES";
46    field public static final String BACKGROUND_CAMERA = "android.permission.BACKGROUND_CAMERA";
47    field public static final String BACKUP = "android.permission.BACKUP";
48    field public static final String BATTERY_PREDICTION = "android.permission.BATTERY_PREDICTION";
49    field public static final String BIND_AMBIENT_CONTEXT_DETECTION_SERVICE = "android.permission.BIND_AMBIENT_CONTEXT_DETECTION_SERVICE";
50    field public static final String BIND_ATTENTION_SERVICE = "android.permission.BIND_ATTENTION_SERVICE";
51    field public static final String BIND_AUGMENTED_AUTOFILL_SERVICE = "android.permission.BIND_AUGMENTED_AUTOFILL_SERVICE";
52    field public static final String BIND_CALL_DIAGNOSTIC_SERVICE = "android.permission.BIND_CALL_DIAGNOSTIC_SERVICE";
53    field public static final String BIND_CALL_STREAMING_SERVICE = "android.permission.BIND_CALL_STREAMING_SERVICE";
54    field public static final String BIND_CELL_BROADCAST_SERVICE = "android.permission.BIND_CELL_BROADCAST_SERVICE";
55    field @Deprecated public static final String BIND_CONNECTION_SERVICE = "android.permission.BIND_CONNECTION_SERVICE";
56    field public static final String BIND_CONTENT_CAPTURE_SERVICE = "android.permission.BIND_CONTENT_CAPTURE_SERVICE";
57    field public static final String BIND_CONTENT_SUGGESTIONS_SERVICE = "android.permission.BIND_CONTENT_SUGGESTIONS_SERVICE";
58    field public static final String BIND_DIRECTORY_SEARCH = "android.permission.BIND_DIRECTORY_SEARCH";
59    field public static final String BIND_DISPLAY_HASHING_SERVICE = "android.permission.BIND_DISPLAY_HASHING_SERVICE";
60    field public static final String BIND_DOMAIN_SELECTION_SERVICE = "android.permission.BIND_DOMAIN_SELECTION_SERVICE";
61    field public static final String BIND_DOMAIN_VERIFICATION_AGENT = "android.permission.BIND_DOMAIN_VERIFICATION_AGENT";
62    field public static final String BIND_EUICC_SERVICE = "android.permission.BIND_EUICC_SERVICE";
63    field public static final String BIND_EXTERNAL_STORAGE_SERVICE = "android.permission.BIND_EXTERNAL_STORAGE_SERVICE";
64    field public static final String BIND_FIELD_CLASSIFICATION_SERVICE = "android.permission.BIND_FIELD_CLASSIFICATION_SERVICE";
65    field public static final String BIND_GBA_SERVICE = "android.permission.BIND_GBA_SERVICE";
66    field public static final String BIND_HOTWORD_DETECTION_SERVICE = "android.permission.BIND_HOTWORD_DETECTION_SERVICE";
67    field public static final String BIND_IMS_SERVICE = "android.permission.BIND_IMS_SERVICE";
68    field public static final String BIND_KEYGUARD_APPWIDGET = "android.permission.BIND_KEYGUARD_APPWIDGET";
69    field public static final String BIND_MUSIC_RECOGNITION_SERVICE = "android.permission.BIND_MUSIC_RECOGNITION_SERVICE";
70    field public static final String BIND_NETWORK_RECOMMENDATION_SERVICE = "android.permission.BIND_NETWORK_RECOMMENDATION_SERVICE";
71    field public static final String BIND_NOTIFICATION_ASSISTANT_SERVICE = "android.permission.BIND_NOTIFICATION_ASSISTANT_SERVICE";
72    field public static final String BIND_ON_DEVICE_INTELLIGENCE_SERVICE = "android.permission.BIND_ON_DEVICE_INTELLIGENCE_SERVICE";
73    field public static final String BIND_ON_DEVICE_SANDBOXED_INFERENCE_SERVICE = "android.permission.BIND_ON_DEVICE_SANDBOXED_INFERENCE_SERVICE";
74    field public static final String BIND_PHONE_ACCOUNT_SUGGESTION_SERVICE = "android.permission.BIND_PHONE_ACCOUNT_SUGGESTION_SERVICE";
75    field public static final String BIND_PRINT_RECOMMENDATION_SERVICE = "android.permission.BIND_PRINT_RECOMMENDATION_SERVICE";
76    field public static final String BIND_REMOTE_LOCKSCREEN_VALIDATION_SERVICE = "android.permission.BIND_REMOTE_LOCKSCREEN_VALIDATION_SERVICE";
77    field public static final String BIND_RESOLVER_RANKER_SERVICE = "android.permission.BIND_RESOLVER_RANKER_SERVICE";
78    field public static final String BIND_RESUME_ON_REBOOT_SERVICE = "android.permission.BIND_RESUME_ON_REBOOT_SERVICE";
79    field public static final String BIND_ROTATION_RESOLVER_SERVICE = "android.permission.BIND_ROTATION_RESOLVER_SERVICE";
80    field public static final String BIND_RUNTIME_PERMISSION_PRESENTER_SERVICE = "android.permission.BIND_RUNTIME_PERMISSION_PRESENTER_SERVICE";
81    field public static final String BIND_SATELLITE_SERVICE = "android.permission.BIND_SATELLITE_SERVICE";
82    field public static final String BIND_SETTINGS_SUGGESTIONS_SERVICE = "android.permission.BIND_SETTINGS_SUGGESTIONS_SERVICE";
83    field public static final String BIND_SOUND_TRIGGER_DETECTION_SERVICE = "android.permission.BIND_SOUND_TRIGGER_DETECTION_SERVICE";
84    field public static final String BIND_TELEPHONY_DATA_SERVICE = "android.permission.BIND_TELEPHONY_DATA_SERVICE";
85    field public static final String BIND_TELEPHONY_NETWORK_SERVICE = "android.permission.BIND_TELEPHONY_NETWORK_SERVICE";
86    field public static final String BIND_TEXTCLASSIFIER_SERVICE = "android.permission.BIND_TEXTCLASSIFIER_SERVICE";
87    field public static final String BIND_TIME_ZONE_PROVIDER_SERVICE = "android.permission.BIND_TIME_ZONE_PROVIDER_SERVICE";
88    field public static final String BIND_TRACE_REPORT_SERVICE = "android.permission.BIND_TRACE_REPORT_SERVICE";
89    field public static final String BIND_TRANSLATION_SERVICE = "android.permission.BIND_TRANSLATION_SERVICE";
90    field public static final String BIND_TRUST_AGENT = "android.permission.BIND_TRUST_AGENT";
91    field public static final String BIND_TV_REMOTE_SERVICE = "android.permission.BIND_TV_REMOTE_SERVICE";
92    field public static final String BIND_VISUAL_QUERY_DETECTION_SERVICE = "android.permission.BIND_VISUAL_QUERY_DETECTION_SERVICE";
93    field public static final String BIND_WALLPAPER_EFFECTS_GENERATION_SERVICE = "android.permission.BIND_WALLPAPER_EFFECTS_GENERATION_SERVICE";
94    field public static final String BIND_WEARABLE_SENSING_SERVICE = "android.permission.BIND_WEARABLE_SENSING_SERVICE";
95    field public static final String BLUETOOTH_MAP = "android.permission.BLUETOOTH_MAP";
96    field public static final String BRICK = "android.permission.BRICK";
97    field public static final String BRIGHTNESS_SLIDER_USAGE = "android.permission.BRIGHTNESS_SLIDER_USAGE";
98    field public static final String BROADCAST_CLOSE_SYSTEM_DIALOGS = "android.permission.BROADCAST_CLOSE_SYSTEM_DIALOGS";
99    field @Deprecated public static final String BROADCAST_NETWORK_PRIVILEGED = "android.permission.BROADCAST_NETWORK_PRIVILEGED";
100    field public static final String BYPASS_ROLE_QUALIFICATION = "android.permission.BYPASS_ROLE_QUALIFICATION";
101    field public static final String CALL_AUDIO_INTERCEPTION = "android.permission.CALL_AUDIO_INTERCEPTION";
102    field public static final String CAMERA_DISABLE_TRANSMIT_LED = "android.permission.CAMERA_DISABLE_TRANSMIT_LED";
103    field public static final String CAMERA_HEADLESS_SYSTEM_USER = "android.permission.CAMERA_HEADLESS_SYSTEM_USER";
104    field public static final String CAMERA_OPEN_CLOSE_LISTENER = "android.permission.CAMERA_OPEN_CLOSE_LISTENER";
105    field public static final String CAMERA_PRIVACY_ALLOWLIST = "android.permission.CAMERA_PRIVACY_ALLOWLIST";
106    field public static final String CAPTURE_AUDIO_HOTWORD = "android.permission.CAPTURE_AUDIO_HOTWORD";
107    field public static final String CAPTURE_CONSENTLESS_BUGREPORT_ON_USERDEBUG_BUILD = "android.permission.CAPTURE_CONSENTLESS_BUGREPORT_ON_USERDEBUG_BUILD";
108    field public static final String CAPTURE_MEDIA_OUTPUT = "android.permission.CAPTURE_MEDIA_OUTPUT";
109    field public static final String CAPTURE_TUNER_AUDIO_INPUT = "android.permission.CAPTURE_TUNER_AUDIO_INPUT";
110    field public static final String CAPTURE_TV_INPUT = "android.permission.CAPTURE_TV_INPUT";
111    field public static final String CAPTURE_VOICE_COMMUNICATION_OUTPUT = "android.permission.CAPTURE_VOICE_COMMUNICATION_OUTPUT";
112    field public static final String CHANGE_APP_IDLE_STATE = "android.permission.CHANGE_APP_IDLE_STATE";
113    field public static final String CHANGE_APP_LAUNCH_TIME_ESTIMATE = "android.permission.CHANGE_APP_LAUNCH_TIME_ESTIMATE";
114    field public static final String CHANGE_DEVICE_IDLE_TEMP_WHITELIST = "android.permission.CHANGE_DEVICE_IDLE_TEMP_WHITELIST";
115    field public static final String CHECK_REMOTE_LOCKSCREEN = "android.permission.CHECK_REMOTE_LOCKSCREEN";
116    field public static final String CLEAR_APP_USER_DATA = "android.permission.CLEAR_APP_USER_DATA";
117    field public static final String COMPANION_APPROVE_WIFI_CONNECTIONS = "android.permission.COMPANION_APPROVE_WIFI_CONNECTIONS";
118    field public static final String CONFIGURE_DISPLAY_BRIGHTNESS = "android.permission.CONFIGURE_DISPLAY_BRIGHTNESS";
119    field public static final String CONFIGURE_FACTORY_RESET_PROTECTION = "android.permission.CONFIGURE_FACTORY_RESET_PROTECTION";
120    field public static final String CONFIGURE_INTERACT_ACROSS_PROFILES = "android.permission.CONFIGURE_INTERACT_ACROSS_PROFILES";
121    field @Deprecated public static final String CONNECTIVITY_INTERNAL = "android.permission.CONNECTIVITY_INTERNAL";
122    field public static final String CONNECTIVITY_USE_RESTRICTED_NETWORKS = "android.permission.CONNECTIVITY_USE_RESTRICTED_NETWORKS";
123    field public static final String CONTROL_DEVICE_LIGHTS = "android.permission.CONTROL_DEVICE_LIGHTS";
124    field public static final String CONTROL_DISPLAY_COLOR_TRANSFORMS = "android.permission.CONTROL_DISPLAY_COLOR_TRANSFORMS";
125    field public static final String CONTROL_DISPLAY_SATURATION = "android.permission.CONTROL_DISPLAY_SATURATION";
126    field public static final String CONTROL_INCALL_EXPERIENCE = "android.permission.CONTROL_INCALL_EXPERIENCE";
127    field public static final String CONTROL_KEYGUARD_SECURE_NOTIFICATIONS = "android.permission.CONTROL_KEYGUARD_SECURE_NOTIFICATIONS";
128    field public static final String CONTROL_OEM_PAID_NETWORK_PREFERENCE = "android.permission.CONTROL_OEM_PAID_NETWORK_PREFERENCE";
129    field public static final String CONTROL_VPN = "android.permission.CONTROL_VPN";
130    field public static final String CREATE_USERS = "android.permission.CREATE_USERS";
131    field public static final String CREATE_VIRTUAL_DEVICE = "android.permission.CREATE_VIRTUAL_DEVICE";
132    field public static final String CRYPT_KEEPER = "android.permission.CRYPT_KEEPER";
133    field public static final String DEVICE_POWER = "android.permission.DEVICE_POWER";
134    field public static final String DISABLE_SYSTEM_SOUND_EFFECTS = "android.permission.DISABLE_SYSTEM_SOUND_EFFECTS";
135    field public static final String DISPATCH_PROVISIONING_MESSAGE = "android.permission.DISPATCH_PROVISIONING_MESSAGE";
136    field public static final String DOMAIN_VERIFICATION_AGENT = "android.permission.DOMAIN_VERIFICATION_AGENT";
137    field public static final String EMERGENCY_INSTALL_PACKAGES = "android.permission.EMERGENCY_INSTALL_PACKAGES";
138    field public static final String ENTER_CAR_MODE_PRIORITIZED = "android.permission.ENTER_CAR_MODE_PRIORITIZED";
139    field public static final String EXEMPT_FROM_AUDIO_RECORD_RESTRICTIONS = "android.permission.EXEMPT_FROM_AUDIO_RECORD_RESTRICTIONS";
140    field public static final String FORCE_BACK = "android.permission.FORCE_BACK";
141    field public static final String FORCE_STOP_PACKAGES = "android.permission.FORCE_STOP_PACKAGES";
142    field public static final String GET_APP_METADATA = "android.permission.GET_APP_METADATA";
143    field public static final String GET_APP_OPS_STATS = "android.permission.GET_APP_OPS_STATS";
144    field public static final String GET_BACKGROUND_INSTALLED_PACKAGES = "android.permission.GET_BACKGROUND_INSTALLED_PACKAGES";
145    field public static final String GET_BINDING_UID_IMPORTANCE = "android.permission.GET_BINDING_UID_IMPORTANCE";
146    field public static final String GET_HISTORICAL_APP_OPS_STATS = "android.permission.GET_HISTORICAL_APP_OPS_STATS";
147    field public static final String GET_PROCESS_STATE_AND_OOM_SCORE = "android.permission.GET_PROCESS_STATE_AND_OOM_SCORE";
148    field public static final String GET_RUNTIME_PERMISSIONS = "android.permission.GET_RUNTIME_PERMISSIONS";
149    field public static final String GET_TOP_ACTIVITY_INFO = "android.permission.GET_TOP_ACTIVITY_INFO";
150    field @Deprecated public static final String GRANT_PROFILE_OWNER_DEVICE_IDS_ACCESS = "android.permission.GRANT_PROFILE_OWNER_DEVICE_IDS_ACCESS";
151    field public static final String GRANT_RUNTIME_PERMISSIONS = "android.permission.GRANT_RUNTIME_PERMISSIONS";
152    field public static final String GRANT_RUNTIME_PERMISSIONS_TO_TELEPHONY_DEFAULTS = "android.permission.GRANT_RUNTIME_PERMISSIONS_TO_TELEPHONY_DEFAULTS";
153    field public static final String HANDLE_CAR_MODE_CHANGES = "android.permission.HANDLE_CAR_MODE_CHANGES";
154    field public static final String HARDWARE_TEST = "android.permission.HARDWARE_TEST";
155    field public static final String HDMI_CEC = "android.permission.HDMI_CEC";
156    field @Deprecated public static final String HIDE_NON_SYSTEM_OVERLAY_WINDOWS = "android.permission.HIDE_NON_SYSTEM_OVERLAY_WINDOWS";
157    field public static final String INJECT_EVENTS = "android.permission.INJECT_EVENTS";
158    field public static final String INSTALL_DPC_PACKAGES = "android.permission.INSTALL_DPC_PACKAGES";
159    field public static final String INSTALL_DYNAMIC_SYSTEM = "android.permission.INSTALL_DYNAMIC_SYSTEM";
160    field public static final String INSTALL_EXISTING_PACKAGES = "com.android.permission.INSTALL_EXISTING_PACKAGES";
161    field public static final String INSTALL_GRANT_RUNTIME_PERMISSIONS = "android.permission.INSTALL_GRANT_RUNTIME_PERMISSIONS";
162    field public static final String INSTALL_LOCATION_TIME_ZONE_PROVIDER_SERVICE = "android.permission.INSTALL_LOCATION_TIME_ZONE_PROVIDER_SERVICE";
163    field public static final String INSTALL_PACKAGE_UPDATES = "android.permission.INSTALL_PACKAGE_UPDATES";
164    field public static final String INSTALL_SELF_UPDATES = "android.permission.INSTALL_SELF_UPDATES";
165    field public static final String INTENT_FILTER_VERIFICATION_AGENT = "android.permission.INTENT_FILTER_VERIFICATION_AGENT";
166    field public static final String INTERACT_ACROSS_USERS = "android.permission.INTERACT_ACROSS_USERS";
167    field public static final String INTERACT_ACROSS_USERS_FULL = "android.permission.INTERACT_ACROSS_USERS_FULL";
168    field public static final String INTERNAL_SYSTEM_WINDOW = "android.permission.INTERNAL_SYSTEM_WINDOW";
169    field public static final String INVOKE_CARRIER_SETUP = "android.permission.INVOKE_CARRIER_SETUP";
170    field public static final String KEYPHRASE_ENROLLMENT_APPLICATION = "android.permission.KEYPHRASE_ENROLLMENT_APPLICATION";
171    field public static final String KILL_ALL_BACKGROUND_PROCESSES = "android.permission.KILL_ALL_BACKGROUND_PROCESSES";
172    field public static final String KILL_UID = "android.permission.KILL_UID";
173    field public static final String LAUNCH_DEVICE_MANAGER_SETUP = "android.permission.LAUNCH_DEVICE_MANAGER_SETUP";
174    field public static final String LAUNCH_PERMISSION_SETTINGS = "android.permission.LAUNCH_PERMISSION_SETTINGS";
175    field public static final String LOCAL_MAC_ADDRESS = "android.permission.LOCAL_MAC_ADDRESS";
176    field public static final String LOCATION_BYPASS = "android.permission.LOCATION_BYPASS";
177    field public static final String LOCK_DEVICE = "android.permission.LOCK_DEVICE";
178    field public static final String LOG_FOREGROUND_RESOURCE_USE = "android.permission.LOG_FOREGROUND_RESOURCE_USE";
179    field public static final String LOOP_RADIO = "android.permission.LOOP_RADIO";
180    field public static final String MANAGE_ACCESSIBILITY = "android.permission.MANAGE_ACCESSIBILITY";
181    field @Deprecated public static final String MANAGE_ACTIVITY_STACKS = "android.permission.MANAGE_ACTIVITY_STACKS";
182    field public static final String MANAGE_ACTIVITY_TASKS = "android.permission.MANAGE_ACTIVITY_TASKS";
183    field public static final String MANAGE_APP_HIBERNATION = "android.permission.MANAGE_APP_HIBERNATION";
184    field public static final String MANAGE_APP_OPS_RESTRICTIONS = "android.permission.MANAGE_APP_OPS_RESTRICTIONS";
185    field public static final String MANAGE_APP_PREDICTIONS = "android.permission.MANAGE_APP_PREDICTIONS";
186    field public static final String MANAGE_APP_TOKENS = "android.permission.MANAGE_APP_TOKENS";
187    field public static final String MANAGE_AUTO_FILL = "android.permission.MANAGE_AUTO_FILL";
188    field public static final String MANAGE_BLUETOOTH_WHEN_WIRELESS_CONSENT_REQUIRED = "android.permission.MANAGE_BLUETOOTH_WHEN_WIRELESS_CONSENT_REQUIRED";
189    field public static final String MANAGE_CARRIER_OEM_UNLOCK_STATE = "android.permission.MANAGE_CARRIER_OEM_UNLOCK_STATE";
190    field public static final String MANAGE_CA_CERTIFICATES = "android.permission.MANAGE_CA_CERTIFICATES";
191    field public static final String MANAGE_CLIPBOARD_ACCESS_NOTIFICATION = "android.permission.MANAGE_CLIPBOARD_ACCESS_NOTIFICATION";
192    field public static final String MANAGE_CLOUDSEARCH = "android.permission.MANAGE_CLOUDSEARCH";
193    field public static final String MANAGE_CONTENT_CAPTURE = "android.permission.MANAGE_CONTENT_CAPTURE";
194    field public static final String MANAGE_CONTENT_SUGGESTIONS = "android.permission.MANAGE_CONTENT_SUGGESTIONS";
195    field public static final String MANAGE_DEBUGGING = "android.permission.MANAGE_DEBUGGING";
196    field public static final String MANAGE_DEFAULT_APPLICATIONS = "android.permission.MANAGE_DEFAULT_APPLICATIONS";
197    field public static final String MANAGE_DEVICE_ADMINS = "android.permission.MANAGE_DEVICE_ADMINS";
198    field public static final String MANAGE_DEVICE_POLICY_APP_EXEMPTIONS = "android.permission.MANAGE_DEVICE_POLICY_APP_EXEMPTIONS";
199    field public static final String MANAGE_DEVICE_POLICY_AUDIT_LOGGING = "android.permission.MANAGE_DEVICE_POLICY_AUDIT_LOGGING";
200    field public static final String MANAGE_ENHANCED_CONFIRMATION_STATES = "android.permission.MANAGE_ENHANCED_CONFIRMATION_STATES";
201    field public static final String MANAGE_ETHERNET_NETWORKS = "android.permission.MANAGE_ETHERNET_NETWORKS";
202    field public static final String MANAGE_FACTORY_RESET_PROTECTION = "android.permission.MANAGE_FACTORY_RESET_PROTECTION";
203    field public static final String MANAGE_GAME_ACTIVITY = "android.permission.MANAGE_GAME_ACTIVITY";
204    field public static final String MANAGE_GAME_MODE = "android.permission.MANAGE_GAME_MODE";
205    field public static final String MANAGE_HOTWORD_DETECTION = "android.permission.MANAGE_HOTWORD_DETECTION";
206    field public static final String MANAGE_IPSEC_TUNNELS = "android.permission.MANAGE_IPSEC_TUNNELS";
207    field public static final String MANAGE_LOW_POWER_STANDBY = "android.permission.MANAGE_LOW_POWER_STANDBY";
208    field public static final String MANAGE_MUSIC_RECOGNITION = "android.permission.MANAGE_MUSIC_RECOGNITION";
209    field public static final String MANAGE_NOTIFICATION_LISTENERS = "android.permission.MANAGE_NOTIFICATION_LISTENERS";
210    field public static final String MANAGE_ONE_TIME_PERMISSION_SESSIONS = "android.permission.MANAGE_ONE_TIME_PERMISSION_SESSIONS";
211    field public static final String MANAGE_PROFILE_AND_DEVICE_OWNERS = "android.permission.MANAGE_PROFILE_AND_DEVICE_OWNERS";
212    field public static final String MANAGE_ROLE_HOLDERS = "android.permission.MANAGE_ROLE_HOLDERS";
213    field public static final String MANAGE_ROLLBACKS = "android.permission.MANAGE_ROLLBACKS";
214    field public static final String MANAGE_ROTATION_RESOLVER = "android.permission.MANAGE_ROTATION_RESOLVER";
215    field public static final String MANAGE_SAFETY_CENTER = "android.permission.MANAGE_SAFETY_CENTER";
216    field public static final String MANAGE_SEARCH_UI = "android.permission.MANAGE_SEARCH_UI";
217    field public static final String MANAGE_SENSOR_PRIVACY = "android.permission.MANAGE_SENSOR_PRIVACY";
218    field public static final String MANAGE_SMARTSPACE = "android.permission.MANAGE_SMARTSPACE";
219    field public static final String MANAGE_SOUND_TRIGGER = "android.permission.MANAGE_SOUND_TRIGGER";
220    field public static final String MANAGE_SPEECH_RECOGNITION = "android.permission.MANAGE_SPEECH_RECOGNITION";
221    field public static final String MANAGE_SUBSCRIPTION_PLANS = "android.permission.MANAGE_SUBSCRIPTION_PLANS";
222    field public static final String MANAGE_SUBSCRIPTION_USER_ASSOCIATION = "android.permission.MANAGE_SUBSCRIPTION_USER_ASSOCIATION";
223    field public static final String MANAGE_TEST_NETWORKS = "android.permission.MANAGE_TEST_NETWORKS";
224    field public static final String MANAGE_TIME_AND_ZONE_DETECTION = "android.permission.MANAGE_TIME_AND_ZONE_DETECTION";
225    field public static final String MANAGE_UI_TRANSLATION = "android.permission.MANAGE_UI_TRANSLATION";
226    field public static final String MANAGE_USB = "android.permission.MANAGE_USB";
227    field public static final String MANAGE_USERS = "android.permission.MANAGE_USERS";
228    field public static final String MANAGE_USER_OEM_UNLOCK_STATE = "android.permission.MANAGE_USER_OEM_UNLOCK_STATE";
229    field public static final String MANAGE_VOICE_KEYPHRASES = "android.permission.MANAGE_VOICE_KEYPHRASES";
230    field public static final String MANAGE_WALLPAPER_EFFECTS_GENERATION = "android.permission.MANAGE_WALLPAPER_EFFECTS_GENERATION";
231    field public static final String MANAGE_WEAK_ESCROW_TOKEN = "android.permission.MANAGE_WEAK_ESCROW_TOKEN";
232    field public static final String MANAGE_WEARABLE_SENSING_SERVICE = "android.permission.MANAGE_WEARABLE_SENSING_SERVICE";
233    field public static final String MANAGE_WIFI_COUNTRY_CODE = "android.permission.MANAGE_WIFI_COUNTRY_CODE";
234    field public static final String MARK_DEVICE_ORGANIZATION_OWNED = "android.permission.MARK_DEVICE_ORGANIZATION_OWNED";
235    field public static final String MEDIA_RESOURCE_OVERRIDE_PID = "android.permission.MEDIA_RESOURCE_OVERRIDE_PID";
236    field public static final String MIGRATE_HEALTH_CONNECT_DATA = "android.permission.MIGRATE_HEALTH_CONNECT_DATA";
237    field public static final String MODIFY_APPWIDGET_BIND_PERMISSIONS = "android.permission.MODIFY_APPWIDGET_BIND_PERMISSIONS";
238    field public static final String MODIFY_AUDIO_ROUTING = "android.permission.MODIFY_AUDIO_ROUTING";
239    field public static final String MODIFY_AUDIO_SETTINGS_PRIVILEGED = "android.permission.MODIFY_AUDIO_SETTINGS_PRIVILEGED";
240    field public static final String MODIFY_CELL_BROADCASTS = "android.permission.MODIFY_CELL_BROADCASTS";
241    field public static final String MODIFY_DAY_NIGHT_MODE = "android.permission.MODIFY_DAY_NIGHT_MODE";
242    field @Deprecated public static final String MODIFY_NETWORK_ACCOUNTING = "android.permission.MODIFY_NETWORK_ACCOUNTING";
243    field public static final String MODIFY_PARENTAL_CONTROLS = "android.permission.MODIFY_PARENTAL_CONTROLS";
244    field public static final String MODIFY_QUIET_MODE = "android.permission.MODIFY_QUIET_MODE";
245    field public static final String MODIFY_SETTINGS_OVERRIDEABLE_BY_RESTORE = "android.permission.MODIFY_SETTINGS_OVERRIDEABLE_BY_RESTORE";
246    field public static final String MONITOR_DEVICE_CONFIG_ACCESS = "android.permission.MONITOR_DEVICE_CONFIG_ACCESS";
247    field public static final String MOVE_PACKAGE = "android.permission.MOVE_PACKAGE";
248    field public static final String NETWORK_AIRPLANE_MODE = "android.permission.NETWORK_AIRPLANE_MODE";
249    field public static final String NETWORK_CARRIER_PROVISIONING = "android.permission.NETWORK_CARRIER_PROVISIONING";
250    field public static final String NETWORK_FACTORY = "android.permission.NETWORK_FACTORY";
251    field public static final String NETWORK_MANAGED_PROVISIONING = "android.permission.NETWORK_MANAGED_PROVISIONING";
252    field public static final String NETWORK_SCAN = "android.permission.NETWORK_SCAN";
253    field public static final String NETWORK_SETTINGS = "android.permission.NETWORK_SETTINGS";
254    field public static final String NETWORK_SETUP_WIZARD = "android.permission.NETWORK_SETUP_WIZARD";
255    field public static final String NETWORK_SIGNAL_STRENGTH_WAKEUP = "android.permission.NETWORK_SIGNAL_STRENGTH_WAKEUP";
256    field public static final String NETWORK_STACK = "android.permission.NETWORK_STACK";
257    field public static final String NETWORK_STATS_PROVIDER = "android.permission.NETWORK_STATS_PROVIDER";
258    field public static final String NFC_SET_CONTROLLER_ALWAYS_ON = "android.permission.NFC_SET_CONTROLLER_ALWAYS_ON";
259    field public static final String NOTIFICATION_DURING_SETUP = "android.permission.NOTIFICATION_DURING_SETUP";
260    field public static final String NOTIFY_TV_INPUTS = "android.permission.NOTIFY_TV_INPUTS";
261    field public static final String OBSERVE_APP_USAGE = "android.permission.OBSERVE_APP_USAGE";
262    field public static final String OBSERVE_NETWORK_POLICY = "android.permission.OBSERVE_NETWORK_POLICY";
263    field public static final String OBSERVE_ROLE_HOLDERS = "android.permission.OBSERVE_ROLE_HOLDERS";
264    field public static final String OBSERVE_SENSOR_PRIVACY = "android.permission.OBSERVE_SENSOR_PRIVACY";
265    field public static final String OPEN_ACCESSIBILITY_DETAILS_SETTINGS = "android.permission.OPEN_ACCESSIBILITY_DETAILS_SETTINGS";
266    field public static final String OVERRIDE_COMPAT_CHANGE_CONFIG_ON_RELEASE_BUILD = "android.permission.OVERRIDE_COMPAT_CHANGE_CONFIG_ON_RELEASE_BUILD";
267    field public static final String OVERRIDE_SYSTEM_KEY_BEHAVIOR_IN_FOCUSED_WINDOW = "android.permission.OVERRIDE_SYSTEM_KEY_BEHAVIOR_IN_FOCUSED_WINDOW";
268    field public static final String PACKAGE_VERIFICATION_AGENT = "android.permission.PACKAGE_VERIFICATION_AGENT";
269    field public static final String PACKET_KEEPALIVE_OFFLOAD = "android.permission.PACKET_KEEPALIVE_OFFLOAD";
270    field public static final String PEERS_MAC_ADDRESS = "android.permission.PEERS_MAC_ADDRESS";
271    field public static final String PERFORM_CDMA_PROVISIONING = "android.permission.PERFORM_CDMA_PROVISIONING";
272    field public static final String PERFORM_IMS_SINGLE_REGISTRATION = "android.permission.PERFORM_IMS_SINGLE_REGISTRATION";
273    field public static final String PERFORM_SIM_ACTIVATION = "android.permission.PERFORM_SIM_ACTIVATION";
274    field public static final String POWER_SAVER = "android.permission.POWER_SAVER";
275    field public static final String PREPARE_FACTORY_RESET = "android.permission.PREPARE_FACTORY_RESET";
276    field public static final String PROVIDE_DEFAULT_ENABLED_CREDENTIAL_SERVICE = "android.permission.PROVIDE_DEFAULT_ENABLED_CREDENTIAL_SERVICE";
277    field public static final String PROVIDE_RESOLVER_RANKER_SERVICE = "android.permission.PROVIDE_RESOLVER_RANKER_SERVICE";
278    field public static final String PROVIDE_TRUST_AGENT = "android.permission.PROVIDE_TRUST_AGENT";
279    field public static final String PROVISION_DEMO_DEVICE = "android.permission.PROVISION_DEMO_DEVICE";
280    field public static final String QUERY_ADMIN_POLICY = "android.permission.QUERY_ADMIN_POLICY";
281    field public static final String QUERY_CLONED_APPS = "android.permission.QUERY_CLONED_APPS";
282    field @Deprecated public static final String QUERY_TIME_ZONE_RULES = "android.permission.QUERY_TIME_ZONE_RULES";
283    field public static final String QUERY_USERS = "android.permission.QUERY_USERS";
284    field public static final String RADIO_SCAN_WITHOUT_LOCATION = "android.permission.RADIO_SCAN_WITHOUT_LOCATION";
285    field public static final String READ_ACTIVE_EMERGENCY_SESSION = "android.permission.READ_ACTIVE_EMERGENCY_SESSION";
286    field public static final String READ_APP_SPECIFIC_LOCALES = "android.permission.READ_APP_SPECIFIC_LOCALES";
287    field public static final String READ_CARRIER_APP_INFO = "android.permission.READ_CARRIER_APP_INFO";
288    field public static final String READ_CELL_BROADCASTS = "android.permission.READ_CELL_BROADCASTS";
289    field public static final String READ_CLIPBOARD_IN_BACKGROUND = "android.permission.READ_CLIPBOARD_IN_BACKGROUND";
290    field public static final String READ_CONTENT_RATING_SYSTEMS = "android.permission.READ_CONTENT_RATING_SYSTEMS";
291    field public static final String READ_DEVICE_CONFIG = "android.permission.READ_DEVICE_CONFIG";
292    field public static final String READ_DREAM_STATE = "android.permission.READ_DREAM_STATE";
293    field public static final String READ_GLOBAL_APP_SEARCH_DATA = "android.permission.READ_GLOBAL_APP_SEARCH_DATA";
294    field public static final String READ_INSTALLED_SESSION_PATHS = "android.permission.READ_INSTALLED_SESSION_PATHS";
295    field public static final String READ_INSTALL_SESSIONS = "android.permission.READ_INSTALL_SESSIONS";
296    field public static final String READ_NETWORK_USAGE_HISTORY = "android.permission.READ_NETWORK_USAGE_HISTORY";
297    field public static final String READ_OEM_UNLOCK_STATE = "android.permission.READ_OEM_UNLOCK_STATE";
298    field public static final String READ_PEOPLE_DATA = "android.permission.READ_PEOPLE_DATA";
299    field public static final String READ_PRINT_SERVICES = "android.permission.READ_PRINT_SERVICES";
300    field public static final String READ_PRINT_SERVICE_RECOMMENDATIONS = "android.permission.READ_PRINT_SERVICE_RECOMMENDATIONS";
301    field public static final String READ_PRIVILEGED_PHONE_STATE = "android.permission.READ_PRIVILEGED_PHONE_STATE";
302    field public static final String READ_PROJECTION_STATE = "android.permission.READ_PROJECTION_STATE";
303    field public static final String READ_RESTRICTED_STATS = "android.permission.READ_RESTRICTED_STATS";
304    field public static final String READ_RUNTIME_PROFILES = "android.permission.READ_RUNTIME_PROFILES";
305    field public static final String READ_SAFETY_CENTER_STATUS = "android.permission.READ_SAFETY_CENTER_STATUS";
306    field public static final String READ_SEARCH_INDEXABLES = "android.permission.READ_SEARCH_INDEXABLES";
307    field public static final String READ_SYSTEM_GRAMMATICAL_GENDER = "android.permission.READ_SYSTEM_GRAMMATICAL_GENDER";
308    field public static final String READ_SYSTEM_UPDATE_INFO = "android.permission.READ_SYSTEM_UPDATE_INFO";
309    field public static final String READ_WALLPAPER_INTERNAL = "android.permission.READ_WALLPAPER_INTERNAL";
310    field public static final String READ_WIFI_CREDENTIAL = "android.permission.READ_WIFI_CREDENTIAL";
311    field public static final String READ_WRITE_SYNC_DISABLED_MODE_CONFIG = "android.permission.READ_WRITE_SYNC_DISABLED_MODE_CONFIG";
312    field public static final String REAL_GET_TASKS = "android.permission.REAL_GET_TASKS";
313    field public static final String RECEIVE_BLUETOOTH_MAP = "android.permission.RECEIVE_BLUETOOTH_MAP";
314    field public static final String RECEIVE_DATA_ACTIVITY_CHANGE = "android.permission.RECEIVE_DATA_ACTIVITY_CHANGE";
315    field public static final String RECEIVE_DEVICE_CUSTOMIZATION_READY = "android.permission.RECEIVE_DEVICE_CUSTOMIZATION_READY";
316    field public static final String RECEIVE_EMERGENCY_BROADCAST = "android.permission.RECEIVE_EMERGENCY_BROADCAST";
317    field public static final String RECEIVE_SENSITIVE_NOTIFICATIONS = "android.permission.RECEIVE_SENSITIVE_NOTIFICATIONS";
318    field public static final String RECEIVE_WIFI_CREDENTIAL_CHANGE = "android.permission.RECEIVE_WIFI_CREDENTIAL_CHANGE";
319    field public static final String RECORD_BACKGROUND_AUDIO = "android.permission.RECORD_BACKGROUND_AUDIO";
320    field public static final String RECOVERY = "android.permission.RECOVERY";
321    field public static final String RECOVER_KEYSTORE = "android.permission.RECOVER_KEYSTORE";
322    field public static final String REGISTER_CALL_PROVIDER = "android.permission.REGISTER_CALL_PROVIDER";
323    field public static final String REGISTER_CONNECTION_MANAGER = "android.permission.REGISTER_CONNECTION_MANAGER";
324    field public static final String REGISTER_SIM_SUBSCRIPTION = "android.permission.REGISTER_SIM_SUBSCRIPTION";
325    field public static final String REGISTER_STATS_PULL_ATOM = "android.permission.REGISTER_STATS_PULL_ATOM";
326    field public static final String REMOTE_DISPLAY_PROVIDER = "android.permission.REMOTE_DISPLAY_PROVIDER";
327    field public static final String REMOVE_DRM_CERTIFICATES = "android.permission.REMOVE_DRM_CERTIFICATES";
328    field public static final String REMOVE_TASKS = "android.permission.REMOVE_TASKS";
329    field public static final String RENOUNCE_PERMISSIONS = "android.permission.RENOUNCE_PERMISSIONS";
330    field public static final String REPORT_USAGE_STATS = "android.permission.REPORT_USAGE_STATS";
331    field @Deprecated public static final String REQUEST_NETWORK_SCORES = "android.permission.REQUEST_NETWORK_SCORES";
332    field public static final String REQUEST_NOTIFICATION_ASSISTANT_SERVICE = "android.permission.REQUEST_NOTIFICATION_ASSISTANT_SERVICE";
333    field public static final String RESET_PASSWORD = "android.permission.RESET_PASSWORD";
334    field public static final String RESTART_WIFI_SUBSYSTEM = "android.permission.RESTART_WIFI_SUBSYSTEM";
335    field public static final String RESTORE_RUNTIME_PERMISSIONS = "android.permission.RESTORE_RUNTIME_PERMISSIONS";
336    field public static final String RESTRICTED_VR_ACCESS = "android.permission.RESTRICTED_VR_ACCESS";
337    field public static final String RETRIEVE_WINDOW_CONTENT = "android.permission.RETRIEVE_WINDOW_CONTENT";
338    field public static final String REVIEW_ACCESSIBILITY_SERVICES = "android.permission.REVIEW_ACCESSIBILITY_SERVICES";
339    field public static final String REVOKE_RUNTIME_PERMISSIONS = "android.permission.REVOKE_RUNTIME_PERMISSIONS";
340    field public static final String ROTATE_SURFACE_FLINGER = "android.permission.ROTATE_SURFACE_FLINGER";
341    field public static final String SATELLITE_COMMUNICATION = "android.permission.SATELLITE_COMMUNICATION";
342    field public static final String SCHEDULE_PRIORITIZED_ALARM = "android.permission.SCHEDULE_PRIORITIZED_ALARM";
343    field @Deprecated public static final String SCORE_NETWORKS = "android.permission.SCORE_NETWORKS";
344    field public static final String SECURE_ELEMENT_PRIVILEGED_OPERATION = "android.permission.SECURE_ELEMENT_PRIVILEGED_OPERATION";
345    field public static final String SEND_CATEGORY_CAR_NOTIFICATIONS = "android.permission.SEND_CATEGORY_CAR_NOTIFICATIONS";
346    field public static final String SEND_DEVICE_CUSTOMIZATION_READY = "android.permission.SEND_DEVICE_CUSTOMIZATION_READY";
347    field public static final String SEND_SAFETY_CENTER_UPDATE = "android.permission.SEND_SAFETY_CENTER_UPDATE";
348    field public static final String SEND_SHOW_SUSPENDED_APP_DETAILS = "android.permission.SEND_SHOW_SUSPENDED_APP_DETAILS";
349    field public static final String SEND_SMS_NO_CONFIRMATION = "android.permission.SEND_SMS_NO_CONFIRMATION";
350    field public static final String SERIAL_PORT = "android.permission.SERIAL_PORT";
351    field public static final String SETUP_FSVERITY = "android.permission.SETUP_FSVERITY";
352    field public static final String SET_ACTIVITY_WATCHER = "android.permission.SET_ACTIVITY_WATCHER";
353    field public static final String SET_CLIP_SOURCE = "android.permission.SET_CLIP_SOURCE";
354    field public static final String SET_DEFAULT_ACCOUNT_FOR_CONTACTS = "android.permission.SET_DEFAULT_ACCOUNT_FOR_CONTACTS";
355    field public static final String SET_HARMFUL_APP_WARNINGS = "android.permission.SET_HARMFUL_APP_WARNINGS";
356    field public static final String SET_LOW_POWER_STANDBY_PORTS = "android.permission.SET_LOW_POWER_STANDBY_PORTS";
357    field public static final String SET_MEDIA_KEY_LISTENER = "android.permission.SET_MEDIA_KEY_LISTENER";
358    field public static final String SET_ORIENTATION = "android.permission.SET_ORIENTATION";
359    field public static final String SET_POINTER_SPEED = "android.permission.SET_POINTER_SPEED";
360    field public static final String SET_SCREEN_COMPATIBILITY = "android.permission.SET_SCREEN_COMPATIBILITY";
361    field public static final String SET_SYSTEM_AUDIO_CAPTION = "android.permission.SET_SYSTEM_AUDIO_CAPTION";
362    field public static final String SET_UNRESTRICTED_KEEP_CLEAR_AREAS = "android.permission.SET_UNRESTRICTED_KEEP_CLEAR_AREAS";
363    field public static final String SET_VOLUME_KEY_LONG_PRESS_LISTENER = "android.permission.SET_VOLUME_KEY_LONG_PRESS_LISTENER";
364    field public static final String SET_WALLPAPER_COMPONENT = "android.permission.SET_WALLPAPER_COMPONENT";
365    field public static final String SET_WALLPAPER_DIM_AMOUNT = "android.permission.SET_WALLPAPER_DIM_AMOUNT";
366    field public static final String SHOW_CUSTOMIZED_RESOLVER = "android.permission.SHOW_CUSTOMIZED_RESOLVER";
367    field public static final String SHOW_KEYGUARD_MESSAGE = "android.permission.SHOW_KEYGUARD_MESSAGE";
368    field public static final String SHUTDOWN = "android.permission.SHUTDOWN";
369    field public static final String SIGNAL_REBOOT_READINESS = "android.permission.SIGNAL_REBOOT_READINESS";
370    field public static final String SOUND_TRIGGER_RUN_IN_BATTERY_SAVER = "android.permission.SOUND_TRIGGER_RUN_IN_BATTERY_SAVER";
371    field public static final String STAGE_HEALTH_CONNECT_REMOTE_DATA = "android.permission.STAGE_HEALTH_CONNECT_REMOTE_DATA";
372    field public static final String START_ACTIVITIES_FROM_BACKGROUND = "android.permission.START_ACTIVITIES_FROM_BACKGROUND";
373    field public static final String START_CROSS_PROFILE_ACTIVITIES = "android.permission.START_CROSS_PROFILE_ACTIVITIES";
374    field public static final String START_REVIEW_PERMISSION_DECISIONS = "android.permission.START_REVIEW_PERMISSION_DECISIONS";
375    field public static final String START_TASKS_FROM_RECENTS = "android.permission.START_TASKS_FROM_RECENTS";
376    field public static final String STATUS_BAR_SERVICE = "android.permission.STATUS_BAR_SERVICE";
377    field public static final String STOP_APP_SWITCHES = "android.permission.STOP_APP_SWITCHES";
378    field public static final String SUBSTITUTE_NOTIFICATION_APP_NAME = "android.permission.SUBSTITUTE_NOTIFICATION_APP_NAME";
379    field public static final String SUBSTITUTE_SHARE_TARGET_APP_NAME_AND_ICON = "android.permission.SUBSTITUTE_SHARE_TARGET_APP_NAME_AND_ICON";
380    field public static final String SUGGEST_EXTERNAL_TIME = "android.permission.SUGGEST_EXTERNAL_TIME";
381    field public static final String SUSPEND_APPS = "android.permission.SUSPEND_APPS";
382    field public static final String SYSTEM_APPLICATION_OVERLAY = "android.permission.SYSTEM_APPLICATION_OVERLAY";
383    field public static final String SYSTEM_CAMERA = "android.permission.SYSTEM_CAMERA";
384    field public static final String TETHER_PRIVILEGED = "android.permission.TETHER_PRIVILEGED";
385    field public static final String TIS_EXTENSION_INTERFACE = "android.permission.TIS_EXTENSION_INTERFACE";
386    field public static final String TOGGLE_AUTOMOTIVE_PROJECTION = "android.permission.TOGGLE_AUTOMOTIVE_PROJECTION";
387    field public static final String TRIGGER_LOST_MODE = "android.permission.TRIGGER_LOST_MODE";
388    field public static final String TV_INPUT_HARDWARE = "android.permission.TV_INPUT_HARDWARE";
389    field public static final String TV_VIRTUAL_REMOTE_CONTROLLER = "android.permission.TV_VIRTUAL_REMOTE_CONTROLLER";
390    field public static final String UNLIMITED_SHORTCUTS_API_CALLS = "android.permission.UNLIMITED_SHORTCUTS_API_CALLS";
391    field public static final String UPDATE_APP_OPS_STATS = "android.permission.UPDATE_APP_OPS_STATS";
392    field public static final String UPDATE_DEVICE_MANAGEMENT_RESOURCES = "android.permission.UPDATE_DEVICE_MANAGEMENT_RESOURCES";
393    field public static final String UPDATE_DOMAIN_VERIFICATION_USER_SELECTION = "android.permission.UPDATE_DOMAIN_VERIFICATION_USER_SELECTION";
394    field public static final String UPDATE_FONTS = "android.permission.UPDATE_FONTS";
395    field public static final String UPDATE_LOCK = "android.permission.UPDATE_LOCK";
396    field @Deprecated public static final String UPDATE_TIME_ZONE_RULES = "android.permission.UPDATE_TIME_ZONE_RULES";
397    field public static final String UPGRADE_RUNTIME_PERMISSIONS = "android.permission.UPGRADE_RUNTIME_PERMISSIONS";
398    field public static final String USER_ACTIVITY = "android.permission.USER_ACTIVITY";
399    field public static final String USE_COLORIZED_NOTIFICATIONS = "android.permission.USE_COLORIZED_NOTIFICATIONS";
400    field public static final String USE_ON_DEVICE_INTELLIGENCE = "android.permission.USE_ON_DEVICE_INTELLIGENCE";
401    field public static final String USE_RESERVED_DISK = "android.permission.USE_RESERVED_DISK";
402    field public static final String UWB_PRIVILEGED = "android.permission.UWB_PRIVILEGED";
403    field public static final String WHITELIST_AUTO_REVOKE_PERMISSIONS = "android.permission.WHITELIST_AUTO_REVOKE_PERMISSIONS";
404    field public static final String WHITELIST_RESTRICTED_PERMISSIONS = "android.permission.WHITELIST_RESTRICTED_PERMISSIONS";
405    field public static final String WIFI_ACCESS_COEX_UNSAFE_CHANNELS = "android.permission.WIFI_ACCESS_COEX_UNSAFE_CHANNELS";
406    field public static final String WIFI_SET_DEVICE_MOBILITY_STATE = "android.permission.WIFI_SET_DEVICE_MOBILITY_STATE";
407    field public static final String WIFI_UPDATE_COEX_UNSAFE_CHANNELS = "android.permission.WIFI_UPDATE_COEX_UNSAFE_CHANNELS";
408    field public static final String WIFI_UPDATE_USABILITY_STATS_SCORE = "android.permission.WIFI_UPDATE_USABILITY_STATS_SCORE";
409    field public static final String WRITE_ALLOWLISTED_DEVICE_CONFIG = "android.permission.WRITE_ALLOWLISTED_DEVICE_CONFIG";
410    field public static final String WRITE_DEVICE_CONFIG = "android.permission.WRITE_DEVICE_CONFIG";
411    field public static final String WRITE_DREAM_STATE = "android.permission.WRITE_DREAM_STATE";
412    field public static final String WRITE_EMBEDDED_SUBSCRIPTIONS = "android.permission.WRITE_EMBEDDED_SUBSCRIPTIONS";
413    field @Deprecated public static final String WRITE_MEDIA_STORAGE = "android.permission.WRITE_MEDIA_STORAGE";
414    field public static final String WRITE_OBB = "android.permission.WRITE_OBB";
415    field public static final String WRITE_SECURITY_LOG = "android.permission.WRITE_SECURITY_LOG";
416    field public static final String WRITE_SMS = "android.permission.WRITE_SMS";
417    field public static final String WRITE_VERIFICATION_STATE_E2EE_CONTACT_KEYS = "android.permission.WRITE_VERIFICATION_STATE_E2EE_CONTACT_KEYS";
418  }
419
420  public static final class Manifest.permission_group {
421    field public static final String UNDEFINED = "android.permission-group.UNDEFINED";
422  }
423
424  public static final class R.array {
425    field public static final int config_keySystemUuidMapping = 17235973; // 0x1070005
426    field public static final int config_optionalIpSecAlgorithms = 17235974; // 0x1070006
427  }
428
429  public static final class R.attr {
430    field public static final int allowClearUserDataOnFailedRestore = 16844288; // 0x1010600
431    field public static final int featureFlag = 16844428; // 0x101068c
432    field public static final int gameSessionService = 16844373; // 0x1010655
433    field public static final int hotwordDetectionService = 16844326; // 0x1010626
434    field public static final int isVirtualDeviceOnly = 16844425; // 0x1010689
435    field public static final int isVrOnly = 16844152; // 0x1010578
436    field public static final int minExtensionVersion = 16844305; // 0x1010611
437    field public static final int playHomeTransitionSound = 16844358; // 0x1010646
438    field public static final int requiredSystemPropertyName = 16844133; // 0x1010565
439    field public static final int requiredSystemPropertyValue = 16844134; // 0x1010566
440    field public static final int sdkVersion = 16844304; // 0x1010610
441    field public static final int supportsAmbientMode = 16844173; // 0x101058d
442    field public static final int userRestriction = 16844164; // 0x1010584
443    field public static final int visualQueryDetectionService = 16844410; // 0x101067a
444  }
445
446  public static final class R.bool {
447    field public static final int config_enableDefaultNotes = 17891338; // 0x111000a
448    field public static final int config_enableDefaultNotesForWorkProfile = 17891339; // 0x111000b
449    field public static final int config_enableQrCodeScannerOnLockScreen = 17891336; // 0x1110008
450    field public static final int config_safetyProtectionEnabled = 17891337; // 0x1110009
451    field public static final int config_sendPackageName = 17891328; // 0x1110000
452    field public static final int config_showDefaultAssistant = 17891329; // 0x1110001
453    field public static final int config_showDefaultEmergency = 17891330; // 0x1110002
454    field public static final int config_showDefaultHome = 17891331; // 0x1110003
455  }
456
457  public static final class R.color {
458    field public static final int system_notification_accent_color = 17170460; // 0x106001c
459  }
460
461  public static final class R.dimen {
462    field public static final int config_restrictedIconSize = 17104903; // 0x1050007
463    field public static final int config_viewConfigurationHandwritingGestureLineMargin = 17104906; // 0x105000a
464  }
465
466  public static final class R.drawable {
467    field public static final int ic_info = 17301684; // 0x10800b4
468    field public static final int ic_safety_protection = 17301685; // 0x10800b5
469  }
470
471  public static final class R.raw {
472    field public static final int loaderror = 17825792; // 0x1100000
473    field public static final int nodomain = 17825793; // 0x1100001
474  }
475
476  public static final class R.string {
477    field public static final int config_customMediaKeyDispatcher = 17039404; // 0x104002c
478    field public static final int config_customMediaSessionPolicyProvider = 17039405; // 0x104002d
479    field public static final int config_defaultAssistant = 17039393; // 0x1040021
480    field public static final int config_defaultAutomotiveNavigation = 17039424; // 0x1040040
481    field public static final int config_defaultBrowser = 17039394; // 0x1040022
482    field public static final int config_defaultCallRedirection = 17039397; // 0x1040025
483    field public static final int config_defaultCallScreening = 17039398; // 0x1040026
484    field public static final int config_defaultDialer = 17039395; // 0x1040023
485    field public static final int config_defaultNotes = 17039429; // 0x1040045
486    field public static final int config_defaultRetailDemo = 17039432; // 0x1040048
487    field public static final int config_defaultSms = 17039396; // 0x1040024
488    field public static final int config_defaultWallet = 17039433; // 0x1040049
489    field public static final int config_devicePolicyManagement = 17039421; // 0x104003d
490    field public static final int config_feedbackIntentExtraKey = 17039391; // 0x104001f
491    field public static final int config_feedbackIntentNameKey = 17039392; // 0x1040020
492    field public static final int config_helpIntentExtraKey = 17039389; // 0x104001d
493    field public static final int config_helpIntentNameKey = 17039390; // 0x104001e
494    field public static final int config_helpPackageNameKey = 17039387; // 0x104001b
495    field public static final int config_helpPackageNameValue = 17039388; // 0x104001c
496    field public static final int config_systemActivityRecognizer = 17039416; // 0x1040038
497    field public static final int config_systemAmbientAudioIntelligence = 17039411; // 0x1040033
498    field public static final int config_systemAppProtectionService = 17039422; // 0x104003e
499    field public static final int config_systemAudioIntelligence = 17039412; // 0x1040034
500    field public static final int config_systemAutomotiveCalendarSyncManager = 17039423; // 0x104003f
501    field public static final int config_systemAutomotiveCluster = 17039400; // 0x1040028
502    field public static final int config_systemAutomotiveProjection = 17039401; // 0x1040029
503    field public static final int config_systemCallStreaming = 17039431; // 0x1040047
504    field public static final int config_systemCompanionDeviceProvider = 17039417; // 0x1040039
505    field public static final int config_systemContacts = 17039403; // 0x104002b
506    field public static final int config_systemFinancedDeviceController = 17039430; // 0x1040046
507    field public static final int config_systemGallery = 17039399; // 0x1040027
508    field public static final int config_systemNotificationIntelligence = 17039413; // 0x1040035
509    field public static final int config_systemSettingsIntelligence = 17039426; // 0x1040042
510    field public static final int config_systemShell = 17039402; // 0x104002a
511    field public static final int config_systemSpeechRecognizer = 17039406; // 0x104002e
512    field public static final int config_systemSupervision = 17039420; // 0x104003c
513    field public static final int config_systemTelevisionNotificationHandler = 17039409; // 0x1040031
514    field public static final int config_systemTextIntelligence = 17039414; // 0x1040036
515    field public static final int config_systemUi = 17039418; // 0x104003a
516    field public static final int config_systemUiIntelligence = 17039410; // 0x1040032
517    field public static final int config_systemVisualIntelligence = 17039415; // 0x1040037
518    field public static final int config_systemWearHealthService = 17039428; // 0x1040044
519    field public static final int config_systemWellbeing = 17039408; // 0x1040030
520    field public static final int config_systemWifiCoexManager = 17039407; // 0x104002f
521    field public static final int safety_protection_display_text = 17039425; // 0x1040041
522  }
523
524  public static final class R.style {
525    field public static final int Theme_DeviceDefault_DocumentsUI = 16974562; // 0x10302e2
526    field public static final int Theme_Leanback_FormWizard = 16974544; // 0x10302d0
527  }
528
529}
530
531package android.accessibilityservice {
532
533  public class AccessibilityServiceInfo implements android.os.Parcelable {
534    method public void setAccessibilityTool(boolean);
535  }
536
537}
538
539package android.accounts {
540
541  public class AccountManager {
542    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);
543  }
544
545}
546
547package android.app {
548
549  @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 {
550    method public void convertFromTranslucent();
551    method public boolean convertToTranslucent(android.app.Activity.TranslucentConversionListener, android.app.ActivityOptions);
552    method @Deprecated public boolean isBackgroundVisibleBehind();
553    method @Deprecated public void onBackgroundVisibleBehindChanged(boolean);
554    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);
555    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);
556    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);
557  }
558
559  public static interface Activity.TranslucentConversionListener {
560    method public void onTranslucentConversionComplete(boolean);
561  }
562
563  public class ActivityManager {
564    method @RequiresPermission(android.Manifest.permission.PACKAGE_USAGE_STATS) public void addOnUidImportanceListener(android.app.ActivityManager.OnUidImportanceListener, int);
565    method @RequiresPermission(android.Manifest.permission.FORCE_STOP_PACKAGES) public void forceStopPackage(String);
566    method @RequiresPermission(android.Manifest.permission.GET_BINDING_UID_IMPORTANCE) public int getBindingUidImportance(int);
567    method @RequiresPermission(anyOf={"android.permission.INTERACT_ACROSS_USERS", "android.permission.INTERACT_ACROSS_USERS_FULL"}) public static int getCurrentUser();
568    method @NonNull @RequiresPermission(android.Manifest.permission.DUMP) public java.util.List<android.app.ApplicationStartInfo> getExternalHistoricalProcessStartReasons(@NonNull String, @IntRange(from=0) int);
569    method @RequiresPermission(android.Manifest.permission.PACKAGE_USAGE_STATS) public int getPackageImportance(String);
570    method @NonNull public java.util.Collection<java.util.Locale> getSupportedLocales();
571    method @RequiresPermission(android.Manifest.permission.PACKAGE_USAGE_STATS) public int getUidImportance(int);
572    method @RequiresPermission(android.Manifest.permission.FORCE_STOP_PACKAGES) public void killProcessesWhenImperceptible(@NonNull int[], @NonNull String);
573    method @RequiresPermission(android.Manifest.permission.KILL_UID) public void killUid(int, String);
574    method @RequiresPermission(android.Manifest.permission.LOG_FOREGROUND_RESOURCE_USE) public void noteForegroundResourceUseBegin(int, int, int) throws java.lang.SecurityException;
575    method @RequiresPermission(android.Manifest.permission.LOG_FOREGROUND_RESOURCE_USE) public void noteForegroundResourceUseEnd(int, int, int) throws java.lang.SecurityException;
576    method @RequiresPermission(android.Manifest.permission.PACKAGE_USAGE_STATS) public void removeOnUidImportanceListener(android.app.ActivityManager.OnUidImportanceListener);
577    method public void setDeviceLocales(@NonNull android.os.LocaleList);
578    method @RequiresPermission(android.Manifest.permission.RESTRICTED_VR_ACCESS) public static void setPersistentVrThread(int);
579    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.INTERACT_ACROSS_USERS_FULL}) public boolean startProfile(@NonNull android.os.UserHandle);
580    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.INTERACT_ACROSS_USERS_FULL}) public boolean stopProfile(@NonNull android.os.UserHandle);
581    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS}) public boolean switchUser(@NonNull android.os.UserHandle);
582    field public static final int FOREGROUND_SERVICE_API_TYPE_AUDIO = 5; // 0x5
583    field public static final int FOREGROUND_SERVICE_API_TYPE_BLUETOOTH = 2; // 0x2
584    field public static final int FOREGROUND_SERVICE_API_TYPE_CAMERA = 1; // 0x1
585    field public static final int FOREGROUND_SERVICE_API_TYPE_CDM = 9; // 0x9
586    field public static final int FOREGROUND_SERVICE_API_TYPE_LOCATION = 3; // 0x3
587    field public static final int FOREGROUND_SERVICE_API_TYPE_MEDIA_PLAYBACK = 4; // 0x4
588    field public static final int FOREGROUND_SERVICE_API_TYPE_MICROPHONE = 6; // 0x6
589    field public static final int FOREGROUND_SERVICE_API_TYPE_PHONE_CALL = 7; // 0x7
590    field public static final int FOREGROUND_SERVICE_API_TYPE_USB = 8; // 0x8
591    field public static final int PROCESS_CAPABILITY_FOREGROUND_CAMERA = 2; // 0x2
592    field public static final int PROCESS_CAPABILITY_FOREGROUND_LOCATION = 1; // 0x1
593    field public static final int PROCESS_CAPABILITY_FOREGROUND_MICROPHONE = 4; // 0x4
594    field public static final int PROCESS_CAPABILITY_NONE = 0; // 0x0
595  }
596
597  public static interface ActivityManager.OnUidImportanceListener {
598    method public void onUidImportance(int, int);
599  }
600
601  public class ActivityOptions {
602    method public int getLaunchTaskId();
603    method @RequiresPermission(android.Manifest.permission.START_TASKS_FROM_RECENTS) public void setLaunchTaskId(int);
604  }
605
606  public class AlarmManager {
607    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void set(int, long, long, long, @NonNull android.app.PendingIntent, @Nullable android.os.WorkSource);
608    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);
609    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);
610    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);
611    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);
612    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);
613  }
614
615  public class AppOpsManager {
616    method @Nullable @RequiresPermission(android.Manifest.permission.GET_APP_OPS_STATS) public android.app.RuntimeAppOpAccessMessage collectRuntimeAppOpAccessMessage();
617    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>);
618    method public static String[] getOpStrs();
619    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...);
620    method @NonNull @RequiresPermission(android.Manifest.permission.GET_APP_OPS_STATS) public java.util.List<android.app.AppOpsManager.PackageOps> getPackagesForOps(@Nullable String[]);
621    method @NonNull @RequiresPermission(android.Manifest.permission.GET_APP_OPS_STATS) public java.util.List<android.app.AppOpsManager.PackageOps> getPackagesForOps(@Nullable String[], @NonNull String);
622    method @NonNull @RequiresPermission(android.Manifest.permission.GET_APP_OPS_STATS) public java.util.List<android.permission.PermissionGroupUsage> getPermissionGroupUsageForPrivacyIndicator(boolean);
623    method public static int opToDefaultMode(@NonNull String);
624    method @Nullable public static String opToPermission(@NonNull String);
625    method @RequiresPermission("android.permission.MANAGE_APP_OPS_MODES") public void setMode(@NonNull String, int, @Nullable String, int);
626    method @RequiresPermission("android.permission.MANAGE_APP_OPS_MODES") public void setUidMode(@NonNull String, int, int);
627    method @RequiresPermission(value="android.permission.WATCH_APPOPS", conditional=true) public void startWatchingNoted(@NonNull String[], @NonNull android.app.AppOpsManager.OnOpNotedListener);
628    method @RequiresPermission(value="android.permission.WATCH_APPOPS", conditional=true) public void startWatchingNoted(@NonNull String[], @NonNull java.util.concurrent.Executor, @NonNull android.app.AppOpsManager.OnOpNotedListener);
629    method public void stopWatchingNoted(@NonNull android.app.AppOpsManager.OnOpNotedListener);
630    field public static final int HISTORY_FLAGS_ALL = 3; // 0x3
631    field public static final int HISTORY_FLAG_AGGREGATE = 1; // 0x1
632    field public static final int HISTORY_FLAG_DISCRETE = 2; // 0x2
633    field public static final int HISTORY_FLAG_GET_ATTRIBUTION_CHAINS = 4; // 0x4
634    field public static final String OPSTR_ACCEPT_HANDOVER = "android:accept_handover";
635    field public static final String OPSTR_ACCESS_ACCESSIBILITY = "android:access_accessibility";
636    field public static final String OPSTR_ACCESS_NOTIFICATIONS = "android:access_notifications";
637    field public static final String OPSTR_ACCESS_RESTRICTED_SETTINGS = "android:access_restricted_settings";
638    field public static final String OPSTR_ACTIVATE_PLATFORM_VPN = "android:activate_platform_vpn";
639    field public static final String OPSTR_ACTIVATE_VPN = "android:activate_vpn";
640    field public static final String OPSTR_ASSIST_SCREENSHOT = "android:assist_screenshot";
641    field public static final String OPSTR_ASSIST_STRUCTURE = "android:assist_structure";
642    field public static final String OPSTR_AUDIO_ACCESSIBILITY_VOLUME = "android:audio_accessibility_volume";
643    field public static final String OPSTR_AUDIO_ALARM_VOLUME = "android:audio_alarm_volume";
644    field public static final String OPSTR_AUDIO_BLUETOOTH_VOLUME = "android:audio_bluetooth_volume";
645    field public static final String OPSTR_AUDIO_MASTER_VOLUME = "android:audio_master_volume";
646    field public static final String OPSTR_AUDIO_MEDIA_VOLUME = "android:audio_media_volume";
647    field public static final String OPSTR_AUDIO_NOTIFICATION_VOLUME = "android:audio_notification_volume";
648    field public static final String OPSTR_AUDIO_RING_VOLUME = "android:audio_ring_volume";
649    field public static final String OPSTR_AUDIO_VOICE_VOLUME = "android:audio_voice_volume";
650    field public static final String OPSTR_AUTO_REVOKE_MANAGED_BY_INSTALLER = "android:auto_revoke_managed_by_installer";
651    field public static final String OPSTR_AUTO_REVOKE_PERMISSIONS_IF_UNUSED = "android:auto_revoke_permissions_if_unused";
652    field public static final String OPSTR_BIND_ACCESSIBILITY_SERVICE = "android:bind_accessibility_service";
653    field public static final String OPSTR_CAPTURE_CONSENTLESS_BUGREPORT_ON_USERDEBUG_BUILD = "android:capture_consentless_bugreport_on_userdebug_build";
654    field public static final String OPSTR_CHANGE_WIFI_STATE = "android:change_wifi_state";
655    field public static final String OPSTR_CREATE_ACCESSIBILITY_OVERLAY = "android:create_accessibility_overlay";
656    field public static final String OPSTR_EMERGENCY_LOCATION = "android:emergency_location";
657    field public static final String OPSTR_ENABLE_MOBILE_DATA_BY_USER = "android:enable_mobile_data_by_user";
658    field public static final String OPSTR_ESTABLISH_VPN_MANAGER = "android:establish_vpn_manager";
659    field public static final String OPSTR_ESTABLISH_VPN_SERVICE = "android:establish_vpn_service";
660    field public static final String OPSTR_GET_ACCOUNTS = "android:get_accounts";
661    field public static final String OPSTR_GPS = "android:gps";
662    field public static final String OPSTR_INSTANT_APP_START_FOREGROUND = "android:instant_app_start_foreground";
663    field public static final String OPSTR_INTERACT_ACROSS_PROFILES = "android:interact_across_profiles";
664    field public static final String OPSTR_LEGACY_STORAGE = "android:legacy_storage";
665    field public static final String OPSTR_LOADER_USAGE_STATS = "android:loader_usage_stats";
666    field public static final String OPSTR_MANAGE_EXTERNAL_STORAGE = "android:manage_external_storage";
667    field public static final String OPSTR_MANAGE_IPSEC_TUNNELS = "android:manage_ipsec_tunnels";
668    field public static final String OPSTR_MANAGE_ONGOING_CALLS = "android:manage_ongoing_calls";
669    field public static final String OPSTR_MEDIA_ROUTING_CONTROL = "android:media_routing_control";
670    field public static final String OPSTR_MUTE_MICROPHONE = "android:mute_microphone";
671    field public static final String OPSTR_NEIGHBORING_CELLS = "android:neighboring_cells";
672    field public static final String OPSTR_PHONE_CALL_CAMERA = "android:phone_call_camera";
673    field public static final String OPSTR_PHONE_CALL_MICROPHONE = "android:phone_call_microphone";
674    field public static final String OPSTR_PLAY_AUDIO = "android:play_audio";
675    field public static final String OPSTR_POST_NOTIFICATION = "android:post_notification";
676    field public static final String OPSTR_PROJECT_MEDIA = "android:project_media";
677    field public static final String OPSTR_RAPID_CLEAR_NOTIFICATIONS_BY_LISTENER = "android:rapid_clear_notifications_by_listener";
678    field public static final String OPSTR_READ_CLIPBOARD = "android:read_clipboard";
679    field public static final String OPSTR_READ_ICC_SMS = "android:read_icc_sms";
680    field public static final String OPSTR_READ_MEDIA_AUDIO = "android:read_media_audio";
681    field public static final String OPSTR_READ_MEDIA_IMAGES = "android:read_media_images";
682    field public static final String OPSTR_READ_MEDIA_VIDEO = "android:read_media_video";
683    field public static final String OPSTR_READ_MEDIA_VISUAL_USER_SELECTED = "android:read_media_visual_user_selected";
684    field public static final String OPSTR_READ_WRITE_HEALTH_DATA = "android:read_write_health_data";
685    field public static final String OPSTR_RECEIVE_AMBIENT_TRIGGER_AUDIO = "android:receive_ambient_trigger_audio";
686    field public static final String OPSTR_RECEIVE_EMERGENCY_BROADCAST = "android:receive_emergency_broadcast";
687    field public static final String OPSTR_RECEIVE_EXPLICIT_USER_INTERACTION_AUDIO = "android:receive_explicit_user_interaction_audio";
688    field public static final String OPSTR_REQUEST_DELETE_PACKAGES = "android:request_delete_packages";
689    field public static final String OPSTR_REQUEST_INSTALL_PACKAGES = "android:request_install_packages";
690    field public static final String OPSTR_RUN_ANY_IN_BACKGROUND = "android:run_any_in_background";
691    field public static final String OPSTR_RUN_IN_BACKGROUND = "android:run_in_background";
692    field public static final String OPSTR_START_FOREGROUND = "android:start_foreground";
693    field public static final String OPSTR_SYSTEM_EXEMPT_FROM_HIBERNATION = "android:system_exempt_from_hibernation";
694    field public static final String OPSTR_TAKE_AUDIO_FOCUS = "android:take_audio_focus";
695    field public static final String OPSTR_TAKE_MEDIA_BUTTONS = "android:take_media_buttons";
696    field public static final String OPSTR_TOAST_WINDOW = "android:toast_window";
697    field public static final String OPSTR_TURN_SCREEN_ON = "android:turn_screen_on";
698    field public static final String OPSTR_VIBRATE = "android:vibrate";
699    field public static final String OPSTR_WAKE_LOCK = "android:wake_lock";
700    field public static final String OPSTR_WIFI_SCAN = "android:wifi_scan";
701    field public static final String OPSTR_WRITE_CLIPBOARD = "android:write_clipboard";
702    field public static final String OPSTR_WRITE_ICC_SMS = "android:write_icc_sms";
703    field public static final String OPSTR_WRITE_MEDIA_AUDIO = "android:write_media_audio";
704    field public static final String OPSTR_WRITE_MEDIA_IMAGES = "android:write_media_images";
705    field public static final String OPSTR_WRITE_MEDIA_VIDEO = "android:write_media_video";
706    field public static final String OPSTR_WRITE_SMS = "android:write_sms";
707    field public static final String OPSTR_WRITE_WALLPAPER = "android:write_wallpaper";
708    field public static final int OP_FLAGS_ALL = 31; // 0x1f
709    field public static final int OP_FLAGS_ALL_TRUSTED = 13; // 0xd
710    field public static final int OP_FLAG_SELF = 1; // 0x1
711    field public static final int OP_FLAG_TRUSTED_PROXIED = 8; // 0x8
712    field public static final int OP_FLAG_TRUSTED_PROXY = 2; // 0x2
713    field public static final int OP_FLAG_UNTRUSTED_PROXIED = 16; // 0x10
714    field public static final int OP_FLAG_UNTRUSTED_PROXY = 4; // 0x4
715    field public static final int UID_STATE_BACKGROUND = 600; // 0x258
716    field public static final int UID_STATE_CACHED = 700; // 0x2bc
717    field public static final int UID_STATE_FOREGROUND = 500; // 0x1f4
718    field public static final int UID_STATE_FOREGROUND_SERVICE = 400; // 0x190
719    field @Deprecated public static final int UID_STATE_FOREGROUND_SERVICE_LOCATION = 300; // 0x12c
720    field public static final int UID_STATE_PERSISTENT = 100; // 0x64
721    field public static final int UID_STATE_TOP = 200; // 0xc8
722  }
723
724  public static final class AppOpsManager.AttributedHistoricalOps implements android.os.Parcelable {
725    method public int describeContents();
726    method @Nullable public android.app.AppOpsManager.HistoricalOp getOp(@NonNull String);
727    method @NonNull public android.app.AppOpsManager.HistoricalOp getOpAt(@IntRange(from=0) int);
728    method @IntRange(from=0) public int getOpCount();
729    method @Nullable public String getTag();
730    method public void writeToParcel(@NonNull android.os.Parcel, int);
731    field @NonNull public static final android.os.Parcelable.Creator<android.app.AppOpsManager.AttributedHistoricalOps> CREATOR;
732  }
733
734  public static final class AppOpsManager.AttributedOpEntry implements android.os.Parcelable {
735    method public int describeContents();
736    method public long getLastAccessBackgroundTime(int);
737    method public long getLastAccessForegroundTime(int);
738    method public long getLastAccessTime(int);
739    method public long getLastAccessTime(int, int, int);
740    method public long getLastBackgroundDuration(int);
741    method @Nullable public android.app.AppOpsManager.OpEventProxyInfo getLastBackgroundProxyInfo(int);
742    method public long getLastDuration(int);
743    method public long getLastDuration(int, int, int);
744    method public long getLastForegroundDuration(int);
745    method @Nullable public android.app.AppOpsManager.OpEventProxyInfo getLastForegroundProxyInfo(int);
746    method @Nullable public android.app.AppOpsManager.OpEventProxyInfo getLastProxyInfo(int);
747    method @Nullable public android.app.AppOpsManager.OpEventProxyInfo getLastProxyInfo(int, int, int);
748    method public long getLastRejectBackgroundTime(int);
749    method public long getLastRejectForegroundTime(int);
750    method public long getLastRejectTime(int);
751    method public long getLastRejectTime(int, int, int);
752    method public boolean isRunning();
753    method public void writeToParcel(@NonNull android.os.Parcel, int);
754    field @NonNull public static final android.os.Parcelable.Creator<android.app.AppOpsManager.AttributedOpEntry> CREATOR;
755  }
756
757  public static final class AppOpsManager.HistoricalOp implements android.os.Parcelable {
758    method public int describeContents();
759    method public long getAccessCount(int, int, int);
760    method public long getAccessDuration(int, int, int);
761    method public long getBackgroundAccessCount(int);
762    method public long getBackgroundAccessDuration(int);
763    method @NonNull public java.util.List<android.app.AppOpsManager.AttributedOpEntry> getBackgroundDiscreteAccesses(int);
764    method public long getBackgroundRejectCount(int);
765    method @NonNull public android.app.AppOpsManager.AttributedOpEntry getDiscreteAccessAt(@IntRange(from=0) int);
766    method @IntRange(from=0) public int getDiscreteAccessCount();
767    method @NonNull public java.util.List<android.app.AppOpsManager.AttributedOpEntry> getDiscreteAccesses(int, int, int);
768    method public long getForegroundAccessCount(int);
769    method public long getForegroundAccessDuration(int);
770    method @NonNull public java.util.List<android.app.AppOpsManager.AttributedOpEntry> getForegroundDiscreteAccesses(int);
771    method public long getForegroundRejectCount(int);
772    method @NonNull public String getOpName();
773    method public long getRejectCount(int, int, int);
774    method public void writeToParcel(android.os.Parcel, int);
775    field @NonNull public static final android.os.Parcelable.Creator<android.app.AppOpsManager.HistoricalOp> CREATOR;
776  }
777
778  public static final class AppOpsManager.HistoricalOps implements android.os.Parcelable {
779    method public int describeContents();
780    method public long getBeginTimeMillis();
781    method public long getEndTimeMillis();
782    method @IntRange(from=0) public int getUidCount();
783    method @Nullable public android.app.AppOpsManager.HistoricalUidOps getUidOps(int);
784    method @NonNull public android.app.AppOpsManager.HistoricalUidOps getUidOpsAt(@IntRange(from=0) int);
785    method public void writeToParcel(android.os.Parcel, int);
786    field @NonNull public static final android.os.Parcelable.Creator<android.app.AppOpsManager.HistoricalOps> CREATOR;
787  }
788
789  public static final class AppOpsManager.HistoricalOpsRequest {
790  }
791
792  public static final class AppOpsManager.HistoricalOpsRequest.Builder {
793    ctor public AppOpsManager.HistoricalOpsRequest.Builder(long, long);
794    method @NonNull public android.app.AppOpsManager.HistoricalOpsRequest build();
795    method @NonNull public android.app.AppOpsManager.HistoricalOpsRequest.Builder setAttributionTag(@Nullable String);
796    method @NonNull public android.app.AppOpsManager.HistoricalOpsRequest.Builder setFlags(int);
797    method @NonNull public android.app.AppOpsManager.HistoricalOpsRequest.Builder setHistoryFlags(int);
798    method @NonNull public android.app.AppOpsManager.HistoricalOpsRequest.Builder setOpNames(@Nullable java.util.List<java.lang.String>);
799    method @NonNull public android.app.AppOpsManager.HistoricalOpsRequest.Builder setPackageName(@Nullable String);
800    method @NonNull public android.app.AppOpsManager.HistoricalOpsRequest.Builder setUid(int);
801  }
802
803  public static final class AppOpsManager.HistoricalPackageOps implements android.os.Parcelable {
804    method public int describeContents();
805    method @Nullable public android.app.AppOpsManager.AttributedHistoricalOps getAttributedOps(@Nullable String);
806    method @NonNull public android.app.AppOpsManager.AttributedHistoricalOps getAttributedOpsAt(@IntRange(from=0) int);
807    method @IntRange(from=0) public int getAttributedOpsCount();
808    method @Nullable public android.app.AppOpsManager.HistoricalOp getOp(@NonNull String);
809    method @NonNull public android.app.AppOpsManager.HistoricalOp getOpAt(@IntRange(from=0) int);
810    method @IntRange(from=0) public int getOpCount();
811    method @NonNull public String getPackageName();
812    method public void writeToParcel(@NonNull android.os.Parcel, int);
813    field @NonNull public static final android.os.Parcelable.Creator<android.app.AppOpsManager.HistoricalPackageOps> CREATOR;
814  }
815
816  public static final class AppOpsManager.HistoricalUidOps implements android.os.Parcelable {
817    method public int describeContents();
818    method @IntRange(from=0) public int getPackageCount();
819    method @Nullable public android.app.AppOpsManager.HistoricalPackageOps getPackageOps(@NonNull String);
820    method @NonNull public android.app.AppOpsManager.HistoricalPackageOps getPackageOpsAt(@IntRange(from=0) int);
821    method public int getUid();
822    method public void writeToParcel(android.os.Parcel, int);
823    field @NonNull public static final android.os.Parcelable.Creator<android.app.AppOpsManager.HistoricalUidOps> CREATOR;
824  }
825
826  public static interface AppOpsManager.OnOpNotedListener {
827    method public void onOpNoted(@NonNull String, int, @NonNull String, @Nullable String, int, int);
828    method public default void onOpNoted(@NonNull String, int, @NonNull String, @Nullable String, int, int, int);
829  }
830
831  public static final class AppOpsManager.OpEntry implements android.os.Parcelable {
832    method public int describeContents();
833    method @NonNull public java.util.Map<java.lang.String,android.app.AppOpsManager.AttributedOpEntry> getAttributedOpEntries();
834    method @Deprecated public long getDuration();
835    method public long getLastAccessBackgroundTime(int);
836    method public long getLastAccessForegroundTime(int);
837    method public long getLastAccessTime(int);
838    method public long getLastAccessTime(int, int, int);
839    method public long getLastBackgroundDuration(int);
840    method @Nullable public android.app.AppOpsManager.OpEventProxyInfo getLastBackgroundProxyInfo(int);
841    method public long getLastDuration(int);
842    method public long getLastDuration(int, int, int);
843    method public long getLastForegroundDuration(int);
844    method @Nullable public android.app.AppOpsManager.OpEventProxyInfo getLastForegroundProxyInfo(int);
845    method @Nullable public android.app.AppOpsManager.OpEventProxyInfo getLastProxyInfo(int);
846    method @Nullable public android.app.AppOpsManager.OpEventProxyInfo getLastProxyInfo(int, int, int);
847    method public long getLastRejectBackgroundTime(int);
848    method public long getLastRejectForegroundTime(int);
849    method public long getLastRejectTime(int);
850    method public long getLastRejectTime(int, int, int);
851    method public int getMode();
852    method @NonNull public String getOpStr();
853    method @Deprecated @Nullable public String getProxyPackageName();
854    method @Deprecated @Nullable public String getProxyPackageName(int, int);
855    method @Deprecated public int getProxyUid();
856    method @Deprecated public int getProxyUid(int, int);
857    method public boolean isRunning();
858    method public void writeToParcel(android.os.Parcel, int);
859    field @NonNull public static final android.os.Parcelable.Creator<android.app.AppOpsManager.OpEntry> CREATOR;
860  }
861
862  public static final class AppOpsManager.OpEventProxyInfo implements android.os.Parcelable {
863    method public int describeContents();
864    method @Nullable public String getAttributionTag();
865    method @Nullable public String getPackageName();
866    method @IntRange(from=0) public int getUid();
867    method public void writeToParcel(@NonNull android.os.Parcel, int);
868    field @NonNull public static final android.os.Parcelable.Creator<android.app.AppOpsManager.OpEventProxyInfo> CREATOR;
869  }
870
871  public static final class AppOpsManager.PackageOps implements android.os.Parcelable {
872    method public int describeContents();
873    method @NonNull public java.util.List<android.app.AppOpsManager.OpEntry> getOps();
874    method @NonNull public String getPackageName();
875    method public int getUid();
876    method public void writeToParcel(@NonNull android.os.Parcel, int);
877    field @NonNull public static final android.os.Parcelable.Creator<android.app.AppOpsManager.PackageOps> CREATOR;
878  }
879
880  public final class BackgroundInstallControlManager {
881    method @NonNull @RequiresPermission(android.Manifest.permission.GET_BACKGROUND_INSTALLED_PACKAGES) public java.util.List<android.content.pm.PackageInfo> getBackgroundInstalledPackages(long);
882  }
883
884  public class BroadcastOptions {
885    method public void clearRequireCompatChange();
886    method public int getPendingIntentBackgroundActivityStartMode();
887    method @Deprecated public boolean isPendingIntentBackgroundActivityLaunchAllowed();
888    method @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RESPONSE_STATS) public void recordResponseEventWhileInBackground(@IntRange(from=0) long);
889    method @RequiresPermission(android.Manifest.permission.START_ACTIVITIES_FROM_BACKGROUND) public void setBackgroundActivityStartsAllowed(boolean);
890    method public void setDontSendToRestrictedApps(boolean);
891    method @Deprecated public void setPendingIntentBackgroundActivityLaunchAllowed(boolean);
892    method @NonNull public android.app.BroadcastOptions setPendingIntentBackgroundActivityStartMode(int);
893    method public void setRequireAllOfPermissions(@Nullable String[]);
894    method public void setRequireCompatChange(long, boolean);
895    method public void setRequireNoneOfPermissions(@Nullable String[]);
896    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);
897    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);
898  }
899
900  public class DownloadManager {
901    method @RequiresPermission(android.Manifest.permission.WRITE_MEDIA_STORAGE) public void onMediaStoreDownloadsDeleted(@NonNull android.util.LongSparseArray<java.lang.String>);
902    field public static final String ACTION_DOWNLOAD_COMPLETED = "android.intent.action.DOWNLOAD_COMPLETED";
903  }
904
905  public final class GameManager {
906    method @Nullable @RequiresPermission(android.Manifest.permission.MANAGE_GAME_MODE) public android.app.GameModeInfo getGameModeInfo(@NonNull String);
907    method @RequiresPermission(android.Manifest.permission.MANAGE_GAME_MODE) public void setGameMode(@NonNull String, int);
908    method @RequiresPermission(android.Manifest.permission.MANAGE_GAME_MODE) public void updateCustomGameModeConfiguration(@NonNull String, @NonNull android.app.GameModeConfiguration);
909  }
910
911  public final class GameModeConfiguration implements android.os.Parcelable {
912    method public int describeContents();
913    method public int getFpsOverride();
914    method public float getScalingFactor();
915    method public void writeToParcel(@NonNull android.os.Parcel, int);
916    field @NonNull public static final android.os.Parcelable.Creator<android.app.GameModeConfiguration> CREATOR;
917    field public static final int FPS_OVERRIDE_NONE = 0; // 0x0
918  }
919
920  public static final class GameModeConfiguration.Builder {
921    ctor public GameModeConfiguration.Builder();
922    ctor public GameModeConfiguration.Builder(@NonNull android.app.GameModeConfiguration);
923    method @NonNull public android.app.GameModeConfiguration build();
924    method @NonNull public android.app.GameModeConfiguration.Builder setFpsOverride(int);
925    method @NonNull public android.app.GameModeConfiguration.Builder setScalingFactor(float);
926  }
927
928  public final class GameModeInfo implements android.os.Parcelable {
929    ctor @Deprecated public GameModeInfo(int, @NonNull int[]);
930    method public int describeContents();
931    method public int getActiveGameMode();
932    method @NonNull public int[] getAvailableGameModes();
933    method @Nullable public android.app.GameModeConfiguration getGameModeConfiguration(int);
934    method @NonNull public int[] getOverriddenGameModes();
935    method public boolean isDownscalingAllowed();
936    method public boolean isFpsOverrideAllowed();
937    method public void writeToParcel(@NonNull android.os.Parcel, int);
938    field @NonNull public static final android.os.Parcelable.Creator<android.app.GameModeInfo> CREATOR;
939  }
940
941  public static final class GameModeInfo.Builder {
942    ctor public GameModeInfo.Builder();
943    method @NonNull public android.app.GameModeInfo build();
944    method @NonNull public android.app.GameModeInfo.Builder setActiveGameMode(@NonNull int);
945    method @NonNull public android.app.GameModeInfo.Builder setAvailableGameModes(@NonNull int[]);
946    method @NonNull public android.app.GameModeInfo.Builder setDownscalingAllowed(boolean);
947    method @NonNull public android.app.GameModeInfo.Builder setFpsOverrideAllowed(boolean);
948    method @NonNull public android.app.GameModeInfo.Builder setGameModeConfiguration(int, @NonNull android.app.GameModeConfiguration);
949    method @NonNull public android.app.GameModeInfo.Builder setOverriddenGameModes(@NonNull int[]);
950  }
951
952  public abstract class InstantAppResolverService extends android.app.Service {
953    ctor public InstantAppResolverService();
954    method public final void attachBaseContext(android.content.Context);
955    method public final android.os.IBinder onBind(android.content.Intent);
956    method @Deprecated public void onGetInstantAppIntentFilter(@Nullable int[], @NonNull String, @NonNull android.app.InstantAppResolverService.InstantAppResolutionCallback);
957    method @Deprecated public void onGetInstantAppIntentFilter(@NonNull android.content.Intent, @Nullable int[], @NonNull String, @NonNull android.app.InstantAppResolverService.InstantAppResolutionCallback);
958    method @Deprecated public void onGetInstantAppIntentFilter(@NonNull android.content.Intent, @Nullable int[], @NonNull android.os.UserHandle, @NonNull String, @NonNull android.app.InstantAppResolverService.InstantAppResolutionCallback);
959    method @MainThread public void onGetInstantAppIntentFilter(@NonNull android.content.pm.InstantAppRequestInfo, @NonNull android.app.InstantAppResolverService.InstantAppResolutionCallback);
960    method @Deprecated public void onGetInstantAppResolveInfo(@Nullable int[], @NonNull String, @NonNull android.app.InstantAppResolverService.InstantAppResolutionCallback);
961    method @Deprecated public void onGetInstantAppResolveInfo(@NonNull android.content.Intent, @Nullable int[], @NonNull String, @NonNull android.app.InstantAppResolverService.InstantAppResolutionCallback);
962    method @Deprecated public void onGetInstantAppResolveInfo(@NonNull android.content.Intent, @Nullable int[], @NonNull android.os.UserHandle, @NonNull String, @NonNull android.app.InstantAppResolverService.InstantAppResolutionCallback);
963    method @MainThread public void onGetInstantAppResolveInfo(@NonNull android.content.pm.InstantAppRequestInfo, @NonNull android.app.InstantAppResolverService.InstantAppResolutionCallback);
964  }
965
966  public static final class InstantAppResolverService.InstantAppResolutionCallback {
967    method public void onInstantAppResolveInfo(java.util.List<android.content.pm.InstantAppResolveInfo>);
968  }
969
970  public class KeyguardManager {
971    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);
972    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);
973    method public android.content.Intent createConfirmFactoryResetCredentialIntent(CharSequence, CharSequence, CharSequence);
974    method @RequiresPermission("android.permission.SET_INITIAL_LOCK") public int getMinLockLength(boolean, int);
975    method @RequiresPermission(android.Manifest.permission.CONTROL_KEYGUARD_SECURE_NOTIFICATIONS) public boolean getPrivateNotificationsAllowed();
976    method @RequiresPermission("android.permission.SET_INITIAL_LOCK") public boolean isValidLockPasswordComplexity(int, @NonNull byte[], int);
977    method @RequiresPermission(android.Manifest.permission.MANAGE_WEAK_ESCROW_TOKEN) public boolean isWeakEscrowTokenActive(long, @NonNull android.os.UserHandle);
978    method @RequiresPermission(android.Manifest.permission.MANAGE_WEAK_ESCROW_TOKEN) public boolean isWeakEscrowTokenValid(long, @NonNull byte[], @NonNull android.os.UserHandle);
979    method @RequiresPermission(android.Manifest.permission.MANAGE_WEAK_ESCROW_TOKEN) public boolean registerWeakEscrowTokenRemovedListener(@NonNull java.util.concurrent.Executor, @NonNull android.app.KeyguardManager.WeakEscrowTokenRemovedListener);
980    method @RequiresPermission(android.Manifest.permission.MANAGE_WEAK_ESCROW_TOKEN) public boolean removeWeakEscrowToken(long, @NonNull android.os.UserHandle);
981    method @RequiresPermission(android.Manifest.permission.SHOW_KEYGUARD_MESSAGE) public void requestDismissKeyguard(@NonNull android.app.Activity, @Nullable CharSequence, @Nullable android.app.KeyguardManager.KeyguardDismissCallback);
982    method @RequiresPermission("android.permission.SET_INITIAL_LOCK") public boolean setLock(int, @NonNull byte[], int);
983    method @RequiresPermission(android.Manifest.permission.CONTROL_KEYGUARD_SECURE_NOTIFICATIONS) public void setPrivateNotificationsAllowed(boolean);
984    method @NonNull @RequiresPermission(android.Manifest.permission.CHECK_REMOTE_LOCKSCREEN) public android.app.RemoteLockscreenValidationSession startRemoteLockscreenValidation();
985    method @RequiresPermission(android.Manifest.permission.MANAGE_WEAK_ESCROW_TOKEN) public boolean unregisterWeakEscrowTokenRemovedListener(@NonNull android.app.KeyguardManager.WeakEscrowTokenRemovedListener);
986    method @NonNull @RequiresPermission(android.Manifest.permission.CHECK_REMOTE_LOCKSCREEN) public android.app.RemoteLockscreenValidationResult validateRemoteLockscreen(@NonNull byte[]);
987    field public static final int PASSWORD = 0; // 0x0
988    field public static final int PATTERN = 2; // 0x2
989    field public static final int PIN = 1; // 0x1
990  }
991
992  public static interface KeyguardManager.WeakEscrowTokenActivatedListener {
993    method public void onWeakEscrowTokenActivated(long, @NonNull android.os.UserHandle);
994  }
995
996  public static interface KeyguardManager.WeakEscrowTokenRemovedListener {
997    method public void onWeakEscrowTokenRemoved(long, @NonNull android.os.UserHandle);
998  }
999
1000  public class LocaleManager {
1001    method @RequiresPermission(android.Manifest.permission.CHANGE_CONFIGURATION) public void setApplicationLocales(@NonNull String, @NonNull android.os.LocaleList);
1002  }
1003
1004  public class Notification implements android.os.Parcelable {
1005    field public static final String CATEGORY_CAR_EMERGENCY = "car_emergency";
1006    field public static final String CATEGORY_CAR_INFORMATION = "car_information";
1007    field public static final String CATEGORY_CAR_WARNING = "car_warning";
1008    field @RequiresPermission(android.Manifest.permission.NOTIFICATION_DURING_SETUP) public static final String EXTRA_ALLOW_DURING_SETUP = "android.allowDuringSetup";
1009    field @RequiresPermission(android.Manifest.permission.SUBSTITUTE_NOTIFICATION_APP_NAME) public static final String EXTRA_SUBSTITUTE_APP_NAME = "android.substName";
1010    field public static final int FLAG_AUTOGROUP_SUMMARY = 1024; // 0x400
1011  }
1012
1013  public static class Notification.Action implements android.os.Parcelable {
1014    field public static final int SEMANTIC_ACTION_CONVERSATION_IS_PHISHING = 12; // 0xc
1015    field public static final int SEMANTIC_ACTION_MARK_CONVERSATION_AS_PRIORITY = 11; // 0xb
1016  }
1017
1018  public static final class Notification.TvExtender implements android.app.Notification.Extender {
1019    method public boolean getSuppressShowOverApps();
1020    method public android.app.Notification.TvExtender setChannel(String);
1021  }
1022
1023  public final class NotificationChannel implements android.os.Parcelable {
1024    method public int getUserLockedFields();
1025    method public boolean isDeleted();
1026    method public void populateFromXml(org.xmlpull.v1.XmlPullParser);
1027    method public org.json.JSONObject toJson() throws org.json.JSONException;
1028    method public void writeXml(org.xmlpull.v1.XmlSerializer) throws java.io.IOException;
1029    field public static final int USER_LOCKED_SOUND = 32; // 0x20
1030  }
1031
1032  public final class NotificationChannelGroup implements android.os.Parcelable {
1033    method public org.json.JSONObject toJson() throws org.json.JSONException;
1034  }
1035
1036  public class NotificationManager {
1037    method @NonNull public java.util.List<java.lang.String> getAllowedAssistantAdjustments();
1038    method @Nullable public android.content.ComponentName getAllowedNotificationAssistant();
1039    method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_NOTIFICATION_LISTENERS) public java.util.List<android.content.ComponentName> getEnabledNotificationListeners();
1040    method public boolean isNotificationAssistantAccessGranted(@NonNull android.content.ComponentName);
1041    method @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);
1042    method public void setNotificationAssistantAccessGranted(@Nullable android.content.ComponentName, boolean);
1043    method @RequiresPermission(android.Manifest.permission.MANAGE_NOTIFICATION_LISTENERS) public void setNotificationListenerAccessGranted(@NonNull android.content.ComponentName, boolean, boolean);
1044    method @RequiresPermission(allOf={android.Manifest.permission.INTERACT_ACROSS_USERS, android.Manifest.permission.ACCESS_NOTIFICATIONS}) public void unregisterCallNotificationEventListener(@NonNull android.app.NotificationManager.CallNotificationEventListener);
1045    field @RequiresPermission(android.Manifest.permission.STATUS_BAR_SERVICE) public static final String ACTION_CLOSE_NOTIFICATION_HANDLER_PANEL = "android.app.action.CLOSE_NOTIFICATION_HANDLER_PANEL";
1046    field @RequiresPermission(android.Manifest.permission.STATUS_BAR_SERVICE) public static final String ACTION_OPEN_NOTIFICATION_HANDLER_PANEL = "android.app.action.OPEN_NOTIFICATION_HANDLER_PANEL";
1047    field @RequiresPermission(android.Manifest.permission.STATUS_BAR_SERVICE) public static final String ACTION_TOGGLE_NOTIFICATION_HANDLER_PANEL = "android.app.action.TOGGLE_NOTIFICATION_HANDLER_PANEL";
1048  }
1049
1050  public static interface NotificationManager.CallNotificationEventListener {
1051    method public void onCallNotificationPosted(@NonNull String, @NonNull android.os.UserHandle);
1052    method public void onCallNotificationRemoved(@NonNull String, @NonNull android.os.UserHandle);
1053  }
1054
1055  public final class RemoteLockscreenValidationResult implements android.os.Parcelable {
1056    method public int describeContents();
1057    method public int getResultCode();
1058    method public long getTimeoutMillis();
1059    method public void writeToParcel(@NonNull android.os.Parcel, int);
1060    field @NonNull public static final android.os.Parcelable.Creator<android.app.RemoteLockscreenValidationResult> CREATOR;
1061    field public static final int RESULT_GUESS_INVALID = 2; // 0x2
1062    field public static final int RESULT_GUESS_VALID = 1; // 0x1
1063    field public static final int RESULT_LOCKOUT = 3; // 0x3
1064    field public static final int RESULT_NO_REMAINING_ATTEMPTS = 4; // 0x4
1065    field public static final int RESULT_SESSION_EXPIRED = 5; // 0x5
1066  }
1067
1068  public static final class RemoteLockscreenValidationResult.Builder {
1069    ctor public RemoteLockscreenValidationResult.Builder();
1070    method @NonNull public android.app.RemoteLockscreenValidationResult build();
1071    method @NonNull public android.app.RemoteLockscreenValidationResult.Builder setResultCode(int);
1072    method @NonNull public android.app.RemoteLockscreenValidationResult.Builder setTimeoutMillis(long);
1073  }
1074
1075  public final class RemoteLockscreenValidationSession implements android.os.Parcelable {
1076    method public int describeContents();
1077    method public int getLockType();
1078    method public int getRemainingAttempts();
1079    method @NonNull public byte[] getSourcePublicKey();
1080    method public void writeToParcel(@NonNull android.os.Parcel, int);
1081    field @NonNull public static final android.os.Parcelable.Creator<android.app.RemoteLockscreenValidationSession> CREATOR;
1082  }
1083
1084  public static final class RemoteLockscreenValidationSession.Builder {
1085    ctor public RemoteLockscreenValidationSession.Builder();
1086    method @NonNull public android.app.RemoteLockscreenValidationSession build();
1087    method @NonNull public android.app.RemoteLockscreenValidationSession.Builder setLockType(int);
1088    method @NonNull public android.app.RemoteLockscreenValidationSession.Builder setRemainingAttempts(int);
1089    method @NonNull public android.app.RemoteLockscreenValidationSession.Builder setSourcePublicKey(@NonNull byte[]);
1090  }
1091
1092  public final class RuntimeAppOpAccessMessage implements android.os.Parcelable {
1093    ctor public RuntimeAppOpAccessMessage(@IntRange(from=0L) int, @IntRange(from=0L) int, @NonNull String, @Nullable String, @NonNull String, int);
1094    method public int describeContents();
1095    method @Nullable public String getAttributionTag();
1096    method @NonNull public String getMessage();
1097    method @NonNull public String getOp();
1098    method @NonNull public String getPackageName();
1099    method public int getSamplingStrategy();
1100    method @IntRange(from=0L) public int getUid();
1101    method public void writeToParcel(@NonNull android.os.Parcel, int);
1102    field @NonNull public static final android.os.Parcelable.Creator<android.app.RuntimeAppOpAccessMessage> CREATOR;
1103  }
1104
1105  public class SearchManager implements android.content.DialogInterface.OnCancelListener android.content.DialogInterface.OnDismissListener {
1106    method public void launchAssist(@Nullable android.os.Bundle);
1107  }
1108
1109  public class StatusBarManager {
1110    method @NonNull @RequiresPermission(android.Manifest.permission.STATUS_BAR) public android.app.StatusBarManager.DisableInfo getDisableInfo();
1111    method @RequiresPermission(android.Manifest.permission.STATUS_BAR) public int getNavBarMode();
1112    method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void registerNearbyMediaDevicesProvider(@NonNull android.media.NearbyMediaDevicesProvider);
1113    method @RequiresPermission(android.Manifest.permission.STATUS_BAR) public void setDisabledForSetup(boolean);
1114    method @RequiresPermission(android.Manifest.permission.STATUS_BAR) public void setNavBarMode(int);
1115    method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void unregisterNearbyMediaDevicesProvider(@NonNull android.media.NearbyMediaDevicesProvider);
1116    method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void updateMediaTapToTransferReceiverDisplay(int, @NonNull android.media.MediaRoute2Info, @Nullable android.graphics.drawable.Icon, @Nullable CharSequence);
1117    method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void updateMediaTapToTransferSenderDisplay(int, @NonNull android.media.MediaRoute2Info, @Nullable java.util.concurrent.Executor, @Nullable Runnable);
1118    field public static final int MEDIA_TRANSFER_RECEIVER_STATE_CLOSE_TO_SENDER = 0; // 0x0
1119    field public static final int MEDIA_TRANSFER_RECEIVER_STATE_FAR_FROM_SENDER = 1; // 0x1
1120    field public static final int MEDIA_TRANSFER_RECEIVER_STATE_TRANSFER_TO_RECEIVER_FAILED = 3; // 0x3
1121    field public static final int MEDIA_TRANSFER_RECEIVER_STATE_TRANSFER_TO_RECEIVER_SUCCEEDED = 2; // 0x2
1122    field public static final int MEDIA_TRANSFER_SENDER_STATE_ALMOST_CLOSE_TO_END_CAST = 1; // 0x1
1123    field public static final int MEDIA_TRANSFER_SENDER_STATE_ALMOST_CLOSE_TO_START_CAST = 0; // 0x0
1124    field public static final int MEDIA_TRANSFER_SENDER_STATE_FAR_FROM_RECEIVER = 8; // 0x8
1125    field public static final int MEDIA_TRANSFER_SENDER_STATE_TRANSFER_TO_RECEIVER_FAILED = 6; // 0x6
1126    field public static final int MEDIA_TRANSFER_SENDER_STATE_TRANSFER_TO_RECEIVER_SUCCEEDED = 4; // 0x4
1127    field public static final int MEDIA_TRANSFER_SENDER_STATE_TRANSFER_TO_RECEIVER_TRIGGERED = 2; // 0x2
1128    field public static final int MEDIA_TRANSFER_SENDER_STATE_TRANSFER_TO_THIS_DEVICE_FAILED = 7; // 0x7
1129    field public static final int MEDIA_TRANSFER_SENDER_STATE_TRANSFER_TO_THIS_DEVICE_SUCCEEDED = 5; // 0x5
1130    field public static final int MEDIA_TRANSFER_SENDER_STATE_TRANSFER_TO_THIS_DEVICE_TRIGGERED = 3; // 0x3
1131    field public static final int NAV_BAR_MODE_DEFAULT = 0; // 0x0
1132    field public static final int NAV_BAR_MODE_KIDS = 1; // 0x1
1133  }
1134
1135  public static final class StatusBarManager.DisableInfo {
1136    method public boolean areAllComponentsEnabled();
1137    method public boolean isNavigateToHomeDisabled();
1138    method public boolean isNotificationPeekingDisabled();
1139    method public boolean isRecentsDisabled();
1140    method public boolean isSearchDisabled();
1141    method public boolean isStatusBarExpansionDisabled();
1142  }
1143
1144  public final class SystemServiceRegistry {
1145    method public static <TServiceClass> void registerContextAwareService(@NonNull String, @NonNull Class<TServiceClass>, @NonNull android.app.SystemServiceRegistry.ContextAwareServiceProducerWithBinder<TServiceClass>);
1146    method public static <TServiceClass> void registerContextAwareService(@NonNull String, @NonNull Class<TServiceClass>, @NonNull android.app.SystemServiceRegistry.ContextAwareServiceProducerWithoutBinder<TServiceClass>);
1147    method public static <TServiceClass> void registerStaticService(@NonNull String, @NonNull Class<TServiceClass>, @NonNull android.app.SystemServiceRegistry.StaticServiceProducerWithBinder<TServiceClass>);
1148    method public static <TServiceClass> void registerStaticService(@NonNull String, @NonNull Class<TServiceClass>, @NonNull android.app.SystemServiceRegistry.StaticServiceProducerWithoutBinder<TServiceClass>);
1149  }
1150
1151  public static interface SystemServiceRegistry.ContextAwareServiceProducerWithBinder<TServiceClass> {
1152    method @NonNull public TServiceClass createService(@NonNull android.content.Context, @NonNull android.os.IBinder);
1153  }
1154
1155  public static interface SystemServiceRegistry.ContextAwareServiceProducerWithoutBinder<TServiceClass> {
1156    method @NonNull public TServiceClass createService(@NonNull android.content.Context);
1157  }
1158
1159  public static interface SystemServiceRegistry.StaticServiceProducerWithBinder<TServiceClass> {
1160    method @NonNull public TServiceClass createService(@NonNull android.os.IBinder);
1161  }
1162
1163  public static interface SystemServiceRegistry.StaticServiceProducerWithoutBinder<TServiceClass> {
1164    method @NonNull public TServiceClass createService();
1165  }
1166
1167  public class UiModeManager {
1168    method @RequiresPermission(android.Manifest.permission.READ_PROJECTION_STATE) public void addOnProjectionStateChangedListener(int, @NonNull java.util.concurrent.Executor, @NonNull android.app.UiModeManager.OnProjectionStateChangedListener);
1169    method @RequiresPermission(android.Manifest.permission.ENTER_CAR_MODE_PRIORITIZED) public void enableCarMode(@IntRange(from=0) int, int);
1170    method @RequiresPermission(android.Manifest.permission.READ_PROJECTION_STATE) public int getActiveProjectionTypes();
1171    method @RequiresPermission(android.Manifest.permission.MODIFY_DAY_NIGHT_MODE) public int getNightModeCustomType();
1172    method @NonNull @RequiresPermission(android.Manifest.permission.READ_PROJECTION_STATE) public java.util.Set<java.lang.String> getProjectingPackages(int);
1173    method @RequiresPermission(value=android.Manifest.permission.TOGGLE_AUTOMOTIVE_PROJECTION, conditional=true) public boolean releaseProjection(int);
1174    method @RequiresPermission(android.Manifest.permission.READ_PROJECTION_STATE) public void removeOnProjectionStateChangedListener(@NonNull android.app.UiModeManager.OnProjectionStateChangedListener);
1175    method @RequiresPermission(value=android.Manifest.permission.TOGGLE_AUTOMOTIVE_PROJECTION, conditional=true) public boolean requestProjection(int);
1176    method @RequiresPermission(android.Manifest.permission.MODIFY_DAY_NIGHT_MODE) public boolean setNightModeActivatedForCustomMode(int, boolean);
1177    method @RequiresPermission(android.Manifest.permission.MODIFY_DAY_NIGHT_MODE) public void setNightModeCustomType(int);
1178    field public static final String ACTION_ENTER_CAR_MODE_PRIORITIZED = "android.app.action.ENTER_CAR_MODE_PRIORITIZED";
1179    field public static final String ACTION_EXIT_CAR_MODE_PRIORITIZED = "android.app.action.EXIT_CAR_MODE_PRIORITIZED";
1180    field public static final int DEFAULT_PRIORITY = 0; // 0x0
1181    field public static final String EXTRA_CALLING_PACKAGE = "android.app.extra.CALLING_PACKAGE";
1182    field public static final String EXTRA_PRIORITY = "android.app.extra.PRIORITY";
1183    field public static final int MODE_NIGHT_CUSTOM_TYPE_BEDTIME = 1; // 0x1
1184    field public static final int MODE_NIGHT_CUSTOM_TYPE_SCHEDULE = 0; // 0x0
1185    field public static final int MODE_NIGHT_CUSTOM_TYPE_UNKNOWN = -1; // 0xffffffff
1186    field public static final int PROJECTION_TYPE_ALL = -1; // 0xffffffff
1187    field public static final int PROJECTION_TYPE_AUTOMOTIVE = 1; // 0x1
1188    field public static final int PROJECTION_TYPE_NONE = 0; // 0x0
1189  }
1190
1191  public static interface UiModeManager.OnProjectionStateChangedListener {
1192    method public void onProjectionStateChanged(int, @NonNull java.util.Set<java.lang.String>);
1193  }
1194
1195  public final class Vr2dDisplayProperties implements android.os.Parcelable {
1196    ctor public Vr2dDisplayProperties(int, int, int);
1197    method public int describeContents();
1198    method public void dump(@NonNull java.io.PrintWriter, @NonNull String);
1199    method public int getAddedFlags();
1200    method public int getDpi();
1201    method public int getHeight();
1202    method public int getRemovedFlags();
1203    method public int getWidth();
1204    method public void writeToParcel(android.os.Parcel, int);
1205    field @NonNull public static final android.os.Parcelable.Creator<android.app.Vr2dDisplayProperties> CREATOR;
1206    field public static final int FLAG_VIRTUAL_DISPLAY_ENABLED = 1; // 0x1
1207  }
1208
1209  public static final class Vr2dDisplayProperties.Builder {
1210    ctor public Vr2dDisplayProperties.Builder();
1211    method @NonNull public android.app.Vr2dDisplayProperties.Builder addFlags(int);
1212    method @NonNull public android.app.Vr2dDisplayProperties build();
1213    method @NonNull public android.app.Vr2dDisplayProperties.Builder removeFlags(int);
1214    method @NonNull public android.app.Vr2dDisplayProperties.Builder setDimensions(int, int, int);
1215    method @NonNull public android.app.Vr2dDisplayProperties.Builder setEnabled(boolean);
1216  }
1217
1218  public class VrManager {
1219    method @RequiresPermission(android.Manifest.permission.RESTRICTED_VR_ACCESS) public int getVr2dDisplayId();
1220    method @RequiresPermission(anyOf={android.Manifest.permission.RESTRICTED_VR_ACCESS, "android.permission.ACCESS_VR_STATE"}) public boolean isPersistentVrModeEnabled();
1221    method @RequiresPermission(anyOf={android.Manifest.permission.RESTRICTED_VR_ACCESS, "android.permission.ACCESS_VR_STATE"}) public boolean isVrModeEnabled();
1222    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);
1223    method @RequiresPermission(android.Manifest.permission.RESTRICTED_VR_ACCESS) public void setAndBindVrCompositor(android.content.ComponentName);
1224    method @RequiresPermission(android.Manifest.permission.RESTRICTED_VR_ACCESS) public void setPersistentVrModeEnabled(boolean);
1225    method @RequiresPermission("android.permission.ACCESS_VR_MANAGER") public void setStandbyEnabled(boolean);
1226    method @RequiresPermission(android.Manifest.permission.RESTRICTED_VR_ACCESS) public void setVr2dDisplayProperties(@NonNull android.app.Vr2dDisplayProperties);
1227    method @RequiresPermission(android.Manifest.permission.RESTRICTED_VR_ACCESS) public void setVrInputMethod(@Nullable android.content.ComponentName);
1228    method @RequiresPermission(anyOf={android.Manifest.permission.RESTRICTED_VR_ACCESS, "android.permission.ACCESS_VR_STATE"}) public void unregisterVrStateCallback(@NonNull android.app.VrStateCallback);
1229  }
1230
1231  public abstract class VrStateCallback {
1232    ctor public VrStateCallback();
1233    method public void onPersistentVrStateChanged(boolean);
1234    method public void onVrStateChanged(boolean);
1235  }
1236
1237  public final class WallpaperInfo implements android.os.Parcelable {
1238    method public boolean supportsAmbientMode();
1239  }
1240
1241  public class WallpaperManager {
1242    method @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS_FULL) public void clearWallpaper(int, int);
1243    method @FloatRange(from=0.0f, to=1.0f) @RequiresPermission(android.Manifest.permission.SET_WALLPAPER_DIM_AMOUNT) public float getWallpaperDimAmount();
1244    method public void setDisplayOffset(android.os.IBinder, int, int);
1245    method @RequiresPermission(android.Manifest.permission.SET_WALLPAPER_COMPONENT) public boolean setWallpaperComponent(android.content.ComponentName);
1246    method @RequiresPermission(android.Manifest.permission.SET_WALLPAPER_COMPONENT) public boolean setWallpaperComponentWithFlags(@NonNull android.content.ComponentName, int);
1247    method @RequiresPermission(android.Manifest.permission.SET_WALLPAPER_DIM_AMOUNT) public void setWallpaperDimAmount(@FloatRange(from=0.0f, to=1.0f) float);
1248  }
1249
1250}
1251
1252package android.app.admin {
1253
1254  public final class AccountTypePolicyKey extends android.app.admin.PolicyKey {
1255    method public int describeContents();
1256    method @NonNull public String getAccountType();
1257    method public void writeToParcel(@NonNull android.os.Parcel, int);
1258    field @NonNull public static final android.os.Parcelable.Creator<android.app.admin.AccountTypePolicyKey> CREATOR;
1259  }
1260
1261  public abstract class Authority implements android.os.Parcelable {
1262    method public int describeContents();
1263  }
1264
1265  public final class DeviceAdminAuthority extends android.app.admin.Authority {
1266    ctor public DeviceAdminAuthority();
1267    method public void writeToParcel(@NonNull android.os.Parcel, int);
1268    field @NonNull public static final android.os.Parcelable.Creator<android.app.admin.DeviceAdminAuthority> CREATOR;
1269  }
1270
1271  public final class DevicePolicyDrawableResource implements android.os.Parcelable {
1272    ctor public DevicePolicyDrawableResource(@NonNull android.content.Context, @NonNull String, @NonNull String, @NonNull String, @DrawableRes int);
1273    ctor public DevicePolicyDrawableResource(@NonNull android.content.Context, @NonNull String, @NonNull String, @DrawableRes int);
1274    method public int describeContents();
1275    method @NonNull public String getDrawableId();
1276    method @NonNull public String getDrawableSource();
1277    method @NonNull public String getDrawableStyle();
1278    method @DrawableRes public int getResourceIdInCallingPackage();
1279    method public void writeToParcel(@NonNull android.os.Parcel, int);
1280    field @NonNull public static final android.os.Parcelable.Creator<android.app.admin.DevicePolicyDrawableResource> CREATOR;
1281  }
1282
1283  public final class DevicePolicyIdentifiers {
1284    field public static final String AUDIT_LOGGING_POLICY = "auditLogging";
1285  }
1286
1287  public class DevicePolicyKeyguardService extends android.app.Service {
1288    ctor public DevicePolicyKeyguardService();
1289    method @Nullable public void dismiss();
1290    method @Nullable public final android.os.IBinder onBind(@Nullable android.content.Intent);
1291    method @Nullable public android.view.SurfaceControlViewHost.SurfacePackage onCreateKeyguardSurface(@NonNull android.os.IBinder);
1292  }
1293
1294  public class DevicePolicyManager {
1295    method @RequiresPermission(android.Manifest.permission.MANAGE_PROFILE_AND_DEVICE_OWNERS) public int checkProvisioningPrecondition(@NonNull String, @NonNull String);
1296    method @RequiresPermission(android.Manifest.permission.MANAGE_DEVICE_POLICY_AUDIT_LOGGING) public void clearAuditLogEventCallback();
1297    method @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;
1298    method @Nullable public android.content.Intent createProvisioningIntentFromNfcIntent(@NonNull android.content.Intent);
1299    method @RequiresPermission(android.Manifest.permission.MANAGE_PROFILE_AND_DEVICE_OWNERS) public void finalizeWorkProfileProvisioning(@NonNull android.os.UserHandle, @Nullable android.accounts.Account);
1300    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;
1301    method @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS) public boolean getBluetoothContactSharingDisabled(@NonNull android.os.UserHandle);
1302    method @Nullable @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public String getDeviceOwner();
1303    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.MANAGE_PROFILE_AND_DEVICE_OWNERS}) public android.content.ComponentName getDeviceOwnerComponentOnAnyUser();
1304    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.MANAGE_PROFILE_AND_DEVICE_OWNERS}) public String getDeviceOwnerNameOnAnyUser();
1305    method @Nullable public CharSequence getDeviceOwnerOrganizationName();
1306    method @Nullable @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public android.os.UserHandle getDeviceOwnerUser();
1307    method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_PROFILE_AND_DEVICE_OWNERS) public android.app.admin.DevicePolicyState getDevicePolicyState();
1308    method @Nullable @RequiresPermission(android.Manifest.permission.MANAGE_PROFILE_AND_DEVICE_OWNERS) public String getFinancedDeviceKioskRoleHolder();
1309    method @RequiresPermission(android.Manifest.permission.MANAGE_PROFILE_AND_DEVICE_OWNERS) public int getMaxPolicyStorageLimit();
1310    method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.QUERY_ADMIN_POLICY}) public java.util.List<java.lang.String> getPermittedAccessibilityServices(int);
1311    method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.QUERY_ADMIN_POLICY}) public java.util.List<java.lang.String> getPermittedInputMethodsForCurrentUser();
1312    method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_PROFILE_AND_DEVICE_OWNERS) public java.util.List<android.os.UserHandle> getPolicyManagedProfiles(@NonNull android.os.UserHandle);
1313    method @Nullable public android.content.ComponentName getProfileOwner() throws java.lang.IllegalArgumentException;
1314    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;
1315    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.MANAGE_PROFILE_AND_DEVICE_OWNERS}) public int getUserProvisioningState();
1316    method @RequiresPermission(android.Manifest.permission.MANAGE_DEVICE_POLICY_AUDIT_LOGGING) public boolean isAuditLogEnabled();
1317    method public boolean isDeviceManaged();
1318    method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public boolean isDeviceProvisioned();
1319    method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public boolean isDeviceProvisioningConfigApplied();
1320    method @RequiresPermission(android.Manifest.permission.MANAGE_PROFILE_AND_DEVICE_OWNERS) public boolean isDpcDownloaded();
1321    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.MANAGE_PROFILE_AND_DEVICE_OWNERS}) public boolean isManagedKiosk();
1322    method public boolean isSecondaryLockscreenEnabled(@NonNull android.os.UserHandle);
1323    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.MANAGE_PROFILE_AND_DEVICE_OWNERS}) public boolean isUnattendedManagedKiosk();
1324    method @RequiresPermission("android.permission.NOTIFY_PENDING_SYSTEM_UPDATE") public void notifyPendingSystemUpdate(long);
1325    method @RequiresPermission("android.permission.NOTIFY_PENDING_SYSTEM_UPDATE") public void notifyPendingSystemUpdate(long, boolean);
1326    method @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS_FULL) public boolean packageHasActiveAdmins(String);
1327    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;
1328    method @RequiresPermission(android.Manifest.permission.TRIGGER_LOST_MODE) public void sendLostModeLocationUpdate(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Boolean>);
1329    method @Deprecated @RequiresPermission(android.Manifest.permission.MANAGE_DEVICE_ADMINS) public boolean setActiveProfileOwner(@NonNull android.content.ComponentName, String) throws java.lang.IllegalArgumentException;
1330    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;
1331    method @RequiresPermission(android.Manifest.permission.MANAGE_DEVICE_POLICY_AUDIT_LOGGING) public void setAuditLogEnabled(boolean);
1332    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>>);
1333    method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public void setDeviceProvisioningConfigApplied();
1334    method @RequiresPermission(android.Manifest.permission.MANAGE_PROFILE_AND_DEVICE_OWNERS) public void setDpcDownloaded(boolean);
1335    method @RequiresPermission(android.Manifest.permission.MANAGE_PROFILE_AND_DEVICE_OWNERS) public void setMaxPolicyStorageLimit(int);
1336    method @Deprecated @RequiresPermission(value=android.Manifest.permission.GRANT_PROFILE_OWNER_DEVICE_IDS_ACCESS, conditional=true) public void setProfileOwnerCanAccessDeviceIds(@NonNull android.content.ComponentName);
1337    method public void setSecondaryLockscreenEnabled(@NonNull android.content.ComponentName, boolean);
1338    method @RequiresPermission(android.Manifest.permission.MANAGE_PROFILE_AND_DEVICE_OWNERS) public void setUserProvisioningState(int, @NonNull android.os.UserHandle);
1339    method @RequiresPermission(android.Manifest.permission.MANAGE_ROLE_HOLDERS) public boolean shouldAllowBypassingDevicePolicyManagementRoleQualification();
1340    field public static final String ACCOUNT_FEATURE_DEVICE_OR_PROFILE_OWNER_ALLOWED = "android.account.DEVICE_OR_PROFILE_OWNER_ALLOWED";
1341    field public static final String ACCOUNT_FEATURE_DEVICE_OR_PROFILE_OWNER_DISALLOWED = "android.account.DEVICE_OR_PROFILE_OWNER_DISALLOWED";
1342    field public static final String ACTION_BIND_SECONDARY_LOCKSCREEN_SERVICE = "android.app.action.BIND_SECONDARY_LOCKSCREEN_SERVICE";
1343    field @RequiresPermission(android.Manifest.permission.DISPATCH_PROVISIONING_MESSAGE) public static final String ACTION_ESTABLISH_NETWORK_CONNECTION = "android.app.action.ESTABLISH_NETWORK_CONNECTION";
1344    field public static final String ACTION_LOST_MODE_LOCATION_UPDATE = "android.app.action.LOST_MODE_LOCATION_UPDATE";
1345    field public static final String ACTION_PROVISION_FINALIZATION = "android.app.action.PROVISION_FINALIZATION";
1346    field public static final String ACTION_PROVISION_FINANCED_DEVICE = "android.app.action.PROVISION_FINANCED_DEVICE";
1347    field public static final String ACTION_PROVISION_MANAGED_DEVICE_FROM_TRUSTED_SOURCE = "android.app.action.PROVISION_MANAGED_DEVICE_FROM_TRUSTED_SOURCE";
1348    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";
1349    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";
1350    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";
1351    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";
1352    field public static final String ACTION_SET_PROFILE_OWNER = "android.app.action.SET_PROFILE_OWNER";
1353    field @Deprecated public static final String ACTION_STATE_USER_SETUP_COMPLETE = "android.app.action.STATE_USER_SETUP_COMPLETE";
1354    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";
1355    field public static final int EXEMPT_FROM_ACTIVITY_BG_START_RESTRICTION = 2; // 0x2
1356    field public static final int EXEMPT_FROM_DISMISSIBLE_NOTIFICATIONS = 1; // 0x1
1357    field public static final int EXEMPT_FROM_HIBERNATION = 3; // 0x3
1358    field public static final int EXEMPT_FROM_POWER_RESTRICTIONS = 4; // 0x4
1359    field public static final int EXEMPT_FROM_SUSPENSION = 0; // 0x0
1360    field public static final String EXTRA_FORCE_UPDATE_ROLE_HOLDER = "android.app.extra.FORCE_UPDATE_ROLE_HOLDER";
1361    field public static final String EXTRA_LOST_MODE_LOCATION = "android.app.extra.LOST_MODE_LOCATION";
1362    field public static final String EXTRA_PROFILE_OWNER_NAME = "android.app.extra.PROFILE_OWNER_NAME";
1363    field @Deprecated public static final String EXTRA_PROVISIONING_DEVICE_ADMIN_PACKAGE_ICON_URI = "android.app.extra.PROVISIONING_DEVICE_ADMIN_PACKAGE_ICON_URI";
1364    field @Deprecated public static final String EXTRA_PROVISIONING_DEVICE_ADMIN_PACKAGE_LABEL = "android.app.extra.PROVISIONING_DEVICE_ADMIN_PACKAGE_LABEL";
1365    field public static final String EXTRA_PROVISIONING_ORGANIZATION_NAME = "android.app.extra.PROVISIONING_ORGANIZATION_NAME";
1366    field public static final String EXTRA_PROVISIONING_RETURN_BEFORE_POLICY_COMPLIANCE = "android.app.extra.PROVISIONING_RETURN_BEFORE_POLICY_COMPLIANCE";
1367    field public static final String EXTRA_PROVISIONING_ROLE_HOLDER_CUSTOM_USER_CONSENT_INTENT = "android.app.extra.PROVISIONING_ROLE_HOLDER_CUSTOM_USER_CONSENT_INTENT";
1368    field public static final String EXTRA_PROVISIONING_ROLE_HOLDER_EXTRAS_BUNDLE = "android.app.extra.PROVISIONING_ROLE_HOLDER_EXTRAS_BUNDLE";
1369    field public static final String EXTRA_PROVISIONING_ROLE_HOLDER_PACKAGE_DOWNLOAD_COOKIE_HEADER = "android.app.extra.PROVISIONING_ROLE_HOLDER_PACKAGE_DOWNLOAD_COOKIE_HEADER";
1370    field public static final String EXTRA_PROVISIONING_ROLE_HOLDER_PACKAGE_DOWNLOAD_LOCATION = "android.app.extra.PROVISIONING_ROLE_HOLDER_PACKAGE_DOWNLOAD_LOCATION";
1371    field public static final String EXTRA_PROVISIONING_ROLE_HOLDER_SIGNATURE_CHECKSUM = "android.app.extra.PROVISIONING_ROLE_HOLDER_SIGNATURE_CHECKSUM";
1372    field public static final String EXTRA_PROVISIONING_SKIP_OWNERSHIP_DISCLAIMER = "android.app.extra.PROVISIONING_SKIP_OWNERSHIP_DISCLAIMER";
1373    field public static final String EXTRA_PROVISIONING_SUPPORTED_MODES = "android.app.extra.PROVISIONING_SUPPORTED_MODES";
1374    field public static final String EXTRA_PROVISIONING_SUPPORT_URL = "android.app.extra.PROVISIONING_SUPPORT_URL";
1375    field public static final String EXTRA_PROVISIONING_TRIGGER = "android.app.extra.PROVISIONING_TRIGGER";
1376    field public static final String EXTRA_RESTRICTION = "android.app.extra.RESTRICTION";
1377    field public static final String EXTRA_ROLE_HOLDER_PROVISIONING_INITIATOR_PACKAGE = "android.app.extra.ROLE_HOLDER_PROVISIONING_INITIATOR_PACKAGE";
1378    field public static final String EXTRA_ROLE_HOLDER_STATE = "android.app.extra.ROLE_HOLDER_STATE";
1379    field public static final String EXTRA_ROLE_HOLDER_UPDATE_RESULT_CODE = "android.app.extra.ROLE_HOLDER_UPDATE_RESULT_CODE";
1380    field public static final int FLAG_SUPPORTED_MODES_DEVICE_OWNER = 4; // 0x4
1381    field public static final int FLAG_SUPPORTED_MODES_ORGANIZATION_OWNED = 1; // 0x1
1382    field public static final int FLAG_SUPPORTED_MODES_PERSONALLY_OWNED = 2; // 0x2
1383    field public static final int PROVISIONING_TRIGGER_CLOUD_ENROLLMENT = 1; // 0x1
1384    field public static final int PROVISIONING_TRIGGER_MANAGED_ACCOUNT = 4; // 0x4
1385    field public static final int PROVISIONING_TRIGGER_NFC = 5; // 0x5
1386    field @Deprecated public static final int PROVISIONING_TRIGGER_PERSISTENT_DEVICE_OWNER = 3; // 0x3
1387    field public static final int PROVISIONING_TRIGGER_QR_CODE = 2; // 0x2
1388    field public static final int PROVISIONING_TRIGGER_UNSPECIFIED = 0; // 0x0
1389    field public static final String REQUIRED_APP_MANAGED_DEVICE = "android.app.REQUIRED_APP_MANAGED_DEVICE";
1390    field public static final String REQUIRED_APP_MANAGED_PROFILE = "android.app.REQUIRED_APP_MANAGED_PROFILE";
1391    field public static final String REQUIRED_APP_MANAGED_USER = "android.app.REQUIRED_APP_MANAGED_USER";
1392    field public static final int RESULT_DEVICE_OWNER_SET = 123; // 0x7b
1393    field public static final int RESULT_UPDATE_DEVICE_POLICY_MANAGEMENT_ROLE_HOLDER_PROVISIONING_DISABLED = 3; // 0x3
1394    field public static final int RESULT_UPDATE_DEVICE_POLICY_MANAGEMENT_ROLE_HOLDER_RECOVERABLE_ERROR = 1; // 0x1
1395    field public static final int RESULT_UPDATE_DEVICE_POLICY_MANAGEMENT_ROLE_HOLDER_UNRECOVERABLE_ERROR = 2; // 0x2
1396    field public static final int RESULT_UPDATE_ROLE_HOLDER = 2; // 0x2
1397    field public static final int RESULT_WORK_PROFILE_CREATED = 122; // 0x7a
1398    field public static final int STATE_USER_PROFILE_COMPLETE = 4; // 0x4
1399    field public static final int STATE_USER_PROFILE_FINALIZED = 5; // 0x5
1400    field public static final int STATE_USER_SETUP_COMPLETE = 2; // 0x2
1401    field public static final int STATE_USER_SETUP_FINALIZED = 3; // 0x3
1402    field public static final int STATE_USER_SETUP_INCOMPLETE = 1; // 0x1
1403    field public static final int STATE_USER_UNMANAGED = 0; // 0x0
1404    field public static final int STATUS_ACCOUNTS_NOT_EMPTY = 6; // 0x6
1405    field public static final int STATUS_CANNOT_ADD_MANAGED_PROFILE = 11; // 0xb
1406    field public static final int STATUS_DEVICE_ADMIN_NOT_SUPPORTED = 13; // 0xd
1407    field public static final int STATUS_HAS_DEVICE_OWNER = 1; // 0x1
1408    field public static final int STATUS_HAS_PAIRED = 8; // 0x8
1409    field public static final int STATUS_HEADLESS_ONLY_SYSTEM_USER = 17; // 0x11
1410    field public static final int STATUS_HEADLESS_SYSTEM_USER_MODE_NOT_SUPPORTED = 16; // 0x10
1411    field public static final int STATUS_MANAGED_USERS_NOT_SUPPORTED = 9; // 0x9
1412    field public static final int STATUS_NONSYSTEM_USER_EXISTS = 5; // 0x5
1413    field public static final int STATUS_NOT_SYSTEM_USER = 7; // 0x7
1414    field public static final int STATUS_OK = 0; // 0x0
1415    field public static final int STATUS_PROVISIONING_NOT_ALLOWED_FOR_NON_DEVELOPER_USERS = 15; // 0xf
1416    field public static final int STATUS_SYSTEM_USER = 10; // 0xa
1417    field public static final int STATUS_UNKNOWN_ERROR = -1; // 0xffffffff
1418    field public static final int STATUS_USER_HAS_PROFILE_OWNER = 2; // 0x2
1419    field public static final int STATUS_USER_NOT_RUNNING = 3; // 0x3
1420    field public static final int STATUS_USER_SETUP_COMPLETED = 4; // 0x4
1421  }
1422
1423  public static final class DevicePolicyResources.Strings {
1424  }
1425
1426  public static final class DevicePolicyResources.Strings.DefaultAppSettings {
1427    field public static final String HOME_MISSING_WORK_PROFILE_SUPPORT_MESSAGE = "DefaultAppSettings.HOME_MISSING_WORK_PROFILE_SUPPORT_MESSAGE";
1428    field public static final String WORK_PROFILE_DEFAULT_APPS_TITLE = "DefaultAppSettings.WORK_PROFILE_DEFAULT_APPS_TITLE";
1429  }
1430
1431  public static final class DevicePolicyResources.Strings.PermissionSettings {
1432    field public static final String BACKGROUND_ACCESS_DISABLED_BY_ADMIN_MESSAGE = "PermissionSettings.BACKGROUND_ACCESS_DISABLED_BY_ADMIN_MESSAGE";
1433    field public static final String BACKGROUND_ACCESS_ENABLED_BY_ADMIN_MESSAGE = "PermissionSettings.BACKGROUND_ACCESS_ENABLED_BY_ADMIN_MESSAGE";
1434    field public static final String FOREGROUND_ACCESS_ENABLED_BY_ADMIN_MESSAGE = "PermissionSettings.FOREGROUND_ACCESS_ENABLED_BY_ADMIN_MESSAGE";
1435    field public static final String LOCATION_AUTO_GRANTED_MESSAGE = "PermissionSettings.LOCATION_AUTO_GRANTED_MESSAGE";
1436  }
1437
1438  public class DevicePolicyResourcesManager {
1439    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_MANAGEMENT_RESOURCES) public void resetDrawables(@NonNull java.util.Set<java.lang.String>);
1440    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_MANAGEMENT_RESOURCES) public void resetStrings(@NonNull java.util.Set<java.lang.String>);
1441    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_MANAGEMENT_RESOURCES) public void setDrawables(@NonNull java.util.Set<android.app.admin.DevicePolicyDrawableResource>);
1442    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_MANAGEMENT_RESOURCES) public void setStrings(@NonNull java.util.Set<android.app.admin.DevicePolicyStringResource>);
1443  }
1444
1445  public final class DevicePolicyState implements android.os.Parcelable {
1446    method public int describeContents();
1447    method @NonNull public java.util.Map<android.os.UserHandle,java.util.Map<android.app.admin.PolicyKey,android.app.admin.PolicyState<?>>> getPoliciesForAllUsers();
1448    method @NonNull public java.util.Map<android.app.admin.PolicyKey,android.app.admin.PolicyState<?>> getPoliciesForUser(@NonNull android.os.UserHandle);
1449    method public void writeToParcel(@NonNull android.os.Parcel, int);
1450    field @NonNull public static final android.os.Parcelable.Creator<android.app.admin.DevicePolicyState> CREATOR;
1451  }
1452
1453  public final class DevicePolicyStringResource implements android.os.Parcelable {
1454    ctor public DevicePolicyStringResource(@NonNull android.content.Context, @NonNull String, @StringRes int);
1455    method public int describeContents();
1456    method public int getResourceIdInCallingPackage();
1457    method @NonNull public String getStringId();
1458    method public void writeToParcel(@NonNull android.os.Parcel, int);
1459    field @NonNull public static final android.os.Parcelable.Creator<android.app.admin.DevicePolicyStringResource> CREATOR;
1460  }
1461
1462  public final class DpcAuthority extends android.app.admin.Authority {
1463    ctor public DpcAuthority();
1464    method public void writeToParcel(@NonNull android.os.Parcel, int);
1465    field @NonNull public static final android.os.Parcelable.Creator<android.app.admin.DpcAuthority> CREATOR;
1466  }
1467
1468  public final class EnforcingAdmin implements android.os.Parcelable {
1469    ctor public EnforcingAdmin(@NonNull String, @NonNull android.app.admin.Authority, @NonNull android.os.UserHandle);
1470    method public int describeContents();
1471    method @NonNull public android.app.admin.Authority getAuthority();
1472    method @NonNull public String getPackageName();
1473    method @NonNull public android.os.UserHandle getUserHandle();
1474    method public void writeToParcel(@NonNull android.os.Parcel, int);
1475    field @NonNull public static final android.os.Parcelable.Creator<android.app.admin.EnforcingAdmin> CREATOR;
1476  }
1477
1478  public final class FullyManagedDeviceProvisioningParams implements android.os.Parcelable {
1479    method public boolean canDeviceOwnerGrantSensorsPermissions();
1480    method public int describeContents();
1481    method @NonNull public android.os.PersistableBundle getAdminExtras();
1482    method @NonNull public android.content.ComponentName getDeviceAdminComponentName();
1483    method public long getLocalTime();
1484    method @Nullable public java.util.Locale getLocale();
1485    method @NonNull public String getOwnerName();
1486    method @Nullable public String getTimeZone();
1487    method public boolean isDemoDevice();
1488    method public boolean isLeaveAllSystemAppsEnabled();
1489    method public void writeToParcel(@NonNull android.os.Parcel, @Nullable int);
1490    field @NonNull public static final android.os.Parcelable.Creator<android.app.admin.FullyManagedDeviceProvisioningParams> CREATOR;
1491  }
1492
1493  public static final class FullyManagedDeviceProvisioningParams.Builder {
1494    ctor public FullyManagedDeviceProvisioningParams.Builder(@NonNull android.content.ComponentName, @NonNull String);
1495    method @NonNull public android.app.admin.FullyManagedDeviceProvisioningParams build();
1496    method @NonNull public android.app.admin.FullyManagedDeviceProvisioningParams.Builder setAdminExtras(@NonNull android.os.PersistableBundle);
1497    method @NonNull public android.app.admin.FullyManagedDeviceProvisioningParams.Builder setCanDeviceOwnerGrantSensorsPermissions(boolean);
1498    method @NonNull public android.app.admin.FullyManagedDeviceProvisioningParams.Builder setDemoDevice(boolean);
1499    method @NonNull public android.app.admin.FullyManagedDeviceProvisioningParams.Builder setLeaveAllSystemAppsEnabled(boolean);
1500    method @NonNull public android.app.admin.FullyManagedDeviceProvisioningParams.Builder setLocalTime(long);
1501    method @NonNull public android.app.admin.FullyManagedDeviceProvisioningParams.Builder setLocale(@Nullable java.util.Locale);
1502    method @NonNull public android.app.admin.FullyManagedDeviceProvisioningParams.Builder setTimeZone(@Nullable String);
1503  }
1504
1505  public final class IntentFilterPolicyKey extends android.app.admin.PolicyKey {
1506    method public int describeContents();
1507    method @NonNull public android.content.IntentFilter getIntentFilter();
1508    method public void writeToParcel(@NonNull android.os.Parcel, int);
1509    field @NonNull public static final android.os.Parcelable.Creator<android.app.admin.IntentFilterPolicyKey> CREATOR;
1510  }
1511
1512  public final class LockTaskPolicy implements android.os.Parcelable {
1513    method public int describeContents();
1514    method public int getFlags();
1515    method @NonNull public java.util.Set<java.lang.String> getPackages();
1516    method public void writeToParcel(@NonNull android.os.Parcel, int);
1517    field @NonNull public static final android.os.Parcelable.Creator<android.app.admin.LockTaskPolicy> CREATOR;
1518  }
1519
1520  public final class ManagedProfileProvisioningParams implements android.os.Parcelable {
1521    method public int describeContents();
1522    method @Nullable public android.accounts.Account getAccountToMigrate();
1523    method @NonNull public android.os.PersistableBundle getAdminExtras();
1524    method @NonNull public String getOwnerName();
1525    method @NonNull public android.content.ComponentName getProfileAdminComponentName();
1526    method @Nullable public String getProfileName();
1527    method public boolean isKeepingAccountOnMigration();
1528    method public boolean isLeaveAllSystemAppsEnabled();
1529    method public boolean isOrganizationOwnedProvisioning();
1530    method public void writeToParcel(@NonNull android.os.Parcel, @Nullable int);
1531    field @NonNull public static final android.os.Parcelable.Creator<android.app.admin.ManagedProfileProvisioningParams> CREATOR;
1532  }
1533
1534  public static final class ManagedProfileProvisioningParams.Builder {
1535    ctor public ManagedProfileProvisioningParams.Builder(@NonNull android.content.ComponentName, @NonNull String);
1536    method @NonNull public android.app.admin.ManagedProfileProvisioningParams build();
1537    method @NonNull public android.app.admin.ManagedProfileProvisioningParams.Builder setAccountToMigrate(@Nullable android.accounts.Account);
1538    method @NonNull public android.app.admin.ManagedProfileProvisioningParams.Builder setAdminExtras(@NonNull android.os.PersistableBundle);
1539    method @NonNull public android.app.admin.ManagedProfileProvisioningParams.Builder setKeepingAccountOnMigration(boolean);
1540    method @NonNull public android.app.admin.ManagedProfileProvisioningParams.Builder setLeaveAllSystemAppsEnabled(boolean);
1541    method @NonNull public android.app.admin.ManagedProfileProvisioningParams.Builder setOrganizationOwnedProvisioning(boolean);
1542    method @NonNull public android.app.admin.ManagedProfileProvisioningParams.Builder setProfileName(@Nullable String);
1543  }
1544
1545  public final class NoArgsPolicyKey extends android.app.admin.PolicyKey {
1546    method public int describeContents();
1547    method public void writeToParcel(@NonNull android.os.Parcel, int);
1548    field @NonNull public static final android.os.Parcelable.Creator<android.app.admin.NoArgsPolicyKey> CREATOR;
1549  }
1550
1551  public final class PackagePermissionPolicyKey extends android.app.admin.PolicyKey {
1552    method public int describeContents();
1553    method @NonNull public String getPackageName();
1554    method @NonNull public String getPermissionName();
1555    method public void writeToParcel(@NonNull android.os.Parcel, int);
1556    field @NonNull public static final android.os.Parcelable.Creator<android.app.admin.PackagePermissionPolicyKey> CREATOR;
1557  }
1558
1559  public final class PackagePolicyKey extends android.app.admin.PolicyKey {
1560    method public int describeContents();
1561    method @NonNull public String getPackageName();
1562    method public void writeToParcel(@NonNull android.os.Parcel, int);
1563    field @NonNull public static final android.os.Parcelable.Creator<android.app.admin.PackagePolicyKey> CREATOR;
1564  }
1565
1566  public abstract class PolicyKey implements android.os.Parcelable {
1567    method @NonNull public String getIdentifier();
1568  }
1569
1570  public final class PolicyState<V> implements android.os.Parcelable {
1571    method public int describeContents();
1572    method @Nullable public V getCurrentResolvedPolicy();
1573    method @NonNull public java.util.LinkedHashMap<android.app.admin.EnforcingAdmin,V> getPoliciesSetByAdmins();
1574    method public void writeToParcel(@NonNull android.os.Parcel, int);
1575    field @NonNull public static final android.os.Parcelable.Creator<android.app.admin.PolicyState<?>> CREATOR;
1576  }
1577
1578  public class ProvisioningException extends android.util.AndroidException {
1579    ctor public ProvisioningException(@NonNull Exception, int);
1580    ctor public ProvisioningException(@NonNull Exception, int, @Nullable String);
1581    method public int getProvisioningError();
1582    field public static final int ERROR_ADMIN_PACKAGE_INSTALLATION_FAILED = 3; // 0x3
1583    field public static final int ERROR_PRE_CONDITION_FAILED = 1; // 0x1
1584    field public static final int ERROR_PROFILE_CREATION_FAILED = 2; // 0x2
1585    field public static final int ERROR_REMOVE_NON_REQUIRED_APPS_FAILED = 6; // 0x6
1586    field public static final int ERROR_SETTING_PROFILE_OWNER_FAILED = 4; // 0x4
1587    field public static final int ERROR_SET_DEVICE_OWNER_FAILED = 7; // 0x7
1588    field public static final int ERROR_STARTING_PROFILE_FAILED = 5; // 0x5
1589    field public static final int ERROR_UNKNOWN = 0; // 0x0
1590  }
1591
1592  public final class RoleAuthority extends android.app.admin.Authority {
1593    ctor public RoleAuthority(@NonNull java.util.Set<java.lang.String>);
1594    method @NonNull public java.util.Set<java.lang.String> getRoles();
1595    method public void writeToParcel(@NonNull android.os.Parcel, int);
1596    field @NonNull public static final android.os.Parcelable.Creator<android.app.admin.RoleAuthority> CREATOR;
1597  }
1598
1599  public class SecurityLog {
1600    method @RequiresPermission(android.Manifest.permission.WRITE_SECURITY_LOG) public static int writeEvent(int, @NonNull java.lang.Object...);
1601  }
1602
1603  public final class SystemUpdatePolicy implements android.os.Parcelable {
1604    method public android.app.admin.SystemUpdatePolicy.InstallationOption getInstallationOptionAt(long);
1605    field public static final int TYPE_PAUSE = 4; // 0x4
1606  }
1607
1608  public static class SystemUpdatePolicy.InstallationOption {
1609    method public long getEffectiveTime();
1610    method public int getType();
1611  }
1612
1613  public final class UnknownAuthority extends android.app.admin.Authority {
1614    ctor public UnknownAuthority();
1615    method public void writeToParcel(@NonNull android.os.Parcel, int);
1616    field @NonNull public static final android.os.Parcelable.Creator<android.app.admin.UnknownAuthority> CREATOR;
1617  }
1618
1619  public final class UserRestrictionPolicyKey extends android.app.admin.PolicyKey {
1620    method public int describeContents();
1621    method @NonNull public String getRestriction();
1622    method public void writeToParcel(@NonNull android.os.Parcel, int);
1623    field @NonNull public static final android.os.Parcelable.Creator<android.app.admin.UserRestrictionPolicyKey> CREATOR;
1624  }
1625
1626}
1627
1628package android.app.ambientcontext {
1629
1630  public final class AmbientContextEvent implements android.os.Parcelable {
1631    method public int describeContents();
1632    method public int getConfidenceLevel();
1633    method public int getDensityLevel();
1634    method @NonNull public java.time.Instant getEndTime();
1635    method public int getEventType();
1636    method @NonNull public java.time.Instant getStartTime();
1637    method @NonNull public android.os.PersistableBundle getVendorData();
1638    method public void writeToParcel(@NonNull android.os.Parcel, int);
1639    field @NonNull public static final android.os.Parcelable.Creator<android.app.ambientcontext.AmbientContextEvent> CREATOR;
1640    field public static final int EVENT_BACK_DOUBLE_TAP = 3; // 0x3
1641    field public static final int EVENT_COUGH = 1; // 0x1
1642    field public static final int EVENT_SNORE = 2; // 0x2
1643    field public static final int EVENT_UNKNOWN = 0; // 0x0
1644    field public static final int EVENT_VENDOR_WEARABLE_START = 100000; // 0x186a0
1645    field public static final String KEY_VENDOR_WEARABLE_EVENT_NAME = "wearable_event_name";
1646    field public static final int LEVEL_HIGH = 5; // 0x5
1647    field public static final int LEVEL_LOW = 1; // 0x1
1648    field public static final int LEVEL_MEDIUM = 3; // 0x3
1649    field public static final int LEVEL_MEDIUM_HIGH = 4; // 0x4
1650    field public static final int LEVEL_MEDIUM_LOW = 2; // 0x2
1651    field public static final int LEVEL_UNKNOWN = 0; // 0x0
1652  }
1653
1654  public static final class AmbientContextEvent.Builder {
1655    ctor public AmbientContextEvent.Builder();
1656    method @NonNull public android.app.ambientcontext.AmbientContextEvent build();
1657    method @NonNull public android.app.ambientcontext.AmbientContextEvent.Builder setConfidenceLevel(int);
1658    method @NonNull public android.app.ambientcontext.AmbientContextEvent.Builder setDensityLevel(int);
1659    method @NonNull public android.app.ambientcontext.AmbientContextEvent.Builder setEndTime(@NonNull java.time.Instant);
1660    method @NonNull public android.app.ambientcontext.AmbientContextEvent.Builder setEventType(int);
1661    method @NonNull public android.app.ambientcontext.AmbientContextEvent.Builder setStartTime(@NonNull java.time.Instant);
1662    method @NonNull public android.app.ambientcontext.AmbientContextEvent.Builder setVendorData(@NonNull android.os.PersistableBundle);
1663  }
1664
1665  public final class AmbientContextEventRequest implements android.os.Parcelable {
1666    method public int describeContents();
1667    method @NonNull public java.util.Set<java.lang.Integer> getEventTypes();
1668    method @NonNull public android.os.PersistableBundle getOptions();
1669    method public void writeToParcel(@NonNull android.os.Parcel, int);
1670    field @NonNull public static final android.os.Parcelable.Creator<android.app.ambientcontext.AmbientContextEventRequest> CREATOR;
1671  }
1672
1673  public static final class AmbientContextEventRequest.Builder {
1674    ctor public AmbientContextEventRequest.Builder();
1675    method @NonNull public android.app.ambientcontext.AmbientContextEventRequest.Builder addEventType(int);
1676    method @NonNull public android.app.ambientcontext.AmbientContextEventRequest build();
1677    method @NonNull public android.app.ambientcontext.AmbientContextEventRequest.Builder setOptions(@NonNull android.os.PersistableBundle);
1678  }
1679
1680  public final class AmbientContextManager {
1681    method @NonNull public static java.util.List<android.app.ambientcontext.AmbientContextEvent> getEventsFromIntent(@NonNull android.content.Intent);
1682    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>);
1683    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>);
1684    method @RequiresPermission(android.Manifest.permission.ACCESS_AMBIENT_CONTEXT_EVENT) public void startConsentActivity(@NonNull java.util.Set<java.lang.Integer>);
1685    method @RequiresPermission(android.Manifest.permission.ACCESS_AMBIENT_CONTEXT_EVENT) public void unregisterObserver();
1686    field public static final String EXTRA_AMBIENT_CONTEXT_EVENTS = "android.app.ambientcontext.extra.AMBIENT_CONTEXT_EVENTS";
1687    field public static final int STATUS_ACCESS_DENIED = 5; // 0x5
1688    field public static final int STATUS_MICROPHONE_DISABLED = 4; // 0x4
1689    field public static final int STATUS_NOT_SUPPORTED = 2; // 0x2
1690    field public static final int STATUS_SERVICE_UNAVAILABLE = 3; // 0x3
1691    field public static final int STATUS_SUCCESS = 1; // 0x1
1692    field public static final int STATUS_UNKNOWN = 0; // 0x0
1693  }
1694
1695}
1696
1697package android.app.assist {
1698
1699  public final class ActivityId implements android.os.Parcelable {
1700    method public int describeContents();
1701    method public void writeToParcel(@NonNull android.os.Parcel, int);
1702    field @NonNull public static final android.os.Parcelable.Creator<android.app.assist.ActivityId> CREATOR;
1703  }
1704
1705  public static class AssistStructure.ViewNode {
1706    ctor public AssistStructure.ViewNode();
1707  }
1708
1709}
1710
1711package android.app.backup {
1712
1713  public class BackupDataInput {
1714    ctor public BackupDataInput(java.io.FileDescriptor);
1715  }
1716
1717  public class BackupDataOutput {
1718    ctor public BackupDataOutput(java.io.FileDescriptor);
1719    ctor public BackupDataOutput(java.io.FileDescriptor, long);
1720  }
1721
1722  public class BackupManager {
1723    method @RequiresPermission(android.Manifest.permission.BACKUP) public void backupNow();
1724    method @RequiresPermission(android.Manifest.permission.BACKUP) public android.app.backup.RestoreSession beginRestoreSession();
1725    method @RequiresPermission(android.Manifest.permission.BACKUP) public void cancelBackups();
1726    method @RequiresPermission(android.Manifest.permission.BACKUP) public void excludeKeysFromRestore(@NonNull String, @NonNull java.util.List<java.lang.String>);
1727    method @RequiresPermission(android.Manifest.permission.BACKUP) public long getAvailableRestoreToken(String);
1728    method @NonNull public android.app.backup.BackupRestoreEventLogger getBackupRestoreEventLogger(@NonNull android.app.backup.BackupAgent);
1729    method @RequiresPermission(android.Manifest.permission.BACKUP) public android.content.Intent getConfigurationIntent(String);
1730    method @RequiresPermission(android.Manifest.permission.BACKUP) public String getCurrentTransport();
1731    method @Nullable @RequiresPermission(android.Manifest.permission.BACKUP) public android.content.ComponentName getCurrentTransportComponent();
1732    method @RequiresPermission(android.Manifest.permission.BACKUP) public android.content.Intent getDataManagementIntent(String);
1733    method @Nullable @RequiresPermission(android.Manifest.permission.BACKUP) public CharSequence getDataManagementIntentLabel(@NonNull String);
1734    method @Deprecated @Nullable @RequiresPermission(android.Manifest.permission.BACKUP) public String getDataManagementLabel(@NonNull String);
1735    method @NonNull public android.app.backup.BackupRestoreEventLogger getDelayedRestoreLogger();
1736    method @RequiresPermission(android.Manifest.permission.BACKUP) public String getDestinationString(String);
1737    method @RequiresPermission(android.Manifest.permission.BACKUP) public boolean isAppEligibleForBackup(String);
1738    method @RequiresPermission(android.Manifest.permission.BACKUP) public boolean isBackupEnabled();
1739    method @RequiresPermission(android.Manifest.permission.BACKUP) public boolean isBackupServiceActive(android.os.UserHandle);
1740    method @RequiresPermission(android.Manifest.permission.BACKUP) public String[] listAllTransports();
1741    method public void reportDelayedRestoreResult(@NonNull android.app.backup.BackupRestoreEventLogger);
1742    method @RequiresPermission(android.Manifest.permission.BACKUP) public int requestBackup(String[], android.app.backup.BackupObserver);
1743    method @RequiresPermission(android.Manifest.permission.BACKUP) public int requestBackup(String[], android.app.backup.BackupObserver, android.app.backup.BackupManagerMonitor, int);
1744    method @Deprecated public int requestRestore(android.app.backup.RestoreObserver, android.app.backup.BackupManagerMonitor);
1745    method @Deprecated @RequiresPermission(android.Manifest.permission.BACKUP) public String selectBackupTransport(String);
1746    method @RequiresPermission(android.Manifest.permission.BACKUP) public void selectBackupTransport(android.content.ComponentName, android.app.backup.SelectBackupTransportCallback);
1747    method @RequiresPermission(android.Manifest.permission.BACKUP) public void setAncestralSerialNumber(long);
1748    method @RequiresPermission(android.Manifest.permission.BACKUP) public void setAutoRestore(boolean);
1749    method @RequiresPermission(android.Manifest.permission.BACKUP) public void setBackupEnabled(boolean);
1750    method @RequiresPermission(allOf={android.Manifest.permission.BACKUP, android.Manifest.permission.INTERACT_ACROSS_USERS_FULL}, conditional=true) public void setFrameworkSchedulingEnabled(boolean);
1751    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);
1752    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);
1753    field public static final int ERROR_AGENT_FAILURE = -1003; // 0xfffffc15
1754    field public static final int ERROR_BACKUP_CANCELLED = -2003; // 0xfffff82d
1755    field public static final int ERROR_BACKUP_NOT_ALLOWED = -2001; // 0xfffff82f
1756    field public static final int ERROR_PACKAGE_NOT_FOUND = -2002; // 0xfffff82e
1757    field public static final int ERROR_TRANSPORT_ABORTED = -1000; // 0xfffffc18
1758    field public static final int ERROR_TRANSPORT_INVALID = -2; // 0xfffffffe
1759    field public static final int ERROR_TRANSPORT_PACKAGE_REJECTED = -1002; // 0xfffffc16
1760    field public static final int ERROR_TRANSPORT_QUOTA_EXCEEDED = -1005; // 0xfffffc13
1761    field public static final int ERROR_TRANSPORT_UNAVAILABLE = -1; // 0xffffffff
1762    field public static final int FLAG_NON_INCREMENTAL_BACKUP = 1; // 0x1
1763    field public static final String PACKAGE_MANAGER_SENTINEL = "@pm@";
1764    field public static final int SUCCESS = 0; // 0x0
1765  }
1766
1767  public class BackupManagerMonitor {
1768    ctor public BackupManagerMonitor();
1769    method public void onEvent(android.os.Bundle);
1770    field public static final String EXTRA_LOG_AGENT_LOGGING_RESULTS = "android.app.backup.extra.LOG_AGENT_LOGGING_RESULTS";
1771    field public static final String EXTRA_LOG_CANCEL_ALL = "android.app.backup.extra.LOG_CANCEL_ALL";
1772    field public static final String EXTRA_LOG_EVENT_CATEGORY = "android.app.backup.extra.LOG_EVENT_CATEGORY";
1773    field public static final String EXTRA_LOG_EVENT_ID = "android.app.backup.extra.LOG_EVENT_ID";
1774    field public static final String EXTRA_LOG_EVENT_PACKAGE_LONG_VERSION = "android.app.backup.extra.LOG_EVENT_PACKAGE_FULL_VERSION";
1775    field public static final String EXTRA_LOG_EVENT_PACKAGE_NAME = "android.app.backup.extra.LOG_EVENT_PACKAGE_NAME";
1776    field @Deprecated public static final String EXTRA_LOG_EVENT_PACKAGE_VERSION = "android.app.backup.extra.LOG_EVENT_PACKAGE_VERSION";
1777    field public static final String EXTRA_LOG_EXCEPTION_FULL_BACKUP = "android.app.backup.extra.LOG_EXCEPTION_FULL_BACKUP";
1778    field public static final String EXTRA_LOG_ILLEGAL_KEY = "android.app.backup.extra.LOG_ILLEGAL_KEY";
1779    field public static final String EXTRA_LOG_MANIFEST_PACKAGE_NAME = "android.app.backup.extra.LOG_MANIFEST_PACKAGE_NAME";
1780    field public static final String EXTRA_LOG_OLD_VERSION = "android.app.backup.extra.LOG_OLD_VERSION";
1781    field public static final String EXTRA_LOG_POLICY_ALLOW_APKS = "android.app.backup.extra.LOG_POLICY_ALLOW_APKS";
1782    field public static final String EXTRA_LOG_PREFLIGHT_ERROR = "android.app.backup.extra.LOG_PREFLIGHT_ERROR";
1783    field public static final String EXTRA_LOG_RESTORE_ANYWAY = "android.app.backup.extra.LOG_RESTORE_ANYWAY";
1784    field public static final String EXTRA_LOG_RESTORE_VERSION = "android.app.backup.extra.LOG_RESTORE_VERSION";
1785    field public static final String EXTRA_LOG_WIDGET_PACKAGE_NAME = "android.app.backup.extra.LOG_WIDGET_PACKAGE_NAME";
1786    field public static final int LOG_EVENT_CATEGORY_AGENT = 2; // 0x2
1787    field public static final int LOG_EVENT_CATEGORY_BACKUP_MANAGER_POLICY = 3; // 0x3
1788    field public static final int LOG_EVENT_CATEGORY_TRANSPORT = 1; // 0x1
1789    field public static final int LOG_EVENT_ID_AGENT_LOGGING_RESULTS = 52; // 0x34
1790    field public static final int LOG_EVENT_ID_APK_NOT_INSTALLED = 40; // 0x28
1791    field public static final int LOG_EVENT_ID_APP_HAS_NO_AGENT = 28; // 0x1c
1792    field public static final int LOG_EVENT_ID_BACKUP_DISABLED = 13; // 0xd
1793    field public static final int LOG_EVENT_ID_CANNOT_RESTORE_WITHOUT_APK = 41; // 0x29
1794    field public static final int LOG_EVENT_ID_CANT_FIND_AGENT = 30; // 0x1e
1795    field public static final int LOG_EVENT_ID_CORRUPT_MANIFEST = 46; // 0x2e
1796    field public static final int LOG_EVENT_ID_DEVICE_NOT_PROVISIONED = 14; // 0xe
1797    field public static final int LOG_EVENT_ID_ERROR_PREFLIGHT = 16; // 0x10
1798    field public static final int LOG_EVENT_ID_EXCEPTION_FULL_BACKUP = 19; // 0x13
1799    field public static final int LOG_EVENT_ID_EXPECTED_DIFFERENT_PACKAGE = 43; // 0x2b
1800    field public static final int LOG_EVENT_ID_FULL_BACKUP_CANCEL = 4; // 0x4
1801    field public static final int LOG_EVENT_ID_FULL_RESTORE_ALLOW_BACKUP_FALSE = 39; // 0x27
1802    field public static final int LOG_EVENT_ID_FULL_RESTORE_SIGNATURE_MISMATCH = 37; // 0x25
1803    field public static final int LOG_EVENT_ID_FULL_RESTORE_TIMEOUT = 45; // 0x2d
1804    field public static final int LOG_EVENT_ID_ILLEGAL_KEY = 5; // 0x5
1805    field public static final int LOG_EVENT_ID_KEY_VALUE_BACKUP_CANCEL = 21; // 0x15
1806    field public static final int LOG_EVENT_ID_KEY_VALUE_RESTORE_TIMEOUT = 31; // 0x1f
1807    field public static final int LOG_EVENT_ID_LOST_TRANSPORT = 25; // 0x19
1808    field public static final int LOG_EVENT_ID_MISSING_SIGNATURE = 42; // 0x2a
1809    field public static final int LOG_EVENT_ID_NO_DATA_TO_SEND = 7; // 0x7
1810    field public static final int LOG_EVENT_ID_NO_PACKAGES = 49; // 0x31
1811    field public static final int LOG_EVENT_ID_NO_PM_METADATA_RECEIVED = 23; // 0x17
1812    field public static final int LOG_EVENT_ID_NO_RESTORE_METADATA_AVAILABLE = 22; // 0x16
1813    field public static final int LOG_EVENT_ID_PACKAGE_INELIGIBLE = 9; // 0x9
1814    field public static final int LOG_EVENT_ID_PACKAGE_KEY_VALUE_PARTICIPANT = 10; // 0xa
1815    field public static final int LOG_EVENT_ID_PACKAGE_NOT_FOUND = 12; // 0xc
1816    field public static final int LOG_EVENT_ID_PACKAGE_NOT_PRESENT = 26; // 0x1a
1817    field public static final int LOG_EVENT_ID_PACKAGE_STOPPED = 11; // 0xb
1818    field public static final int LOG_EVENT_ID_PACKAGE_TRANSPORT_NOT_PRESENT = 15; // 0xf
1819    field public static final int LOG_EVENT_ID_PM_AGENT_HAS_NO_METADATA = 24; // 0x18
1820    field public static final int LOG_EVENT_ID_QUOTA_HIT_PREFLIGHT = 18; // 0x12
1821    field public static final int LOG_EVENT_ID_RESTORE_ANY_VERSION = 34; // 0x22
1822    field public static final int LOG_EVENT_ID_RESTORE_VERSION_HIGHER = 27; // 0x1b
1823    field public static final int LOG_EVENT_ID_SIGNATURE_MISMATCH = 29; // 0x1d
1824    field public static final int LOG_EVENT_ID_SYSTEM_APP_NO_AGENT = 38; // 0x26
1825    field public static final int LOG_EVENT_ID_TRANSPORT_IS_NULL = 50; // 0x32
1826    field public static final int LOG_EVENT_ID_TRANSPORT_NON_INCREMENTAL_BACKUP_REQUIRED = 51; // 0x33
1827    field public static final int LOG_EVENT_ID_UNKNOWN_VERSION = 44; // 0x2c
1828    field public static final int LOG_EVENT_ID_VERSIONS_MATCH = 35; // 0x23
1829    field public static final int LOG_EVENT_ID_VERSION_OF_BACKUP_OLDER = 36; // 0x24
1830    field public static final int LOG_EVENT_ID_WIDGET_METADATA_MISMATCH = 47; // 0x2f
1831    field public static final int LOG_EVENT_ID_WIDGET_UNKNOWN_VERSION = 48; // 0x30
1832  }
1833
1834  public abstract class BackupObserver {
1835    ctor public BackupObserver();
1836    method public void backupFinished(int);
1837    method public void onResult(String, int);
1838    method public void onUpdate(String, android.app.backup.BackupProgress);
1839  }
1840
1841  public class BackupProgress implements android.os.Parcelable {
1842    ctor public BackupProgress(long, long);
1843    method public int describeContents();
1844    method public void writeToParcel(android.os.Parcel, int);
1845    field @NonNull public static final android.os.Parcelable.Creator<android.app.backup.BackupProgress> CREATOR;
1846    field public final long bytesExpected;
1847    field public final long bytesTransferred;
1848  }
1849
1850  public final class BackupRestoreEventLogger {
1851    method public void logBackupMetadata(@NonNull String, @NonNull String);
1852    method public void logItemsBackedUp(@NonNull String, int);
1853    method public void logItemsBackupFailed(@NonNull String, int, @Nullable String);
1854    method public void logItemsRestoreFailed(@NonNull String, int, @Nullable String);
1855    method public void logItemsRestored(@NonNull String, int);
1856    method public void logRestoreMetadata(@NonNull String, @NonNull String);
1857  }
1858
1859  public static final class BackupRestoreEventLogger.DataTypeResult implements android.os.Parcelable {
1860    ctor public BackupRestoreEventLogger.DataTypeResult(@NonNull String);
1861    method public int describeContents();
1862    method @NonNull public String getDataType();
1863    method @NonNull public java.util.Map<java.lang.String,java.lang.Integer> getErrors();
1864    method public int getFailCount();
1865    method @Nullable public byte[] getMetadataHash();
1866    method public int getSuccessCount();
1867    method public void writeToParcel(@NonNull android.os.Parcel, int);
1868    field @NonNull public static final android.os.Parcelable.Creator<android.app.backup.BackupRestoreEventLogger.DataTypeResult> CREATOR;
1869  }
1870
1871  public class BackupTransport {
1872    ctor public BackupTransport();
1873    method public int abortFullRestore();
1874    method public void cancelFullBackup();
1875    method public int checkFullBackupSize(long);
1876    method public int clearBackupData(android.content.pm.PackageInfo);
1877    method public android.content.Intent configurationIntent();
1878    method public String currentDestinationString();
1879    method public android.content.Intent dataManagementIntent();
1880    method @Nullable public CharSequence dataManagementIntentLabel();
1881    method @Deprecated @Nullable public String dataManagementLabel();
1882    method public int finishBackup();
1883    method public void finishRestore();
1884    method public android.app.backup.RestoreSet[] getAvailableRestoreSets();
1885    method @Nullable public android.app.backup.BackupManagerMonitor getBackupManagerMonitor();
1886    method public long getBackupQuota(String, boolean);
1887    method public android.os.IBinder getBinder();
1888    method public long getCurrentRestoreSet();
1889    method public int getNextFullRestoreDataChunk(android.os.ParcelFileDescriptor);
1890    method public int getRestoreData(android.os.ParcelFileDescriptor);
1891    method public int getTransportFlags();
1892    method public int initializeDevice();
1893    method public boolean isAppEligibleForBackup(android.content.pm.PackageInfo, boolean);
1894    method public String name();
1895    method public android.app.backup.RestoreDescription nextRestorePackage();
1896    method public int performBackup(android.content.pm.PackageInfo, android.os.ParcelFileDescriptor, int);
1897    method public int performBackup(android.content.pm.PackageInfo, android.os.ParcelFileDescriptor);
1898    method public int performFullBackup(android.content.pm.PackageInfo, android.os.ParcelFileDescriptor, int);
1899    method public int performFullBackup(android.content.pm.PackageInfo, android.os.ParcelFileDescriptor);
1900    method public long requestBackupTime();
1901    method public long requestFullBackupTime();
1902    method public int sendBackupData(int);
1903    method public int startRestore(long, android.content.pm.PackageInfo[]);
1904    method public String transportDirName();
1905    field public static final int AGENT_ERROR = -1003; // 0xfffffc15
1906    field public static final int AGENT_UNKNOWN = -1004; // 0xfffffc14
1907    field public static final String EXTRA_TRANSPORT_REGISTRATION = "android.app.backup.extra.TRANSPORT_REGISTRATION";
1908    field public static final int FLAG_DATA_NOT_CHANGED = 8; // 0x8
1909    field public static final int FLAG_INCREMENTAL = 2; // 0x2
1910    field public static final int FLAG_NON_INCREMENTAL = 4; // 0x4
1911    field public static final int FLAG_USER_INITIATED = 1; // 0x1
1912    field public static final int NO_MORE_DATA = -1; // 0xffffffff
1913    field public static final int TRANSPORT_ERROR = -1000; // 0xfffffc18
1914    field public static final int TRANSPORT_NON_INCREMENTAL_BACKUP_REQUIRED = -1006; // 0xfffffc12
1915    field public static final int TRANSPORT_NOT_INITIALIZED = -1001; // 0xfffffc17
1916    field public static final int TRANSPORT_OK = 0; // 0x0
1917    field public static final int TRANSPORT_PACKAGE_REJECTED = -1002; // 0xfffffc16
1918    field public static final int TRANSPORT_QUOTA_EXCEEDED = -1005; // 0xfffffc13
1919  }
1920
1921  public class RestoreDescription implements android.os.Parcelable {
1922    ctor public RestoreDescription(String, int);
1923    method public int describeContents();
1924    method public int getDataType();
1925    method public String getPackageName();
1926    method public void writeToParcel(android.os.Parcel, int);
1927    field @NonNull public static final android.os.Parcelable.Creator<android.app.backup.RestoreDescription> CREATOR;
1928    field public static final android.app.backup.RestoreDescription NO_MORE_PACKAGES;
1929    field public static final int TYPE_FULL_STREAM = 2; // 0x2
1930    field public static final int TYPE_KEY_VALUE = 1; // 0x1
1931  }
1932
1933  public abstract class RestoreObserver {
1934    method public void restoreSetsAvailable(android.app.backup.RestoreSet[]);
1935  }
1936
1937  public class RestoreSession {
1938    method public void endRestoreSession();
1939    method public int getAvailableRestoreSets(android.app.backup.RestoreObserver, android.app.backup.BackupManagerMonitor);
1940    method public int getAvailableRestoreSets(android.app.backup.RestoreObserver);
1941    method public int restoreAll(long, android.app.backup.RestoreObserver, android.app.backup.BackupManagerMonitor);
1942    method public int restoreAll(long, android.app.backup.RestoreObserver);
1943    method public int restorePackage(String, android.app.backup.RestoreObserver, android.app.backup.BackupManagerMonitor);
1944    method public int restorePackage(String, android.app.backup.RestoreObserver);
1945    method public int restorePackages(long, @Nullable android.app.backup.RestoreObserver, @NonNull java.util.Set<java.lang.String>, @Nullable android.app.backup.BackupManagerMonitor);
1946    method public int restorePackages(long, @Nullable android.app.backup.RestoreObserver, @NonNull java.util.Set<java.lang.String>);
1947  }
1948
1949  public class RestoreSet implements android.os.Parcelable {
1950    ctor public RestoreSet();
1951    ctor public RestoreSet(@Nullable String, @Nullable String, long);
1952    ctor public RestoreSet(@Nullable String, @Nullable String, long, int);
1953    method public int describeContents();
1954    method public void writeToParcel(android.os.Parcel, int);
1955    field @NonNull public static final android.os.Parcelable.Creator<android.app.backup.RestoreSet> CREATOR;
1956    field public final int backupTransportFlags;
1957    field @Nullable public String device;
1958    field @Nullable public String name;
1959    field public long token;
1960  }
1961
1962  public abstract class SelectBackupTransportCallback {
1963    ctor public SelectBackupTransportCallback();
1964    method public void onFailure(int);
1965    method public void onSuccess(String);
1966  }
1967
1968}
1969
1970package android.app.cloudsearch {
1971
1972  public class CloudSearchManager {
1973    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);
1974  }
1975
1976  public static interface CloudSearchManager.CallBack {
1977    method public void onSearchFailed(@NonNull android.app.cloudsearch.SearchRequest, @NonNull android.app.cloudsearch.SearchResponse);
1978    method public void onSearchSucceeded(@NonNull android.app.cloudsearch.SearchRequest, @NonNull android.app.cloudsearch.SearchResponse);
1979  }
1980
1981  public final class SearchRequest implements android.os.Parcelable {
1982    method public int describeContents();
1983    method @NonNull public String getCallerPackageName();
1984    method public float getMaxLatencyMillis();
1985    method @NonNull public String getQuery();
1986    method @NonNull public String getRequestId();
1987    method public int getResultNumber();
1988    method public int getResultOffset();
1989    method @NonNull public android.os.Bundle getSearchConstraints();
1990    method public void writeToParcel(@NonNull android.os.Parcel, int);
1991    field public static final String CONSTRAINT_IS_PRESUBMIT_SUGGESTION = "android.app.cloudsearch.IS_PRESUBMIT_SUGGESTION";
1992    field public static final String CONSTRAINT_SEARCH_PROVIDER_FILTER = "android.app.cloudsearch.SEARCH_PROVIDER_FILTER";
1993    field @NonNull public static final android.os.Parcelable.Creator<android.app.cloudsearch.SearchRequest> CREATOR;
1994  }
1995
1996  public static final class SearchRequest.Builder {
1997    ctor public SearchRequest.Builder(@NonNull String);
1998    method @NonNull public android.app.cloudsearch.SearchRequest build();
1999    method @NonNull public android.app.cloudsearch.SearchRequest.Builder setMaxLatencyMillis(float);
2000    method @NonNull public android.app.cloudsearch.SearchRequest.Builder setQuery(@NonNull String);
2001    method @NonNull public android.app.cloudsearch.SearchRequest.Builder setResultNumber(int);
2002    method @NonNull public android.app.cloudsearch.SearchRequest.Builder setResultOffset(int);
2003    method @NonNull public android.app.cloudsearch.SearchRequest.Builder setSearchConstraints(@Nullable android.os.Bundle);
2004  }
2005
2006  public final class SearchResponse implements android.os.Parcelable {
2007    method public int describeContents();
2008    method @NonNull public java.util.List<android.app.cloudsearch.SearchResult> getSearchResults();
2009    method @NonNull public String getSource();
2010    method public int getStatusCode();
2011    method public void writeToParcel(@NonNull android.os.Parcel, int);
2012    field @NonNull public static final android.os.Parcelable.Creator<android.app.cloudsearch.SearchResponse> CREATOR;
2013    field public static final int SEARCH_STATUS_NO_INTERNET = 2; // 0x2
2014    field public static final int SEARCH_STATUS_OK = 0; // 0x0
2015    field public static final int SEARCH_STATUS_TIME_OUT = 1; // 0x1
2016    field public static final int SEARCH_STATUS_UNKNOWN = -1; // 0xffffffff
2017  }
2018
2019  public static final class SearchResponse.Builder {
2020    ctor public SearchResponse.Builder(int);
2021    method @NonNull public android.app.cloudsearch.SearchResponse build();
2022    method @NonNull public android.app.cloudsearch.SearchResponse.Builder setSearchResults(@NonNull java.util.List<android.app.cloudsearch.SearchResult>);
2023    method @NonNull public android.app.cloudsearch.SearchResponse.Builder setStatusCode(int);
2024  }
2025
2026  public final class SearchResult implements android.os.Parcelable {
2027    method public int describeContents();
2028    method @NonNull public android.os.Bundle getExtraInfos();
2029    method public float getScore();
2030    method @NonNull public String getSnippet();
2031    method @NonNull public String getTitle();
2032    method public void writeToParcel(@NonNull android.os.Parcel, int);
2033    field @NonNull public static final android.os.Parcelable.Creator<android.app.cloudsearch.SearchResult> CREATOR;
2034    field public static final String EXTRAINFO_ACTION_APP_CARD = "android.app.cloudsearch.ACTION_APP_CARD";
2035    field public static final String EXTRAINFO_ACTION_BUTTON_IMAGE_PREREGISTERING = "android.app.cloudsearch.ACTION_BUTTON_IMAGE";
2036    field public static final String EXTRAINFO_ACTION_BUTTON_TEXT_PREREGISTERING = "android.app.cloudsearch.ACTION_BUTTON_TEXT";
2037    field public static final String EXTRAINFO_ACTION_INSTALL_BUTTON = "android.app.cloudsearch.ACTION_INSTALL_BUTTON";
2038    field public static final String EXTRAINFO_APP_BADGES = "android.app.cloudsearch.APP_BADGES";
2039    field public static final String EXTRAINFO_APP_CONTAINS_ADS_DISCLAIMER = "android.app.cloudsearch.APP_CONTAINS_ADS_DISCLAIMER";
2040    field public static final String EXTRAINFO_APP_CONTAINS_IAP_DISCLAIMER = "android.app.cloudsearch.APP_CONTAINS_IAP_DISCLAIMER";
2041    field public static final String EXTRAINFO_APP_DEVELOPER_NAME = "android.app.cloudsearch.APP_DEVELOPER_NAME";
2042    field public static final String EXTRAINFO_APP_DOMAIN_URL = "android.app.cloudsearch.APP_DOMAIN_URL";
2043    field public static final String EXTRAINFO_APP_IARC = "android.app.cloudsearch.APP_IARC";
2044    field public static final String EXTRAINFO_APP_ICON = "android.app.cloudsearch.APP_ICON";
2045    field public static final String EXTRAINFO_APP_INSTALL_COUNT = "android.app.cloudsearch.APP_INSTALL_COUNT";
2046    field public static final String EXTRAINFO_APP_PACKAGE_NAME = "android.app.cloudsearch.APP_PACKAGE_NAME";
2047    field public static final String EXTRAINFO_APP_REVIEW_COUNT = "android.app.cloudsearch.APP_REVIEW_COUNT";
2048    field public static final String EXTRAINFO_APP_SIZE_BYTES = "android.app.cloudsearch.APP_SIZE_BYTES";
2049    field public static final String EXTRAINFO_APP_STAR_RATING = "android.app.cloudsearch.APP_STAR_RATING";
2050    field public static final String EXTRAINFO_LONG_DESCRIPTION = "android.app.cloudsearch.LONG_DESCRIPTION";
2051    field public static final String EXTRAINFO_SCREENSHOTS = "android.app.cloudsearch.SCREENSHOTS";
2052    field public static final String EXTRAINFO_SHORT_DESCRIPTION = "android.app.cloudsearch.SHORT_DESCRIPTION";
2053    field public static final String EXTRAINFO_WEB_ICON = "android.app.cloudsearch.WEB_ICON";
2054    field public static final String EXTRAINFO_WEB_URL = "android.app.cloudsearch.WEB_URL";
2055  }
2056
2057  public static final class SearchResult.Builder {
2058    ctor public SearchResult.Builder(@NonNull String, @NonNull android.os.Bundle);
2059    method @NonNull public android.app.cloudsearch.SearchResult build();
2060    method @NonNull public android.app.cloudsearch.SearchResult.Builder setExtraInfos(@NonNull android.os.Bundle);
2061    method @NonNull public android.app.cloudsearch.SearchResult.Builder setScore(float);
2062    method @NonNull public android.app.cloudsearch.SearchResult.Builder setSnippet(@NonNull String);
2063    method @NonNull public android.app.cloudsearch.SearchResult.Builder setTitle(@NonNull String);
2064  }
2065
2066}
2067
2068package android.app.compat {
2069
2070  public final class CompatChanges {
2071    method public static boolean isChangeEnabled(long);
2072    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);
2073    method @RequiresPermission(allOf={"android.permission.READ_COMPAT_CHANGE_CONFIG", "android.permission.LOG_COMPAT_CHANGE"}) public static boolean isChangeEnabled(long, int);
2074    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>>);
2075    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>);
2076    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>>);
2077    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>);
2078  }
2079
2080  public final class PackageOverride {
2081    method public long getMaxVersionCode();
2082    method public long getMinVersionCode();
2083    method public boolean isEnabled();
2084  }
2085
2086  public static final class PackageOverride.Builder {
2087    ctor public PackageOverride.Builder();
2088    method @NonNull public android.app.compat.PackageOverride build();
2089    method @NonNull public android.app.compat.PackageOverride.Builder setEnabled(boolean);
2090    method @NonNull public android.app.compat.PackageOverride.Builder setMaxVersionCode(long);
2091    method @NonNull public android.app.compat.PackageOverride.Builder setMinVersionCode(long);
2092  }
2093
2094}
2095
2096package android.app.contentsuggestions {
2097
2098  public final class ClassificationsRequest implements android.os.Parcelable {
2099    method public int describeContents();
2100    method @NonNull public android.os.Bundle getExtras();
2101    method @NonNull public java.util.List<android.app.contentsuggestions.ContentSelection> getSelections();
2102    method public void writeToParcel(android.os.Parcel, int);
2103    field @NonNull public static final android.os.Parcelable.Creator<android.app.contentsuggestions.ClassificationsRequest> CREATOR;
2104  }
2105
2106  public static final class ClassificationsRequest.Builder {
2107    ctor public ClassificationsRequest.Builder(@NonNull java.util.List<android.app.contentsuggestions.ContentSelection>);
2108    method @NonNull public android.app.contentsuggestions.ClassificationsRequest build();
2109    method @NonNull public android.app.contentsuggestions.ClassificationsRequest.Builder setExtras(@NonNull android.os.Bundle);
2110  }
2111
2112  public final class ContentClassification implements android.os.Parcelable {
2113    ctor public ContentClassification(@NonNull String, @NonNull android.os.Bundle);
2114    method public int describeContents();
2115    method @NonNull public android.os.Bundle getExtras();
2116    method @NonNull public String getId();
2117    method public void writeToParcel(android.os.Parcel, int);
2118    field @NonNull public static final android.os.Parcelable.Creator<android.app.contentsuggestions.ContentClassification> CREATOR;
2119  }
2120
2121  public final class ContentSelection implements android.os.Parcelable {
2122    ctor public ContentSelection(@NonNull String, @NonNull android.os.Bundle);
2123    method public int describeContents();
2124    method @NonNull public android.os.Bundle getExtras();
2125    method @NonNull public String getId();
2126    method public void writeToParcel(android.os.Parcel, int);
2127    field @NonNull public static final android.os.Parcelable.Creator<android.app.contentsuggestions.ContentSelection> CREATOR;
2128  }
2129
2130  public final class ContentSuggestionsManager {
2131    method public void classifyContentSelections(@NonNull android.app.contentsuggestions.ClassificationsRequest, @NonNull java.util.concurrent.Executor, @NonNull android.app.contentsuggestions.ContentSuggestionsManager.ClassificationsCallback);
2132    method public boolean isEnabled();
2133    method public void notifyInteraction(@NonNull String, @NonNull android.os.Bundle);
2134    method public void provideContextImage(@NonNull android.graphics.Bitmap, @NonNull android.os.Bundle);
2135    method public void provideContextImage(int, @NonNull android.os.Bundle);
2136    method public void suggestContentSelections(@NonNull android.app.contentsuggestions.SelectionsRequest, @NonNull java.util.concurrent.Executor, @NonNull android.app.contentsuggestions.ContentSuggestionsManager.SelectionsCallback);
2137  }
2138
2139  public static interface ContentSuggestionsManager.ClassificationsCallback {
2140    method public void onContentClassificationsAvailable(int, @NonNull java.util.List<android.app.contentsuggestions.ContentClassification>);
2141  }
2142
2143  public static interface ContentSuggestionsManager.SelectionsCallback {
2144    method public void onContentSelectionsAvailable(int, @NonNull java.util.List<android.app.contentsuggestions.ContentSelection>);
2145  }
2146
2147  public final class SelectionsRequest implements android.os.Parcelable {
2148    method public int describeContents();
2149    method @NonNull public android.os.Bundle getExtras();
2150    method @Nullable public android.graphics.Point getInterestPoint();
2151    method public int getTaskId();
2152    method public void writeToParcel(android.os.Parcel, int);
2153    field @NonNull public static final android.os.Parcelable.Creator<android.app.contentsuggestions.SelectionsRequest> CREATOR;
2154  }
2155
2156  public static final class SelectionsRequest.Builder {
2157    ctor public SelectionsRequest.Builder(int);
2158    method @NonNull public android.app.contentsuggestions.SelectionsRequest build();
2159    method @NonNull public android.app.contentsuggestions.SelectionsRequest.Builder setExtras(@NonNull android.os.Bundle);
2160    method @NonNull public android.app.contentsuggestions.SelectionsRequest.Builder setInterestPoint(@NonNull android.graphics.Point);
2161  }
2162
2163}
2164
2165package android.app.contextualsearch {
2166
2167  public final class CallbackToken implements android.os.Parcelable {
2168    ctor public CallbackToken();
2169    method public int describeContents();
2170    method public void getContextualSearchState(@NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<android.app.contextualsearch.ContextualSearchState,java.lang.Throwable>);
2171    method public void writeToParcel(@NonNull android.os.Parcel, int);
2172    field @NonNull public static final android.os.Parcelable.Creator<android.app.contextualsearch.CallbackToken> CREATOR;
2173  }
2174
2175  public final class ContextualSearchManager {
2176    method @RequiresPermission(android.Manifest.permission.ACCESS_CONTEXTUAL_SEARCH) public void startContextualSearch(int);
2177    field public static final String ACTION_LAUNCH_CONTEXTUAL_SEARCH = "android.app.contextualsearch.action.LAUNCH_CONTEXTUAL_SEARCH";
2178    field public static final int ENTRYPOINT_LONG_PRESS_HOME = 2; // 0x2
2179    field public static final int ENTRYPOINT_LONG_PRESS_META = 10; // 0xa
2180    field public static final int ENTRYPOINT_LONG_PRESS_NAV_HANDLE = 1; // 0x1
2181    field public static final int ENTRYPOINT_LONG_PRESS_OVERVIEW = 3; // 0x3
2182    field public static final int ENTRYPOINT_OVERVIEW_ACTION = 4; // 0x4
2183    field public static final int ENTRYPOINT_OVERVIEW_MENU = 5; // 0x5
2184    field public static final int ENTRYPOINT_SYSTEM_ACTION = 9; // 0x9
2185    field public static final String EXTRA_ENTRYPOINT = "android.app.contextualsearch.extra.ENTRYPOINT";
2186    field public static final String EXTRA_FLAG_SECURE_FOUND = "android.app.contextualsearch.extra.FLAG_SECURE_FOUND";
2187    field public static final String EXTRA_IS_MANAGED_PROFILE_VISIBLE = "android.app.contextualsearch.extra.IS_MANAGED_PROFILE_VISIBLE";
2188    field public static final String EXTRA_SCREENSHOT = "android.app.contextualsearch.extra.SCREENSHOT";
2189    field public static final String EXTRA_TOKEN = "android.app.contextualsearch.extra.TOKEN";
2190    field public static final String EXTRA_VISIBLE_PACKAGE_NAMES = "android.app.contextualsearch.extra.VISIBLE_PACKAGE_NAMES";
2191  }
2192
2193  public final class ContextualSearchState implements android.os.Parcelable {
2194    ctor public ContextualSearchState(@Nullable android.app.assist.AssistStructure, @Nullable android.app.assist.AssistContent, @NonNull android.os.Bundle);
2195    method public int describeContents();
2196    method @Nullable public android.app.assist.AssistContent getContent();
2197    method @NonNull public android.os.Bundle getExtras();
2198    method @Nullable public android.app.assist.AssistStructure getStructure();
2199    method public void writeToParcel(@NonNull android.os.Parcel, int);
2200    field @NonNull public static final android.os.Parcelable.Creator<android.app.contextualsearch.ContextualSearchState> CREATOR;
2201  }
2202
2203}
2204
2205package android.app.job {
2206
2207  public abstract class JobScheduler {
2208    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public abstract int scheduleAsPackage(@NonNull android.app.job.JobInfo, @NonNull String, int, String);
2209  }
2210
2211  public class JobSchedulerFrameworkInitializer {
2212    method public static void registerServiceWrappers();
2213  }
2214
2215}
2216
2217package android.app.ondeviceintelligence {
2218
2219  public interface DownloadCallback {
2220    method public void onDownloadCompleted(@NonNull android.os.PersistableBundle);
2221    method public void onDownloadFailed(int, @Nullable String, @NonNull android.os.PersistableBundle);
2222    method public default void onDownloadProgress(long);
2223    method public default void onDownloadStarted(long);
2224    field public static final int DOWNLOAD_FAILURE_STATUS_DOWNLOADING = 3; // 0x3
2225    field public static final int DOWNLOAD_FAILURE_STATUS_NETWORK_FAILURE = 2; // 0x2
2226    field public static final int DOWNLOAD_FAILURE_STATUS_NOT_ENOUGH_DISK_SPACE = 1; // 0x1
2227    field public static final int DOWNLOAD_FAILURE_STATUS_UNAVAILABLE = 4; // 0x4
2228    field public static final int DOWNLOAD_FAILURE_STATUS_UNKNOWN = 0; // 0x0
2229  }
2230
2231  public final class Feature implements android.os.Parcelable {
2232    method public int describeContents();
2233    method @NonNull public android.os.PersistableBundle getFeatureParams();
2234    method public int getId();
2235    method @Nullable public String getModelName();
2236    method @Nullable public String getName();
2237    method public int getType();
2238    method public int getVariant();
2239    method public void writeToParcel(@NonNull android.os.Parcel, int);
2240    field @NonNull public static final android.os.Parcelable.Creator<android.app.ondeviceintelligence.Feature> CREATOR;
2241  }
2242
2243  public static final class Feature.Builder {
2244    ctor public Feature.Builder(int);
2245    method @NonNull public android.app.ondeviceintelligence.Feature build();
2246    method @NonNull public android.app.ondeviceintelligence.Feature.Builder setFeatureParams(@NonNull android.os.PersistableBundle);
2247    method @NonNull public android.app.ondeviceintelligence.Feature.Builder setModelName(@NonNull String);
2248    method @NonNull public android.app.ondeviceintelligence.Feature.Builder setName(@NonNull String);
2249    method @NonNull public android.app.ondeviceintelligence.Feature.Builder setType(int);
2250    method @NonNull public android.app.ondeviceintelligence.Feature.Builder setVariant(int);
2251  }
2252
2253  public final class FeatureDetails implements android.os.Parcelable {
2254    ctor public FeatureDetails(int, @NonNull android.os.PersistableBundle);
2255    ctor public FeatureDetails(int);
2256    method public int describeContents();
2257    method @NonNull public android.os.PersistableBundle getFeatureDetailParams();
2258    method public int getFeatureStatus();
2259    method public void writeToParcel(@NonNull android.os.Parcel, int);
2260    field @NonNull public static final android.os.Parcelable.Creator<android.app.ondeviceintelligence.FeatureDetails> CREATOR;
2261    field public static final int FEATURE_STATUS_AVAILABLE = 3; // 0x3
2262    field public static final int FEATURE_STATUS_DOWNLOADABLE = 1; // 0x1
2263    field public static final int FEATURE_STATUS_DOWNLOADING = 2; // 0x2
2264    field public static final int FEATURE_STATUS_SERVICE_UNAVAILABLE = 4; // 0x4
2265    field public static final int FEATURE_STATUS_UNAVAILABLE = 0; // 0x0
2266  }
2267
2268  public class OnDeviceIntelligenceException extends java.lang.Exception {
2269    ctor public OnDeviceIntelligenceException(int, @NonNull String, @NonNull android.os.PersistableBundle);
2270    ctor public OnDeviceIntelligenceException(int, @NonNull android.os.PersistableBundle);
2271    ctor public OnDeviceIntelligenceException(int, @NonNull String);
2272    ctor public OnDeviceIntelligenceException(int);
2273    method public int getErrorCode();
2274    method @NonNull public android.os.PersistableBundle getErrorParams();
2275    field public static final int ON_DEVICE_INTELLIGENCE_SERVICE_UNAVAILABLE = 100; // 0x64
2276    field public static final int PROCESSING_ERROR_BAD_DATA = 2; // 0x2
2277    field public static final int PROCESSING_ERROR_BAD_REQUEST = 3; // 0x3
2278    field public static final int PROCESSING_ERROR_BUSY = 9; // 0x9
2279    field public static final int PROCESSING_ERROR_CANCELLED = 7; // 0x7
2280    field public static final int PROCESSING_ERROR_COMPUTE_ERROR = 5; // 0x5
2281    field public static final int PROCESSING_ERROR_INTERNAL = 14; // 0xe
2282    field public static final int PROCESSING_ERROR_IPC_ERROR = 6; // 0x6
2283    field public static final int PROCESSING_ERROR_NOT_AVAILABLE = 8; // 0x8
2284    field public static final int PROCESSING_ERROR_REQUEST_NOT_SAFE = 4; // 0x4
2285    field public static final int PROCESSING_ERROR_REQUEST_TOO_LARGE = 12; // 0xc
2286    field public static final int PROCESSING_ERROR_RESPONSE_NOT_SAFE = 11; // 0xb
2287    field public static final int PROCESSING_ERROR_SAFETY_ERROR = 10; // 0xa
2288    field public static final int PROCESSING_ERROR_SERVICE_UNAVAILABLE = 15; // 0xf
2289    field public static final int PROCESSING_ERROR_SUSPENDED = 13; // 0xd
2290    field public static final int PROCESSING_ERROR_UNKNOWN = 1; // 0x1
2291    field public static final int PROCESSING_UPDATE_STATUS_CONNECTION_FAILED = 200; // 0xc8
2292  }
2293
2294  public final class OnDeviceIntelligenceManager {
2295    method @RequiresPermission(android.Manifest.permission.USE_ON_DEVICE_INTELLIGENCE) public void getFeature(int, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<android.app.ondeviceintelligence.Feature,android.app.ondeviceintelligence.OnDeviceIntelligenceException>);
2296    method @RequiresPermission(android.Manifest.permission.USE_ON_DEVICE_INTELLIGENCE) public void getFeatureDetails(@NonNull android.app.ondeviceintelligence.Feature, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<android.app.ondeviceintelligence.FeatureDetails,android.app.ondeviceintelligence.OnDeviceIntelligenceException>);
2297    method @Nullable @RequiresPermission(android.Manifest.permission.USE_ON_DEVICE_INTELLIGENCE) public String getRemoteServicePackageName();
2298    method @RequiresPermission(android.Manifest.permission.USE_ON_DEVICE_INTELLIGENCE) public void getVersion(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.LongConsumer);
2299    method @RequiresPermission(android.Manifest.permission.USE_ON_DEVICE_INTELLIGENCE) public void listFeatures(@NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<java.util.List<android.app.ondeviceintelligence.Feature>,android.app.ondeviceintelligence.OnDeviceIntelligenceException>);
2300    method @RequiresPermission(android.Manifest.permission.USE_ON_DEVICE_INTELLIGENCE) public void processRequest(@NonNull android.app.ondeviceintelligence.Feature, @NonNull android.os.Bundle, int, @Nullable android.os.CancellationSignal, @Nullable android.app.ondeviceintelligence.ProcessingSignal, @NonNull java.util.concurrent.Executor, @NonNull android.app.ondeviceintelligence.ProcessingCallback);
2301    method @RequiresPermission(android.Manifest.permission.USE_ON_DEVICE_INTELLIGENCE) public void processRequestStreaming(@NonNull android.app.ondeviceintelligence.Feature, @NonNull android.os.Bundle, int, @Nullable android.os.CancellationSignal, @Nullable android.app.ondeviceintelligence.ProcessingSignal, @NonNull java.util.concurrent.Executor, @NonNull android.app.ondeviceintelligence.StreamingProcessingCallback);
2302    method @RequiresPermission(android.Manifest.permission.USE_ON_DEVICE_INTELLIGENCE) public void requestFeatureDownload(@NonNull android.app.ondeviceintelligence.Feature, @Nullable android.os.CancellationSignal, @NonNull java.util.concurrent.Executor, @NonNull android.app.ondeviceintelligence.DownloadCallback);
2303    method @RequiresPermission(android.Manifest.permission.USE_ON_DEVICE_INTELLIGENCE) public void requestTokenInfo(@NonNull android.app.ondeviceintelligence.Feature, @NonNull android.os.Bundle, @Nullable android.os.CancellationSignal, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<android.app.ondeviceintelligence.TokenInfo,android.app.ondeviceintelligence.OnDeviceIntelligenceException>);
2304    field public static final int REQUEST_TYPE_EMBEDDINGS = 2; // 0x2
2305    field public static final int REQUEST_TYPE_INFERENCE = 0; // 0x0
2306    field public static final int REQUEST_TYPE_PREPARE = 1; // 0x1
2307  }
2308
2309  public interface ProcessingCallback {
2310    method public default void onDataAugmentRequest(@NonNull android.os.Bundle, @NonNull java.util.function.Consumer<android.os.Bundle>);
2311    method public void onError(@NonNull android.app.ondeviceintelligence.OnDeviceIntelligenceException);
2312    method public void onResult(@NonNull android.os.Bundle);
2313  }
2314
2315  public final class ProcessingSignal {
2316    ctor public ProcessingSignal();
2317    method public void sendSignal(@NonNull android.os.PersistableBundle);
2318    method public void setOnProcessingSignalCallback(@NonNull java.util.concurrent.Executor, @Nullable android.app.ondeviceintelligence.ProcessingSignal.OnProcessingSignalCallback);
2319  }
2320
2321  public static interface ProcessingSignal.OnProcessingSignalCallback {
2322    method public void onSignalReceived(@NonNull android.os.PersistableBundle);
2323  }
2324
2325  public interface StreamingProcessingCallback extends android.app.ondeviceintelligence.ProcessingCallback {
2326    method public void onPartialResult(@NonNull android.os.Bundle);
2327  }
2328
2329  public final class TokenInfo implements android.os.Parcelable {
2330    ctor public TokenInfo(long, @NonNull android.os.PersistableBundle);
2331    ctor public TokenInfo(long);
2332    method public int describeContents();
2333    method public long getCount();
2334    method @NonNull public android.os.PersistableBundle getInfoParams();
2335    method public void writeToParcel(@NonNull android.os.Parcel, int);
2336    field @NonNull public static final android.os.Parcelable.Creator<android.app.ondeviceintelligence.TokenInfo> CREATOR;
2337  }
2338
2339}
2340
2341package android.app.people {
2342
2343  public final class PeopleManager {
2344    method @RequiresPermission(android.Manifest.permission.READ_PEOPLE_DATA) public boolean isConversation(@NonNull String, @NonNull String);
2345  }
2346
2347}
2348
2349package android.app.prediction {
2350
2351  public final class AppPredictionContext implements android.os.Parcelable {
2352    method public int describeContents();
2353    method @Nullable public android.os.Bundle getExtras();
2354    method @NonNull public String getPackageName();
2355    method @IntRange(from=0) public int getPredictedTargetCount();
2356    method @NonNull public String getUiSurface();
2357    method public void writeToParcel(@NonNull android.os.Parcel, int);
2358    field @NonNull public static final android.os.Parcelable.Creator<android.app.prediction.AppPredictionContext> CREATOR;
2359  }
2360
2361  public static final class AppPredictionContext.Builder {
2362    ctor public AppPredictionContext.Builder(@NonNull android.content.Context);
2363    method @NonNull public android.app.prediction.AppPredictionContext build();
2364    method @NonNull public android.app.prediction.AppPredictionContext.Builder setExtras(@Nullable android.os.Bundle);
2365    method @NonNull public android.app.prediction.AppPredictionContext.Builder setPredictedTargetCount(@IntRange(from=0) int);
2366    method @NonNull public android.app.prediction.AppPredictionContext.Builder setUiSurface(@NonNull String);
2367  }
2368
2369  public final class AppPredictionManager {
2370    method @NonNull public android.app.prediction.AppPredictor createAppPredictionSession(@NonNull android.app.prediction.AppPredictionContext);
2371  }
2372
2373  public final class AppPredictionSessionId implements android.os.Parcelable {
2374    method public int describeContents();
2375    method public void writeToParcel(android.os.Parcel, int);
2376    field @NonNull public static final android.os.Parcelable.Creator<android.app.prediction.AppPredictionSessionId> CREATOR;
2377  }
2378
2379  public final class AppPredictor {
2380    method public void destroy();
2381    method public void notifyAppTargetEvent(@NonNull android.app.prediction.AppTargetEvent);
2382    method public void notifyLaunchLocationShown(@NonNull String, @NonNull java.util.List<android.app.prediction.AppTargetId>);
2383    method public void registerPredictionUpdates(@NonNull java.util.concurrent.Executor, @NonNull android.app.prediction.AppPredictor.Callback);
2384    method public void requestPredictionUpdate();
2385    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>>);
2386    method public void unregisterPredictionUpdates(@NonNull android.app.prediction.AppPredictor.Callback);
2387  }
2388
2389  public static interface AppPredictor.Callback {
2390    method public void onTargetsAvailable(@NonNull java.util.List<android.app.prediction.AppTarget>);
2391  }
2392
2393  public final class AppTarget implements android.os.Parcelable {
2394    method public int describeContents();
2395    method @Nullable public String getClassName();
2396    method @NonNull public android.app.prediction.AppTargetId getId();
2397    method @NonNull public String getPackageName();
2398    method @IntRange(from=0) public int getRank();
2399    method @Nullable public android.content.pm.ShortcutInfo getShortcutInfo();
2400    method @NonNull public android.os.UserHandle getUser();
2401    method public void writeToParcel(android.os.Parcel, int);
2402    field @NonNull public static final android.os.Parcelable.Creator<android.app.prediction.AppTarget> CREATOR;
2403  }
2404
2405  public static final class AppTarget.Builder {
2406    ctor public AppTarget.Builder(@NonNull android.app.prediction.AppTargetId, @NonNull String, @NonNull android.os.UserHandle);
2407    ctor public AppTarget.Builder(@NonNull android.app.prediction.AppTargetId, @NonNull android.content.pm.ShortcutInfo);
2408    method @NonNull public android.app.prediction.AppTarget build();
2409    method @NonNull public android.app.prediction.AppTarget.Builder setClassName(@NonNull String);
2410    method @NonNull public android.app.prediction.AppTarget.Builder setRank(@IntRange(from=0) int);
2411  }
2412
2413  public final class AppTargetEvent implements android.os.Parcelable {
2414    method public int describeContents();
2415    method public int getAction();
2416    method @Nullable public String getLaunchLocation();
2417    method @Nullable public android.app.prediction.AppTarget getTarget();
2418    method public void writeToParcel(android.os.Parcel, int);
2419    field public static final int ACTION_DISMISS = 2; // 0x2
2420    field public static final int ACTION_LAUNCH = 1; // 0x1
2421    field public static final int ACTION_PIN = 3; // 0x3
2422    field public static final int ACTION_UNDISMISS = 5; // 0x5
2423    field public static final int ACTION_UNPIN = 4; // 0x4
2424    field @NonNull public static final android.os.Parcelable.Creator<android.app.prediction.AppTargetEvent> CREATOR;
2425  }
2426
2427  public static final class AppTargetEvent.Builder {
2428    ctor public AppTargetEvent.Builder(@Nullable android.app.prediction.AppTarget, int);
2429    method @NonNull public android.app.prediction.AppTargetEvent build();
2430    method @NonNull public android.app.prediction.AppTargetEvent.Builder setLaunchLocation(@Nullable String);
2431  }
2432
2433  public final class AppTargetId implements android.os.Parcelable {
2434    ctor public AppTargetId(@NonNull String);
2435    method public int describeContents();
2436    method public void writeToParcel(android.os.Parcel, int);
2437    field @NonNull public static final android.os.Parcelable.Creator<android.app.prediction.AppTargetId> CREATOR;
2438  }
2439
2440}
2441
2442package android.app.search {
2443
2444  public final class Query implements android.os.Parcelable {
2445    ctor public Query(@NonNull String, long, @NonNull android.os.Bundle);
2446    ctor public Query(@NonNull String, long);
2447    method public int describeContents();
2448    method @NonNull public android.os.Bundle getExtras();
2449    method @NonNull public String getInput();
2450    method public long getTimestampMillis();
2451    method public void writeToParcel(@NonNull android.os.Parcel, int);
2452    field @NonNull public static final android.os.Parcelable.Creator<android.app.search.Query> CREATOR;
2453    field public static final String EXTRA_IME_HEIGHT = "android.app.search.extra.IME_HEIGHT";
2454  }
2455
2456  public final class SearchAction implements android.os.Parcelable {
2457    method public int describeContents();
2458    method @Nullable public CharSequence getContentDescription();
2459    method @Nullable public android.os.Bundle getExtras();
2460    method @Nullable public android.graphics.drawable.Icon getIcon();
2461    method @NonNull public String getId();
2462    method @Nullable public android.content.Intent getIntent();
2463    method @Nullable public android.app.PendingIntent getPendingIntent();
2464    method @Nullable public CharSequence getSubtitle();
2465    method @NonNull public CharSequence getTitle();
2466    method @Nullable public android.os.UserHandle getUserHandle();
2467    method public void writeToParcel(@NonNull android.os.Parcel, int);
2468    field @NonNull public static final android.os.Parcelable.Creator<android.app.search.SearchAction> CREATOR;
2469  }
2470
2471  public static final class SearchAction.Builder {
2472    ctor public SearchAction.Builder(@NonNull String, @NonNull String);
2473    method @NonNull public android.app.search.SearchAction build();
2474    method @NonNull public android.app.search.SearchAction.Builder setContentDescription(@Nullable CharSequence);
2475    method @NonNull public android.app.search.SearchAction.Builder setExtras(@Nullable android.os.Bundle);
2476    method @NonNull public android.app.search.SearchAction.Builder setIcon(@Nullable android.graphics.drawable.Icon);
2477    method @NonNull public android.app.search.SearchAction.Builder setIntent(@Nullable android.content.Intent);
2478    method @NonNull public android.app.search.SearchAction.Builder setPendingIntent(@Nullable android.app.PendingIntent);
2479    method @NonNull public android.app.search.SearchAction.Builder setSubtitle(@Nullable CharSequence);
2480    method @NonNull public android.app.search.SearchAction.Builder setUserHandle(@Nullable android.os.UserHandle);
2481  }
2482
2483  public final class SearchContext implements android.os.Parcelable {
2484    ctor public SearchContext(int, int);
2485    ctor public SearchContext(int, int, @NonNull android.os.Bundle);
2486    method public int describeContents();
2487    method @NonNull public android.os.Bundle getExtras();
2488    method @Nullable public String getPackageName();
2489    method @NonNull public int getResultTypes();
2490    method @NonNull public int getTimeoutMillis();
2491    method public void writeToParcel(@NonNull android.os.Parcel, int);
2492    field @NonNull public static final android.os.Parcelable.Creator<android.app.search.SearchContext> CREATOR;
2493  }
2494
2495  public final class SearchSession implements java.lang.AutoCloseable {
2496    method public void close();
2497    method protected void finalize();
2498    method public void notifyEvent(@NonNull android.app.search.Query, @NonNull android.app.search.SearchTargetEvent);
2499    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>>);
2500    method public void registerEmptyQueryResultUpdateCallback(@NonNull java.util.concurrent.Executor, @NonNull android.app.search.SearchSession.Callback);
2501    method public void unregisterEmptyQueryResultUpdateCallback(@NonNull android.app.search.SearchSession.Callback);
2502  }
2503
2504  public static interface SearchSession.Callback {
2505    method public void onTargetsAvailable(@NonNull java.util.List<android.app.search.SearchTarget>);
2506  }
2507
2508  public final class SearchSessionId implements android.os.Parcelable {
2509    method public int describeContents();
2510    method public void writeToParcel(@NonNull android.os.Parcel, int);
2511    field @NonNull public static final android.os.Parcelable.Creator<android.app.search.SearchSessionId> CREATOR;
2512  }
2513
2514  public final class SearchTarget implements android.os.Parcelable {
2515    method public int describeContents();
2516    method @Nullable public android.appwidget.AppWidgetProviderInfo getAppWidgetProviderInfo();
2517    method @NonNull public android.os.Bundle getExtras();
2518    method @NonNull public String getId();
2519    method @NonNull public String getLayoutType();
2520    method @NonNull public String getPackageName();
2521    method @NonNull public String getParentId();
2522    method public int getResultType();
2523    method public float getScore();
2524    method @Nullable public android.app.search.SearchAction getSearchAction();
2525    method @Nullable public android.content.pm.ShortcutInfo getShortcutInfo();
2526    method @Nullable public android.net.Uri getSliceUri();
2527    method @NonNull public android.os.UserHandle getUserHandle();
2528    method public boolean isHidden();
2529    method public void writeToParcel(@NonNull android.os.Parcel, int);
2530    field @NonNull public static final android.os.Parcelable.Creator<android.app.search.SearchTarget> CREATOR;
2531    field public static final String LAYOUT_TYPE_ICON = "icon";
2532    field public static final String LAYOUT_TYPE_ICON_ROW = "icon_row";
2533    field public static final String LAYOUT_TYPE_SHORT_ICON_ROW = "short_icon_row";
2534    field public static final int RESULT_TYPE_APPLICATION = 1; // 0x1
2535    field public static final int RESULT_TYPE_SHORTCUT = 2; // 0x2
2536    field public static final int RESULT_TYPE_SLICE = 4; // 0x4
2537    field public static final int RESULT_TYPE_WIDGETS = 8; // 0x8
2538  }
2539
2540  public static final class SearchTarget.Builder {
2541    ctor public SearchTarget.Builder(int, @NonNull String, @NonNull String);
2542    method @NonNull public android.app.search.SearchTarget build();
2543    method @NonNull public android.app.search.SearchTarget.Builder setAppWidgetProviderInfo(@NonNull android.appwidget.AppWidgetProviderInfo);
2544    method @NonNull public android.app.search.SearchTarget.Builder setExtras(@NonNull android.os.Bundle);
2545    method @NonNull public android.app.search.SearchTarget.Builder setHidden(boolean);
2546    method @NonNull public android.app.search.SearchTarget.Builder setPackageName(@NonNull String);
2547    method @NonNull public android.app.search.SearchTarget.Builder setParentId(@NonNull String);
2548    method @NonNull public android.app.search.SearchTarget.Builder setScore(@FloatRange(from=0.0f, to=1.0f) float);
2549    method @NonNull public android.app.search.SearchTarget.Builder setSearchAction(@Nullable android.app.search.SearchAction);
2550    method @NonNull public android.app.search.SearchTarget.Builder setShortcutInfo(@NonNull android.content.pm.ShortcutInfo);
2551    method @NonNull public android.app.search.SearchTarget.Builder setSliceUri(@NonNull android.net.Uri);
2552    method @NonNull public android.app.search.SearchTarget.Builder setUserHandle(@NonNull android.os.UserHandle);
2553  }
2554
2555  public final class SearchTargetEvent implements android.os.Parcelable {
2556    method public int describeContents();
2557    method public int getAction();
2558    method public int getFlags();
2559    method @Nullable public String getLaunchLocation();
2560    method @NonNull public String getTargetId();
2561    method @NonNull public java.util.List<java.lang.String> getTargetIds();
2562    method public void writeToParcel(@NonNull android.os.Parcel, int);
2563    field public static final int ACTION_DELETE = 9; // 0x9
2564    field public static final int ACTION_DISMISS = 10; // 0xa
2565    field public static final int ACTION_DRAGNDROP = 7; // 0x7
2566    field public static final int ACTION_LAUNCH_KEYBOARD_FOCUS = 6; // 0x6
2567    field public static final int ACTION_LAUNCH_TOUCH = 5; // 0x5
2568    field public static final int ACTION_LONGPRESS = 4; // 0x4
2569    field public static final int ACTION_SURFACE_INVISIBLE = 8; // 0x8
2570    field public static final int ACTION_SURFACE_VISIBLE = 1; // 0x1
2571    field public static final int ACTION_TAP = 3; // 0x3
2572    field @NonNull public static final android.os.Parcelable.Creator<android.app.search.SearchTargetEvent> CREATOR;
2573    field public static final int FLAG_IME_SHOWN = 1; // 0x1
2574  }
2575
2576  public static final class SearchTargetEvent.Builder {
2577    ctor public SearchTargetEvent.Builder(@NonNull String, int);
2578    ctor public SearchTargetEvent.Builder(@NonNull java.util.List<java.lang.String>, int);
2579    method @NonNull public android.app.search.SearchTargetEvent build();
2580    method @NonNull public android.app.search.SearchTargetEvent.Builder setFlags(int);
2581    method @NonNull public android.app.search.SearchTargetEvent.Builder setLaunchLocation(@Nullable String);
2582  }
2583
2584  public final class SearchUiManager {
2585    method @NonNull public android.app.search.SearchSession createSearchSession(@NonNull android.app.search.SearchContext);
2586  }
2587
2588}
2589
2590package android.app.smartspace {
2591
2592  public final class SmartspaceAction implements android.os.Parcelable {
2593    method public int describeContents();
2594    method @Nullable public CharSequence getContentDescription();
2595    method @Nullable public android.os.Bundle getExtras();
2596    method @Nullable public android.graphics.drawable.Icon getIcon();
2597    method @NonNull public String getId();
2598    method @Nullable public android.content.Intent getIntent();
2599    method @Nullable public android.app.PendingIntent getPendingIntent();
2600    method @Nullable public CharSequence getSubtitle();
2601    method @NonNull public CharSequence getTitle();
2602    method @Nullable public android.os.UserHandle getUserHandle();
2603    method public void writeToParcel(@NonNull android.os.Parcel, int);
2604    field @NonNull public static final android.os.Parcelable.Creator<android.app.smartspace.SmartspaceAction> CREATOR;
2605  }
2606
2607  public static final class SmartspaceAction.Builder {
2608    ctor public SmartspaceAction.Builder(@NonNull String, @NonNull String);
2609    method @NonNull public android.app.smartspace.SmartspaceAction build();
2610    method @NonNull public android.app.smartspace.SmartspaceAction.Builder setContentDescription(@Nullable CharSequence);
2611    method @NonNull public android.app.smartspace.SmartspaceAction.Builder setExtras(@Nullable android.os.Bundle);
2612    method @NonNull public android.app.smartspace.SmartspaceAction.Builder setIcon(@Nullable android.graphics.drawable.Icon);
2613    method @NonNull public android.app.smartspace.SmartspaceAction.Builder setIntent(@Nullable android.content.Intent);
2614    method @NonNull public android.app.smartspace.SmartspaceAction.Builder setPendingIntent(@Nullable android.app.PendingIntent);
2615    method @NonNull public android.app.smartspace.SmartspaceAction.Builder setSubtitle(@Nullable CharSequence);
2616    method @NonNull public android.app.smartspace.SmartspaceAction.Builder setUserHandle(@Nullable android.os.UserHandle);
2617  }
2618
2619  public final class SmartspaceConfig implements android.os.Parcelable {
2620    method public int describeContents();
2621    method @Nullable public android.os.Bundle getExtras();
2622    method @NonNull public String getPackageName();
2623    method @NonNull public int getSmartspaceTargetCount();
2624    method @NonNull public String getUiSurface();
2625    method public void writeToParcel(@NonNull android.os.Parcel, int);
2626    field @NonNull public static final android.os.Parcelable.Creator<android.app.smartspace.SmartspaceConfig> CREATOR;
2627  }
2628
2629  public static final class SmartspaceConfig.Builder {
2630    ctor public SmartspaceConfig.Builder(@NonNull android.content.Context, @NonNull String);
2631    method @NonNull public android.app.smartspace.SmartspaceConfig build();
2632    method @NonNull public android.app.smartspace.SmartspaceConfig.Builder setExtras(@NonNull android.os.Bundle);
2633    method @NonNull public android.app.smartspace.SmartspaceConfig.Builder setSmartspaceTargetCount(@IntRange(from=0, to=50) int);
2634  }
2635
2636  public final class SmartspaceManager {
2637    method @NonNull public android.app.smartspace.SmartspaceSession createSmartspaceSession(@NonNull android.app.smartspace.SmartspaceConfig);
2638  }
2639
2640  public final class SmartspaceSession implements java.lang.AutoCloseable {
2641    method public void addOnTargetsAvailableListener(@NonNull java.util.concurrent.Executor, @NonNull android.app.smartspace.SmartspaceSession.OnTargetsAvailableListener);
2642    method public void close();
2643    method protected void finalize();
2644    method public void notifySmartspaceEvent(@NonNull android.app.smartspace.SmartspaceTargetEvent);
2645    method public void removeOnTargetsAvailableListener(@NonNull android.app.smartspace.SmartspaceSession.OnTargetsAvailableListener);
2646    method public void requestSmartspaceUpdate();
2647  }
2648
2649  public static interface SmartspaceSession.OnTargetsAvailableListener {
2650    method public void onTargetsAvailable(@NonNull java.util.List<android.app.smartspace.SmartspaceTarget>);
2651  }
2652
2653  public final class SmartspaceSessionId implements android.os.Parcelable {
2654    method public int describeContents();
2655    method @Nullable public String getId();
2656    method @NonNull public android.os.UserHandle getUserHandle();
2657    method public void writeToParcel(@NonNull android.os.Parcel, int);
2658    field @NonNull public static final android.os.Parcelable.Creator<android.app.smartspace.SmartspaceSessionId> CREATOR;
2659  }
2660
2661  public final class SmartspaceTarget implements android.os.Parcelable {
2662    method public int describeContents();
2663    method @NonNull public java.util.List<android.app.smartspace.SmartspaceAction> getActionChips();
2664    method @Nullable public String getAssociatedSmartspaceTargetId();
2665    method @Nullable public android.app.smartspace.SmartspaceAction getBaseAction();
2666    method @NonNull public android.content.ComponentName getComponentName();
2667    method public long getCreationTimeMillis();
2668    method public long getExpiryTimeMillis();
2669    method public int getFeatureType();
2670    method @Nullable public android.app.smartspace.SmartspaceAction getHeaderAction();
2671    method @NonNull public java.util.List<android.app.smartspace.SmartspaceAction> getIconGrid();
2672    method @Nullable public android.widget.RemoteViews getRemoteViews();
2673    method public float getScore();
2674    method @Nullable public android.net.Uri getSliceUri();
2675    method @NonNull public String getSmartspaceTargetId();
2676    method @Nullable public String getSourceNotificationKey();
2677    method @Nullable public android.app.smartspace.uitemplatedata.BaseTemplateData getTemplateData();
2678    method @NonNull public android.os.UserHandle getUserHandle();
2679    method @Nullable public android.appwidget.AppWidgetProviderInfo getWidget();
2680    method public boolean isSensitive();
2681    method public boolean shouldShowExpanded();
2682    method public void writeToParcel(@NonNull android.os.Parcel, int);
2683    field @NonNull public static final android.os.Parcelable.Creator<android.app.smartspace.SmartspaceTarget> CREATOR;
2684    field public static final int FEATURE_ALARM = 7; // 0x7
2685    field public static final int FEATURE_BEDTIME_ROUTINE = 16; // 0x10
2686    field public static final int FEATURE_BLAZE_BUILD_PROGRESS = 40; // 0x28
2687    field public static final int FEATURE_CALENDAR = 2; // 0x2
2688    field public static final int FEATURE_COMMUTE_TIME = 3; // 0x3
2689    field public static final int FEATURE_CONSENT = 11; // 0xb
2690    field public static final int FEATURE_CROSS_DEVICE_TIMER = 32; // 0x20
2691    field public static final int FEATURE_DOORBELL = 30; // 0x1e
2692    field public static final int FEATURE_DRIVING_MODE = 26; // 0x1a
2693    field public static final int FEATURE_EARTHQUAKE_ALERT = 38; // 0x26
2694    field public static final int FEATURE_EARTHQUAKE_OCCURRED = 41; // 0x29
2695    field public static final int FEATURE_ETA_MONITORING = 18; // 0x12
2696    field public static final int FEATURE_FITNESS_TRACKING = 17; // 0x11
2697    field public static final int FEATURE_FLASHLIGHT = 28; // 0x1c
2698    field public static final int FEATURE_FLIGHT = 4; // 0x4
2699    field public static final int FEATURE_GAS_STATION_PAYMENT = 24; // 0x18
2700    field public static final int FEATURE_HOLIDAY_ALARM = 34; // 0x22
2701    field public static final int FEATURE_LOYALTY_CARD = 14; // 0xe
2702    field public static final int FEATURE_MEDIA = 15; // 0xf
2703    field public static final int FEATURE_MEDIA_HEADS_UP = 36; // 0x24
2704    field public static final int FEATURE_MEDIA_RESUME = 31; // 0x1f
2705    field public static final int FEATURE_MISSED_CALL = 19; // 0x13
2706    field public static final int FEATURE_ONBOARDING = 8; // 0x8
2707    field public static final int FEATURE_PACKAGE_TRACKING = 20; // 0x14
2708    field public static final int FEATURE_PAIRED_DEVICE_STATE = 25; // 0x19
2709    field public static final int FEATURE_REMINDER = 6; // 0x6
2710    field public static final int FEATURE_SAFETY_CHECK = 35; // 0x23
2711    field public static final int FEATURE_SEVERE_WEATHER_ALERT = 33; // 0x21
2712    field public static final int FEATURE_SHOPPING_LIST = 13; // 0xd
2713    field public static final int FEATURE_SLEEP_SUMMARY = 27; // 0x1b
2714    field public static final int FEATURE_SPORTS = 9; // 0x9
2715    field public static final int FEATURE_STEP_COUNTING = 37; // 0x25
2716    field public static final int FEATURE_STEP_DATE = 39; // 0x27
2717    field public static final int FEATURE_STOCK_PRICE_CHANGE = 12; // 0xc
2718    field public static final int FEATURE_STOPWATCH = 22; // 0x16
2719    field public static final int FEATURE_TIMER = 21; // 0x15
2720    field public static final int FEATURE_TIME_TO_LEAVE = 29; // 0x1d
2721    field public static final int FEATURE_TIPS = 5; // 0x5
2722    field public static final int FEATURE_UNDEFINED = 0; // 0x0
2723    field public static final int FEATURE_UPCOMING_ALARM = 23; // 0x17
2724    field public static final int FEATURE_WEATHER = 1; // 0x1
2725    field public static final int FEATURE_WEATHER_ALERT = 10; // 0xa
2726    field public static final int UI_TEMPLATE_CAROUSEL = 4; // 0x4
2727    field public static final int UI_TEMPLATE_COMBINED_CARDS = 6; // 0x6
2728    field public static final int UI_TEMPLATE_DEFAULT = 1; // 0x1
2729    field public static final int UI_TEMPLATE_HEAD_TO_HEAD = 5; // 0x5
2730    field public static final int UI_TEMPLATE_SUB_CARD = 7; // 0x7
2731    field public static final int UI_TEMPLATE_SUB_IMAGE = 2; // 0x2
2732    field public static final int UI_TEMPLATE_SUB_LIST = 3; // 0x3
2733    field public static final int UI_TEMPLATE_UNDEFINED = 0; // 0x0
2734  }
2735
2736  public static final class SmartspaceTarget.Builder {
2737    ctor public SmartspaceTarget.Builder(@NonNull String, @NonNull android.content.ComponentName, @NonNull android.os.UserHandle);
2738    method @NonNull public android.app.smartspace.SmartspaceTarget build();
2739    method @NonNull public android.app.smartspace.SmartspaceTarget.Builder setActionChips(@NonNull java.util.List<android.app.smartspace.SmartspaceAction>);
2740    method @NonNull public android.app.smartspace.SmartspaceTarget.Builder setAssociatedSmartspaceTargetId(@NonNull String);
2741    method @NonNull public android.app.smartspace.SmartspaceTarget.Builder setBaseAction(@NonNull android.app.smartspace.SmartspaceAction);
2742    method @NonNull public android.app.smartspace.SmartspaceTarget.Builder setCreationTimeMillis(long);
2743    method @NonNull public android.app.smartspace.SmartspaceTarget.Builder setExpiryTimeMillis(long);
2744    method @NonNull public android.app.smartspace.SmartspaceTarget.Builder setFeatureType(int);
2745    method @NonNull public android.app.smartspace.SmartspaceTarget.Builder setHeaderAction(@NonNull android.app.smartspace.SmartspaceAction);
2746    method @NonNull public android.app.smartspace.SmartspaceTarget.Builder setIconGrid(@NonNull java.util.List<android.app.smartspace.SmartspaceAction>);
2747    method @NonNull public android.app.smartspace.SmartspaceTarget.Builder setRemoteViews(@NonNull android.widget.RemoteViews);
2748    method @NonNull public android.app.smartspace.SmartspaceTarget.Builder setScore(float);
2749    method @NonNull public android.app.smartspace.SmartspaceTarget.Builder setSensitive(boolean);
2750    method @NonNull public android.app.smartspace.SmartspaceTarget.Builder setShouldShowExpanded(boolean);
2751    method @NonNull public android.app.smartspace.SmartspaceTarget.Builder setSliceUri(@NonNull android.net.Uri);
2752    method @NonNull public android.app.smartspace.SmartspaceTarget.Builder setSourceNotificationKey(@NonNull String);
2753    method @NonNull public android.app.smartspace.SmartspaceTarget.Builder setTemplateData(@Nullable android.app.smartspace.uitemplatedata.BaseTemplateData);
2754    method @NonNull public android.app.smartspace.SmartspaceTarget.Builder setWidget(@NonNull android.appwidget.AppWidgetProviderInfo);
2755  }
2756
2757  public final class SmartspaceTargetEvent implements android.os.Parcelable {
2758    method public int describeContents();
2759    method @NonNull public int getEventType();
2760    method @Nullable public String getSmartspaceActionId();
2761    method @Nullable public android.app.smartspace.SmartspaceTarget getSmartspaceTarget();
2762    method public void writeToParcel(@NonNull android.os.Parcel, int);
2763    field @NonNull public static final android.os.Parcelable.Creator<android.app.smartspace.SmartspaceTargetEvent> CREATOR;
2764    field public static final int EVENT_TARGET_BLOCK = 5; // 0x5
2765    field public static final int EVENT_TARGET_DISMISS = 4; // 0x4
2766    field public static final int EVENT_TARGET_HIDDEN = 3; // 0x3
2767    field public static final int EVENT_TARGET_INTERACTION = 1; // 0x1
2768    field public static final int EVENT_TARGET_SHOWN = 2; // 0x2
2769    field public static final int EVENT_UI_SURFACE_HIDDEN = 7; // 0x7
2770    field public static final int EVENT_UI_SURFACE_SHOWN = 6; // 0x6
2771  }
2772
2773  public static final class SmartspaceTargetEvent.Builder {
2774    ctor public SmartspaceTargetEvent.Builder(int);
2775    method @NonNull public android.app.smartspace.SmartspaceTargetEvent build();
2776    method @NonNull public android.app.smartspace.SmartspaceTargetEvent.Builder setSmartspaceActionId(@NonNull String);
2777    method @NonNull public android.app.smartspace.SmartspaceTargetEvent.Builder setSmartspaceTarget(@NonNull android.app.smartspace.SmartspaceTarget);
2778  }
2779
2780}
2781
2782package android.app.smartspace.uitemplatedata {
2783
2784  public class BaseTemplateData implements android.os.Parcelable {
2785    method public int describeContents();
2786    method public int getLayoutWeight();
2787    method @Nullable public android.app.smartspace.uitemplatedata.BaseTemplateData.SubItemInfo getPrimaryItem();
2788    method @Nullable public android.app.smartspace.uitemplatedata.BaseTemplateData.SubItemInfo getSubtitleItem();
2789    method @Nullable public android.app.smartspace.uitemplatedata.BaseTemplateData.SubItemInfo getSubtitleSupplementalItem();
2790    method @Nullable public android.app.smartspace.uitemplatedata.BaseTemplateData.SubItemInfo getSupplementalAlarmItem();
2791    method @Nullable public android.app.smartspace.uitemplatedata.BaseTemplateData.SubItemInfo getSupplementalLineItem();
2792    method public int getTemplateType();
2793    method public void writeToParcel(@NonNull android.os.Parcel, int);
2794    field @NonNull public static final android.os.Parcelable.Creator<android.app.smartspace.uitemplatedata.BaseTemplateData> CREATOR;
2795  }
2796
2797  public static class BaseTemplateData.Builder {
2798    ctor public BaseTemplateData.Builder(int);
2799    method @NonNull public android.app.smartspace.uitemplatedata.BaseTemplateData build();
2800    method @NonNull public android.app.smartspace.uitemplatedata.BaseTemplateData.Builder setLayoutWeight(int);
2801    method @NonNull public android.app.smartspace.uitemplatedata.BaseTemplateData.Builder setPrimaryItem(@NonNull android.app.smartspace.uitemplatedata.BaseTemplateData.SubItemInfo);
2802    method @NonNull public android.app.smartspace.uitemplatedata.BaseTemplateData.Builder setSubtitleItem(@NonNull android.app.smartspace.uitemplatedata.BaseTemplateData.SubItemInfo);
2803    method @NonNull public android.app.smartspace.uitemplatedata.BaseTemplateData.Builder setSubtitleSupplementalItem(@NonNull android.app.smartspace.uitemplatedata.BaseTemplateData.SubItemInfo);
2804    method @NonNull public android.app.smartspace.uitemplatedata.BaseTemplateData.Builder setSupplementalAlarmItem(@NonNull android.app.smartspace.uitemplatedata.BaseTemplateData.SubItemInfo);
2805    method @NonNull public android.app.smartspace.uitemplatedata.BaseTemplateData.Builder setSupplementalLineItem(@NonNull android.app.smartspace.uitemplatedata.BaseTemplateData.SubItemInfo);
2806  }
2807
2808  public static final class BaseTemplateData.SubItemInfo implements android.os.Parcelable {
2809    method public int describeContents();
2810    method @Nullable public android.app.smartspace.uitemplatedata.Icon getIcon();
2811    method @Nullable public android.app.smartspace.uitemplatedata.BaseTemplateData.SubItemLoggingInfo getLoggingInfo();
2812    method @Nullable public android.app.smartspace.uitemplatedata.TapAction getTapAction();
2813    method @Nullable public android.app.smartspace.uitemplatedata.Text getText();
2814    method public void writeToParcel(@NonNull android.os.Parcel, int);
2815    field @NonNull public static final android.os.Parcelable.Creator<android.app.smartspace.uitemplatedata.BaseTemplateData.SubItemInfo> CREATOR;
2816  }
2817
2818  public static final class BaseTemplateData.SubItemInfo.Builder {
2819    ctor public BaseTemplateData.SubItemInfo.Builder();
2820    method @NonNull public android.app.smartspace.uitemplatedata.BaseTemplateData.SubItemInfo build();
2821    method @NonNull public android.app.smartspace.uitemplatedata.BaseTemplateData.SubItemInfo.Builder setIcon(@NonNull android.app.smartspace.uitemplatedata.Icon);
2822    method @NonNull public android.app.smartspace.uitemplatedata.BaseTemplateData.SubItemInfo.Builder setLoggingInfo(@NonNull android.app.smartspace.uitemplatedata.BaseTemplateData.SubItemLoggingInfo);
2823    method @NonNull public android.app.smartspace.uitemplatedata.BaseTemplateData.SubItemInfo.Builder setTapAction(@NonNull android.app.smartspace.uitemplatedata.TapAction);
2824    method @NonNull public android.app.smartspace.uitemplatedata.BaseTemplateData.SubItemInfo.Builder setText(@NonNull android.app.smartspace.uitemplatedata.Text);
2825  }
2826
2827  public static final class BaseTemplateData.SubItemLoggingInfo implements android.os.Parcelable {
2828    method public int describeContents();
2829    method public int getFeatureType();
2830    method public int getInstanceId();
2831    method @Nullable public CharSequence getPackageName();
2832    method public void writeToParcel(@NonNull android.os.Parcel, int);
2833    field @NonNull public static final android.os.Parcelable.Creator<android.app.smartspace.uitemplatedata.BaseTemplateData.SubItemLoggingInfo> CREATOR;
2834  }
2835
2836  public static final class BaseTemplateData.SubItemLoggingInfo.Builder {
2837    ctor public BaseTemplateData.SubItemLoggingInfo.Builder(int, int);
2838    method @NonNull public android.app.smartspace.uitemplatedata.BaseTemplateData.SubItemLoggingInfo build();
2839    method @NonNull public android.app.smartspace.uitemplatedata.BaseTemplateData.SubItemLoggingInfo.Builder setPackageName(@NonNull CharSequence);
2840  }
2841
2842  public final class CarouselTemplateData extends android.app.smartspace.uitemplatedata.BaseTemplateData {
2843    method @Nullable public android.app.smartspace.uitemplatedata.TapAction getCarouselAction();
2844    method @NonNull public java.util.List<android.app.smartspace.uitemplatedata.CarouselTemplateData.CarouselItem> getCarouselItems();
2845    field @NonNull public static final android.os.Parcelable.Creator<android.app.smartspace.uitemplatedata.CarouselTemplateData> CREATOR;
2846  }
2847
2848  public static final class CarouselTemplateData.Builder extends android.app.smartspace.uitemplatedata.BaseTemplateData.Builder {
2849    ctor public CarouselTemplateData.Builder(@NonNull java.util.List<android.app.smartspace.uitemplatedata.CarouselTemplateData.CarouselItem>);
2850    method @NonNull public android.app.smartspace.uitemplatedata.CarouselTemplateData build();
2851    method @NonNull public android.app.smartspace.uitemplatedata.CarouselTemplateData.Builder setCarouselAction(@NonNull android.app.smartspace.uitemplatedata.TapAction);
2852  }
2853
2854  public static final class CarouselTemplateData.CarouselItem implements android.os.Parcelable {
2855    method public int describeContents();
2856    method @Nullable public android.app.smartspace.uitemplatedata.Icon getImage();
2857    method @Nullable public android.app.smartspace.uitemplatedata.Text getLowerText();
2858    method @Nullable public android.app.smartspace.uitemplatedata.TapAction getTapAction();
2859    method @Nullable public android.app.smartspace.uitemplatedata.Text getUpperText();
2860    method public void writeToParcel(@NonNull android.os.Parcel, int);
2861    field @NonNull public static final android.os.Parcelable.Creator<android.app.smartspace.uitemplatedata.CarouselTemplateData.CarouselItem> CREATOR;
2862  }
2863
2864  public static final class CarouselTemplateData.CarouselItem.Builder {
2865    ctor public CarouselTemplateData.CarouselItem.Builder();
2866    method @NonNull public android.app.smartspace.uitemplatedata.CarouselTemplateData.CarouselItem build();
2867    method @NonNull public android.app.smartspace.uitemplatedata.CarouselTemplateData.CarouselItem.Builder setImage(@Nullable android.app.smartspace.uitemplatedata.Icon);
2868    method @NonNull public android.app.smartspace.uitemplatedata.CarouselTemplateData.CarouselItem.Builder setLowerText(@Nullable android.app.smartspace.uitemplatedata.Text);
2869    method @NonNull public android.app.smartspace.uitemplatedata.CarouselTemplateData.CarouselItem.Builder setTapAction(@Nullable android.app.smartspace.uitemplatedata.TapAction);
2870    method @NonNull public android.app.smartspace.uitemplatedata.CarouselTemplateData.CarouselItem.Builder setUpperText(@Nullable android.app.smartspace.uitemplatedata.Text);
2871  }
2872
2873  public final class CombinedCardsTemplateData extends android.app.smartspace.uitemplatedata.BaseTemplateData {
2874    method @NonNull public java.util.List<android.app.smartspace.uitemplatedata.BaseTemplateData> getCombinedCardDataList();
2875    field @NonNull public static final android.os.Parcelable.Creator<android.app.smartspace.uitemplatedata.CombinedCardsTemplateData> CREATOR;
2876  }
2877
2878  public static final class CombinedCardsTemplateData.Builder extends android.app.smartspace.uitemplatedata.BaseTemplateData.Builder {
2879    ctor public CombinedCardsTemplateData.Builder(@NonNull java.util.List<android.app.smartspace.uitemplatedata.BaseTemplateData>);
2880    method @NonNull public android.app.smartspace.uitemplatedata.CombinedCardsTemplateData build();
2881  }
2882
2883  public final class HeadToHeadTemplateData extends android.app.smartspace.uitemplatedata.BaseTemplateData {
2884    method @Nullable public android.app.smartspace.uitemplatedata.TapAction getHeadToHeadAction();
2885    method @Nullable public android.app.smartspace.uitemplatedata.Icon getHeadToHeadFirstCompetitorIcon();
2886    method @Nullable public android.app.smartspace.uitemplatedata.Text getHeadToHeadFirstCompetitorText();
2887    method @Nullable public android.app.smartspace.uitemplatedata.Icon getHeadToHeadSecondCompetitorIcon();
2888    method @Nullable public android.app.smartspace.uitemplatedata.Text getHeadToHeadSecondCompetitorText();
2889    method @Nullable public android.app.smartspace.uitemplatedata.Text getHeadToHeadTitle();
2890    field @NonNull public static final android.os.Parcelable.Creator<android.app.smartspace.uitemplatedata.HeadToHeadTemplateData> CREATOR;
2891  }
2892
2893  public static final class HeadToHeadTemplateData.Builder extends android.app.smartspace.uitemplatedata.BaseTemplateData.Builder {
2894    ctor public HeadToHeadTemplateData.Builder();
2895    method @NonNull public android.app.smartspace.uitemplatedata.HeadToHeadTemplateData build();
2896    method @NonNull public android.app.smartspace.uitemplatedata.HeadToHeadTemplateData.Builder setHeadToHeadAction(@Nullable android.app.smartspace.uitemplatedata.TapAction);
2897    method @NonNull public android.app.smartspace.uitemplatedata.HeadToHeadTemplateData.Builder setHeadToHeadFirstCompetitorIcon(@Nullable android.app.smartspace.uitemplatedata.Icon);
2898    method @NonNull public android.app.smartspace.uitemplatedata.HeadToHeadTemplateData.Builder setHeadToHeadFirstCompetitorText(@Nullable android.app.smartspace.uitemplatedata.Text);
2899    method @NonNull public android.app.smartspace.uitemplatedata.HeadToHeadTemplateData.Builder setHeadToHeadSecondCompetitorIcon(@Nullable android.app.smartspace.uitemplatedata.Icon);
2900    method @NonNull public android.app.smartspace.uitemplatedata.HeadToHeadTemplateData.Builder setHeadToHeadSecondCompetitorText(@Nullable android.app.smartspace.uitemplatedata.Text);
2901    method @NonNull public android.app.smartspace.uitemplatedata.HeadToHeadTemplateData.Builder setHeadToHeadTitle(@Nullable android.app.smartspace.uitemplatedata.Text);
2902  }
2903
2904  public final class Icon implements android.os.Parcelable {
2905    method public int describeContents();
2906    method @Nullable public CharSequence getContentDescription();
2907    method @NonNull public android.graphics.drawable.Icon getIcon();
2908    method public boolean shouldTint();
2909    method public void writeToParcel(@NonNull android.os.Parcel, int);
2910    field @NonNull public static final android.os.Parcelable.Creator<android.app.smartspace.uitemplatedata.Icon> CREATOR;
2911  }
2912
2913  public static final class Icon.Builder {
2914    ctor public Icon.Builder(@NonNull android.graphics.drawable.Icon);
2915    method @NonNull public android.app.smartspace.uitemplatedata.Icon build();
2916    method @NonNull public android.app.smartspace.uitemplatedata.Icon.Builder setContentDescription(@NonNull CharSequence);
2917    method @NonNull public android.app.smartspace.uitemplatedata.Icon.Builder setShouldTint(boolean);
2918  }
2919
2920  public final class SubCardTemplateData extends android.app.smartspace.uitemplatedata.BaseTemplateData {
2921    method @Nullable public android.app.smartspace.uitemplatedata.TapAction getSubCardAction();
2922    method @NonNull public android.app.smartspace.uitemplatedata.Icon getSubCardIcon();
2923    method @Nullable public android.app.smartspace.uitemplatedata.Text getSubCardText();
2924    field @NonNull public static final android.os.Parcelable.Creator<android.app.smartspace.uitemplatedata.SubCardTemplateData> CREATOR;
2925  }
2926
2927  public static final class SubCardTemplateData.Builder extends android.app.smartspace.uitemplatedata.BaseTemplateData.Builder {
2928    ctor public SubCardTemplateData.Builder(@NonNull android.app.smartspace.uitemplatedata.Icon);
2929    method @NonNull public android.app.smartspace.uitemplatedata.SubCardTemplateData build();
2930    method @NonNull public android.app.smartspace.uitemplatedata.SubCardTemplateData.Builder setSubCardAction(@NonNull android.app.smartspace.uitemplatedata.TapAction);
2931    method @NonNull public android.app.smartspace.uitemplatedata.SubCardTemplateData.Builder setSubCardText(@NonNull android.app.smartspace.uitemplatedata.Text);
2932  }
2933
2934  public final class SubImageTemplateData extends android.app.smartspace.uitemplatedata.BaseTemplateData {
2935    method @Nullable public android.app.smartspace.uitemplatedata.TapAction getSubImageAction();
2936    method @NonNull public java.util.List<android.app.smartspace.uitemplatedata.Text> getSubImageTexts();
2937    method @NonNull public java.util.List<android.app.smartspace.uitemplatedata.Icon> getSubImages();
2938    field @NonNull public static final android.os.Parcelable.Creator<android.app.smartspace.uitemplatedata.SubImageTemplateData> CREATOR;
2939  }
2940
2941  public static final class SubImageTemplateData.Builder extends android.app.smartspace.uitemplatedata.BaseTemplateData.Builder {
2942    ctor public SubImageTemplateData.Builder(@NonNull java.util.List<android.app.smartspace.uitemplatedata.Text>, @NonNull java.util.List<android.app.smartspace.uitemplatedata.Icon>);
2943    method @NonNull public android.app.smartspace.uitemplatedata.SubImageTemplateData build();
2944    method @NonNull public android.app.smartspace.uitemplatedata.SubImageTemplateData.Builder setSubImageAction(@NonNull android.app.smartspace.uitemplatedata.TapAction);
2945  }
2946
2947  public final class SubListTemplateData extends android.app.smartspace.uitemplatedata.BaseTemplateData {
2948    method @Nullable public android.app.smartspace.uitemplatedata.TapAction getSubListAction();
2949    method @Nullable public android.app.smartspace.uitemplatedata.Icon getSubListIcon();
2950    method @NonNull public java.util.List<android.app.smartspace.uitemplatedata.Text> getSubListTexts();
2951    field @NonNull public static final android.os.Parcelable.Creator<android.app.smartspace.uitemplatedata.SubListTemplateData> CREATOR;
2952  }
2953
2954  public static final class SubListTemplateData.Builder extends android.app.smartspace.uitemplatedata.BaseTemplateData.Builder {
2955    ctor public SubListTemplateData.Builder(@NonNull java.util.List<android.app.smartspace.uitemplatedata.Text>);
2956    method @NonNull public android.app.smartspace.uitemplatedata.SubListTemplateData build();
2957    method @NonNull public android.app.smartspace.uitemplatedata.SubListTemplateData.Builder setSubListAction(@NonNull android.app.smartspace.uitemplatedata.TapAction);
2958    method @NonNull public android.app.smartspace.uitemplatedata.SubListTemplateData.Builder setSubListIcon(@NonNull android.app.smartspace.uitemplatedata.Icon);
2959  }
2960
2961  public final class TapAction implements android.os.Parcelable {
2962    method public int describeContents();
2963    method @Nullable public android.os.Bundle getExtras();
2964    method @Nullable public CharSequence getId();
2965    method @Nullable public android.content.Intent getIntent();
2966    method @Nullable public android.app.PendingIntent getPendingIntent();
2967    method @Nullable public android.os.UserHandle getUserHandle();
2968    method public boolean shouldShowOnLockscreen();
2969    method public void writeToParcel(@NonNull android.os.Parcel, int);
2970    field @NonNull public static final android.os.Parcelable.Creator<android.app.smartspace.uitemplatedata.TapAction> CREATOR;
2971  }
2972
2973  public static final class TapAction.Builder {
2974    ctor public TapAction.Builder(@NonNull CharSequence);
2975    method @NonNull public android.app.smartspace.uitemplatedata.TapAction build();
2976    method @NonNull public android.app.smartspace.uitemplatedata.TapAction.Builder setExtras(@NonNull android.os.Bundle);
2977    method @NonNull public android.app.smartspace.uitemplatedata.TapAction.Builder setIntent(@NonNull android.content.Intent);
2978    method @NonNull public android.app.smartspace.uitemplatedata.TapAction.Builder setPendingIntent(@NonNull android.app.PendingIntent);
2979    method @NonNull public android.app.smartspace.uitemplatedata.TapAction.Builder setShouldShowOnLockscreen(@NonNull boolean);
2980    method @NonNull public android.app.smartspace.uitemplatedata.TapAction.Builder setUserHandle(@Nullable android.os.UserHandle);
2981  }
2982
2983  public final class Text implements android.os.Parcelable {
2984    method public int describeContents();
2985    method public int getMaxLines();
2986    method @NonNull public CharSequence getText();
2987    method @NonNull public android.text.TextUtils.TruncateAt getTruncateAtType();
2988    method public void writeToParcel(@NonNull android.os.Parcel, int);
2989    field @NonNull public static final android.os.Parcelable.Creator<android.app.smartspace.uitemplatedata.Text> CREATOR;
2990  }
2991
2992  public static final class Text.Builder {
2993    ctor public Text.Builder(@NonNull CharSequence);
2994    method @NonNull public android.app.smartspace.uitemplatedata.Text build();
2995    method @NonNull public android.app.smartspace.uitemplatedata.Text.Builder setMaxLines(int);
2996    method @NonNull public android.app.smartspace.uitemplatedata.Text.Builder setTruncateAtType(@NonNull android.text.TextUtils.TruncateAt);
2997  }
2998
2999}
3000
3001package android.app.time {
3002
3003  public final class Capabilities {
3004    field public static final int CAPABILITY_NOT_ALLOWED = 20; // 0x14
3005    field public static final int CAPABILITY_NOT_APPLICABLE = 30; // 0x1e
3006    field public static final int CAPABILITY_NOT_SUPPORTED = 10; // 0xa
3007    field public static final int CAPABILITY_POSSESSED = 40; // 0x28
3008  }
3009
3010  public final class ExternalTimeSuggestion implements android.os.Parcelable {
3011    ctor public ExternalTimeSuggestion(long, long);
3012    method public void addDebugInfo(@NonNull java.lang.String...);
3013    method public int describeContents();
3014    method @NonNull public java.util.List<java.lang.String> getDebugInfo();
3015    method public void writeToParcel(@NonNull android.os.Parcel, int);
3016    field @NonNull public static final android.os.Parcelable.Creator<android.app.time.ExternalTimeSuggestion> CREATOR;
3017  }
3018
3019  public final class TimeCapabilities implements android.os.Parcelable {
3020    method public int describeContents();
3021    method public int getConfigureAutoDetectionEnabledCapability();
3022    method public int getSetManualTimeCapability();
3023    method public void writeToParcel(@NonNull android.os.Parcel, int);
3024    field @NonNull public static final android.os.Parcelable.Creator<android.app.time.TimeCapabilities> CREATOR;
3025  }
3026
3027  public final class TimeCapabilitiesAndConfig implements android.os.Parcelable {
3028    method public int describeContents();
3029    method @NonNull public android.app.time.TimeCapabilities getCapabilities();
3030    method @NonNull public android.app.time.TimeConfiguration getConfiguration();
3031    method public void writeToParcel(@NonNull android.os.Parcel, int);
3032    field @NonNull public static final android.os.Parcelable.Creator<android.app.time.TimeCapabilitiesAndConfig> CREATOR;
3033  }
3034
3035  public final class TimeConfiguration implements android.os.Parcelable {
3036    method public int describeContents();
3037    method public boolean isAutoDetectionEnabled();
3038    method public void writeToParcel(@NonNull android.os.Parcel, int);
3039    field @NonNull public static final android.os.Parcelable.Creator<android.app.time.TimeConfiguration> CREATOR;
3040  }
3041
3042  public static final class TimeConfiguration.Builder {
3043    ctor public TimeConfiguration.Builder();
3044    ctor public TimeConfiguration.Builder(@NonNull android.app.time.TimeConfiguration);
3045    method @NonNull public android.app.time.TimeConfiguration build();
3046    method @NonNull public android.app.time.TimeConfiguration.Builder setAutoDetectionEnabled(boolean);
3047  }
3048
3049  public final class TimeManager {
3050    method @RequiresPermission(android.Manifest.permission.MANAGE_TIME_AND_ZONE_DETECTION) public void addTimeZoneDetectorListener(@NonNull java.util.concurrent.Executor, @NonNull android.app.time.TimeManager.TimeZoneDetectorListener);
3051    method @RequiresPermission(android.Manifest.permission.MANAGE_TIME_AND_ZONE_DETECTION) public boolean confirmTime(@NonNull android.app.time.UnixEpochTime);
3052    method @RequiresPermission(android.Manifest.permission.MANAGE_TIME_AND_ZONE_DETECTION) public boolean confirmTimeZone(@NonNull String);
3053    method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_TIME_AND_ZONE_DETECTION) public android.app.time.TimeCapabilitiesAndConfig getTimeCapabilitiesAndConfig();
3054    method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_TIME_AND_ZONE_DETECTION) public android.app.time.TimeState getTimeState();
3055    method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_TIME_AND_ZONE_DETECTION) public android.app.time.TimeZoneCapabilitiesAndConfig getTimeZoneCapabilitiesAndConfig();
3056    method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_TIME_AND_ZONE_DETECTION) public android.app.time.TimeZoneState getTimeZoneState();
3057    method @RequiresPermission(android.Manifest.permission.MANAGE_TIME_AND_ZONE_DETECTION) public void removeTimeZoneDetectorListener(@NonNull android.app.time.TimeManager.TimeZoneDetectorListener);
3058    method @RequiresPermission(android.Manifest.permission.MANAGE_TIME_AND_ZONE_DETECTION) public boolean setManualTime(@NonNull android.app.time.UnixEpochTime);
3059    method @RequiresPermission(android.Manifest.permission.MANAGE_TIME_AND_ZONE_DETECTION) public boolean setManualTimeZone(@NonNull String);
3060    method @RequiresPermission(android.Manifest.permission.SUGGEST_EXTERNAL_TIME) public void suggestExternalTime(@NonNull android.app.time.ExternalTimeSuggestion);
3061    method @RequiresPermission(android.Manifest.permission.MANAGE_TIME_AND_ZONE_DETECTION) public boolean updateTimeConfiguration(@NonNull android.app.time.TimeConfiguration);
3062    method @RequiresPermission(android.Manifest.permission.MANAGE_TIME_AND_ZONE_DETECTION) public boolean updateTimeZoneConfiguration(@NonNull android.app.time.TimeZoneConfiguration);
3063  }
3064
3065  @java.lang.FunctionalInterface public static interface TimeManager.TimeZoneDetectorListener {
3066    method public void onChange();
3067  }
3068
3069  public final class TimeState implements android.os.Parcelable {
3070    method public int describeContents();
3071    method @NonNull public android.app.time.UnixEpochTime getUnixEpochTime();
3072    method public boolean getUserShouldConfirmTime();
3073    method public void writeToParcel(@NonNull android.os.Parcel, int);
3074    field @NonNull public static final android.os.Parcelable.Creator<android.app.time.TimeState> CREATOR;
3075  }
3076
3077  public final class TimeZoneCapabilities implements android.os.Parcelable {
3078    method public int describeContents();
3079    method public int getConfigureAutoDetectionEnabledCapability();
3080    method public int getConfigureGeoDetectionEnabledCapability();
3081    method public int getSetManualTimeZoneCapability();
3082    method public void writeToParcel(@NonNull android.os.Parcel, int);
3083    field @NonNull public static final android.os.Parcelable.Creator<android.app.time.TimeZoneCapabilities> CREATOR;
3084  }
3085
3086  public final class TimeZoneCapabilitiesAndConfig implements android.os.Parcelable {
3087    method public int describeContents();
3088    method @NonNull public android.app.time.TimeZoneCapabilities getCapabilities();
3089    method @NonNull public android.app.time.TimeZoneConfiguration getConfiguration();
3090    method public void writeToParcel(@NonNull android.os.Parcel, int);
3091    field @NonNull public static final android.os.Parcelable.Creator<android.app.time.TimeZoneCapabilitiesAndConfig> CREATOR;
3092  }
3093
3094  public final class TimeZoneConfiguration implements android.os.Parcelable {
3095    method public int describeContents();
3096    method public boolean isAutoDetectionEnabled();
3097    method public boolean isGeoDetectionEnabled();
3098    method public void writeToParcel(@NonNull android.os.Parcel, int);
3099    field @NonNull public static final android.os.Parcelable.Creator<android.app.time.TimeZoneConfiguration> CREATOR;
3100  }
3101
3102  public static final class TimeZoneConfiguration.Builder {
3103    ctor public TimeZoneConfiguration.Builder();
3104    ctor public TimeZoneConfiguration.Builder(@NonNull android.app.time.TimeZoneConfiguration);
3105    method @NonNull public android.app.time.TimeZoneConfiguration build();
3106    method @NonNull public android.app.time.TimeZoneConfiguration.Builder setAutoDetectionEnabled(boolean);
3107    method @NonNull public android.app.time.TimeZoneConfiguration.Builder setGeoDetectionEnabled(boolean);
3108  }
3109
3110  public final class TimeZoneState implements android.os.Parcelable {
3111    method public int describeContents();
3112    method @NonNull public String getId();
3113    method public boolean getUserShouldConfirmId();
3114    method public void writeToParcel(@NonNull android.os.Parcel, int);
3115    field @NonNull public static final android.os.Parcelable.Creator<android.app.time.TimeZoneState> CREATOR;
3116  }
3117
3118  public final class UnixEpochTime implements android.os.Parcelable {
3119    ctor public UnixEpochTime(long, long);
3120    method @NonNull public android.app.time.UnixEpochTime at(long);
3121    method public int describeContents();
3122    method public long getElapsedRealtimeMillis();
3123    method public long getUnixEpochTimeMillis();
3124    method public void writeToParcel(@NonNull android.os.Parcel, int);
3125    field @NonNull public static final android.os.Parcelable.Creator<android.app.time.UnixEpochTime> CREATOR;
3126  }
3127
3128}
3129
3130package android.app.usage {
3131
3132  public final class BroadcastResponseStats implements android.os.Parcelable {
3133    ctor public BroadcastResponseStats(@NonNull String, @IntRange(from=1) long);
3134    method public int describeContents();
3135    method @IntRange(from=0) public int getBroadcastsDispatchedCount();
3136    method @IntRange(from=1) public long getId();
3137    method @IntRange(from=0) public int getNotificationsCancelledCount();
3138    method @IntRange(from=0) public int getNotificationsPostedCount();
3139    method @IntRange(from=0) public int getNotificationsUpdatedCount();
3140    method @NonNull public String getPackageName();
3141    method public void writeToParcel(@NonNull android.os.Parcel, int);
3142    field @NonNull public static final android.os.Parcelable.Creator<android.app.usage.BroadcastResponseStats> CREATOR;
3143  }
3144
3145  public final class CacheQuotaHint implements android.os.Parcelable {
3146    ctor public CacheQuotaHint(@NonNull android.app.usage.CacheQuotaHint.Builder);
3147    method public int describeContents();
3148    method public long getQuota();
3149    method public int getUid();
3150    method @Nullable public android.app.usage.UsageStats getUsageStats();
3151    method @Nullable public String getVolumeUuid();
3152    method public void writeToParcel(@NonNull android.os.Parcel, int);
3153    field @NonNull public static final android.os.Parcelable.Creator<android.app.usage.CacheQuotaHint> CREATOR;
3154    field public static final long QUOTA_NOT_SET = -1L; // 0xffffffffffffffffL
3155  }
3156
3157  public static final class CacheQuotaHint.Builder {
3158    ctor public CacheQuotaHint.Builder();
3159    ctor public CacheQuotaHint.Builder(@NonNull android.app.usage.CacheQuotaHint);
3160    method @NonNull public android.app.usage.CacheQuotaHint build();
3161    method @NonNull public android.app.usage.CacheQuotaHint.Builder setQuota(long);
3162    method @NonNull public android.app.usage.CacheQuotaHint.Builder setUid(int);
3163    method @NonNull public android.app.usage.CacheQuotaHint.Builder setUsageStats(@Nullable android.app.usage.UsageStats);
3164    method @NonNull public android.app.usage.CacheQuotaHint.Builder setVolumeUuid(@Nullable String);
3165  }
3166
3167  public abstract class CacheQuotaService extends android.app.Service {
3168    ctor public CacheQuotaService();
3169    method public android.os.IBinder onBind(android.content.Intent);
3170    method public abstract java.util.List<android.app.usage.CacheQuotaHint> onComputeCacheQuotaHints(java.util.List<android.app.usage.CacheQuotaHint>);
3171    field public static final String SERVICE_INTERFACE = "android.app.usage.CacheQuotaService";
3172  }
3173
3174  public static final class UsageEvents.Event {
3175    method public int getInstanceId();
3176    method @Nullable public String getNotificationChannelId();
3177    method @Nullable public String getTaskRootClassName();
3178    method @Nullable public String getTaskRootPackageName();
3179    method public boolean isInstantApp();
3180    field public static final int NOTIFICATION_INTERRUPTION = 12; // 0xc
3181    field public static final int NOTIFICATION_SEEN = 10; // 0xa
3182    field public static final int SLICE_PINNED = 14; // 0xe
3183    field public static final int SLICE_PINNED_PRIV = 13; // 0xd
3184    field public static final int SYSTEM_INTERACTION = 6; // 0x6
3185  }
3186
3187  public final class UsageStats implements android.os.Parcelable {
3188    method public int getAppLaunchCount();
3189    method public long getLastTimeAnyComponentUsed();
3190  }
3191
3192  public final class UsageStatsManager {
3193    method @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RESPONSE_STATS) public void clearBroadcastResponseStats(@Nullable String, @IntRange(from=0) long);
3194    method @RequiresPermission(android.Manifest.permission.PACKAGE_USAGE_STATS) public int getAppStandbyBucket(String);
3195    method @RequiresPermission(android.Manifest.permission.PACKAGE_USAGE_STATS) public java.util.Map<java.lang.String,java.lang.Integer> getAppStandbyBuckets();
3196    method @RequiresPermission(allOf={android.Manifest.permission.INTERACT_ACROSS_USERS, android.Manifest.permission.PACKAGE_USAGE_STATS}) public long getLastTimeAnyComponentUsed(@NonNull String);
3197    method public int getUsageSource();
3198    method @RequiresPermission(android.Manifest.permission.BIND_CARRIER_SERVICES) public void onCarrierPrivilegedAppsChanged();
3199    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);
3200    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);
3201    method @RequiresPermission(android.Manifest.permission.OBSERVE_APP_USAGE) public void registerAppUsageObserver(int, @NonNull String[], long, @NonNull java.util.concurrent.TimeUnit, @NonNull android.app.PendingIntent);
3202    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);
3203    method public void reportUsageStart(@NonNull android.app.Activity, @NonNull String);
3204    method public void reportUsageStart(@NonNull android.app.Activity, @NonNull String, long);
3205    method public void reportUsageStop(@NonNull android.app.Activity, @NonNull String);
3206    method @RequiresPermission(android.Manifest.permission.CHANGE_APP_IDLE_STATE) public void setAppStandbyBucket(String, int);
3207    method @RequiresPermission(android.Manifest.permission.CHANGE_APP_IDLE_STATE) public void setAppStandbyBuckets(java.util.Map<java.lang.String,java.lang.Integer>);
3208    method @RequiresPermission(android.Manifest.permission.CHANGE_APP_LAUNCH_TIME_ESTIMATE) public void setEstimatedLaunchTimeMillis(@NonNull String, long);
3209    method @RequiresPermission(android.Manifest.permission.CHANGE_APP_LAUNCH_TIME_ESTIMATE) public void setEstimatedLaunchTimesMillis(@NonNull java.util.Map<java.lang.String,java.lang.Long>);
3210    method @RequiresPermission(allOf={android.Manifest.permission.SUSPEND_APPS, android.Manifest.permission.OBSERVE_APP_USAGE}) public void unregisterAppUsageLimitObserver(int);
3211    method @RequiresPermission(android.Manifest.permission.OBSERVE_APP_USAGE) public void unregisterAppUsageObserver(int);
3212    method @RequiresPermission(android.Manifest.permission.OBSERVE_APP_USAGE) public void unregisterUsageSessionObserver(int);
3213    method @Deprecated @RequiresPermission(android.Manifest.permission.CHANGE_DEVICE_IDLE_TEMP_WHITELIST) public void whitelistAppTemporarily(String, long, android.os.UserHandle);
3214    field public static final String EXTRA_OBSERVER_ID = "android.app.usage.extra.OBSERVER_ID";
3215    field public static final String EXTRA_TIME_LIMIT = "android.app.usage.extra.TIME_LIMIT";
3216    field public static final String EXTRA_TIME_USED = "android.app.usage.extra.TIME_USED";
3217    field public static final int STANDBY_BUCKET_EXEMPTED = 5; // 0x5
3218    field public static final int STANDBY_BUCKET_NEVER = 50; // 0x32
3219    field public static final int USAGE_SOURCE_CURRENT_ACTIVITY = 2; // 0x2
3220    field public static final int USAGE_SOURCE_TASK_ROOT_ACTIVITY = 1; // 0x1
3221  }
3222
3223}
3224
3225package android.app.wallpapereffectsgeneration {
3226
3227  public final class CameraAttributes implements android.os.Parcelable {
3228    method public int describeContents();
3229    method @NonNull public float[] getAnchorPointInOutputUvSpace();
3230    method @NonNull public float[] getAnchorPointInWorldSpace();
3231    method @FloatRange(from=-90.0F, to=90.0f) public float getCameraOrbitPitchDegrees();
3232    method @FloatRange(from=-180.0F, to=180.0f) public float getCameraOrbitYawDegrees();
3233    method public float getDollyDistanceInWorldSpace();
3234    method @FloatRange(from=0.0f) public float getFrustumFarInWorldSpace();
3235    method @FloatRange(from=0.0f) public float getFrustumNearInWorldSpace();
3236    method @FloatRange(from=0.0f, to=180.0f, fromInclusive=false) public float getVerticalFovDegrees();
3237    method public void writeToParcel(@NonNull android.os.Parcel, int);
3238    field @NonNull public static final android.os.Parcelable.Creator<android.app.wallpapereffectsgeneration.CameraAttributes> CREATOR;
3239  }
3240
3241  public static final class CameraAttributes.Builder {
3242    ctor public CameraAttributes.Builder(@NonNull @Size(3) float[], @NonNull @Size(2) float[]);
3243    method @NonNull public android.app.wallpapereffectsgeneration.CameraAttributes build();
3244    method @NonNull public android.app.wallpapereffectsgeneration.CameraAttributes.Builder setCameraOrbitPitchDegrees(@FloatRange(from=-90.0F, to=90.0f) float);
3245    method @NonNull public android.app.wallpapereffectsgeneration.CameraAttributes.Builder setCameraOrbitYawDegrees(@FloatRange(from=-180.0F, to=180.0f) float);
3246    method @NonNull public android.app.wallpapereffectsgeneration.CameraAttributes.Builder setDollyDistanceInWorldSpace(float);
3247    method @NonNull public android.app.wallpapereffectsgeneration.CameraAttributes.Builder setFrustumFarInWorldSpace(@FloatRange(from=0.0f) float);
3248    method @NonNull public android.app.wallpapereffectsgeneration.CameraAttributes.Builder setFrustumNearInWorldSpace(@FloatRange(from=0.0f) float);
3249    method @NonNull public android.app.wallpapereffectsgeneration.CameraAttributes.Builder setVerticalFovDegrees(@FloatRange(from=0.0f, to=180.0f, fromInclusive=false) float);
3250  }
3251
3252  public final class CinematicEffectRequest implements android.os.Parcelable {
3253    ctor public CinematicEffectRequest(@NonNull String, @NonNull android.graphics.Bitmap);
3254    method public int describeContents();
3255    method @NonNull public android.graphics.Bitmap getBitmap();
3256    method @NonNull public String getTaskId();
3257    method public void writeToParcel(@NonNull android.os.Parcel, int);
3258    field @NonNull public static final android.os.Parcelable.Creator<android.app.wallpapereffectsgeneration.CinematicEffectRequest> CREATOR;
3259  }
3260
3261  public final class CinematicEffectResponse implements android.os.Parcelable {
3262    method public int describeContents();
3263    method @Nullable public android.app.wallpapereffectsgeneration.CameraAttributes getEndKeyFrame();
3264    method public int getImageContentType();
3265    method @Nullable public android.app.wallpapereffectsgeneration.CameraAttributes getStartKeyFrame();
3266    method public int getStatusCode();
3267    method @NonNull public String getTaskId();
3268    method @NonNull public java.util.List<android.app.wallpapereffectsgeneration.TexturedMesh> getTexturedMeshes();
3269    method public void writeToParcel(@NonNull android.os.Parcel, int);
3270    field public static final int CINEMATIC_EFFECT_STATUS_ANIMATION_FAILURE = 10; // 0xa
3271    field public static final int CINEMATIC_EFFECT_STATUS_CONTENT_TARGET_ERROR = 8; // 0x8
3272    field public static final int CINEMATIC_EFFECT_STATUS_CONTENT_TOO_FLAT = 9; // 0x9
3273    field public static final int CINEMATIC_EFFECT_STATUS_CONTENT_UNSUPPORTED = 7; // 0x7
3274    field public static final int CINEMATIC_EFFECT_STATUS_ERROR = 0; // 0x0
3275    field public static final int CINEMATIC_EFFECT_STATUS_FEATURE_DISABLED = 5; // 0x5
3276    field public static final int CINEMATIC_EFFECT_STATUS_IMAGE_FORMAT_NOT_SUITABLE = 6; // 0x6
3277    field public static final int CINEMATIC_EFFECT_STATUS_NOT_READY = 2; // 0x2
3278    field public static final int CINEMATIC_EFFECT_STATUS_OK = 1; // 0x1
3279    field public static final int CINEMATIC_EFFECT_STATUS_PENDING = 3; // 0x3
3280    field public static final int CINEMATIC_EFFECT_STATUS_TOO_MANY_REQUESTS = 4; // 0x4
3281    field @NonNull public static final android.os.Parcelable.Creator<android.app.wallpapereffectsgeneration.CinematicEffectResponse> CREATOR;
3282    field public static final int IMAGE_CONTENT_TYPE_LANDSCAPE = 2; // 0x2
3283    field public static final int IMAGE_CONTENT_TYPE_OTHER = 3; // 0x3
3284    field public static final int IMAGE_CONTENT_TYPE_PEOPLE_PORTRAIT = 1; // 0x1
3285    field public static final int IMAGE_CONTENT_TYPE_UNKNOWN = 0; // 0x0
3286  }
3287
3288  public static final class CinematicEffectResponse.Builder {
3289    ctor public CinematicEffectResponse.Builder(int, @NonNull String);
3290    method @NonNull public android.app.wallpapereffectsgeneration.CinematicEffectResponse build();
3291    method @NonNull public android.app.wallpapereffectsgeneration.CinematicEffectResponse.Builder setEndKeyFrame(@Nullable android.app.wallpapereffectsgeneration.CameraAttributes);
3292    method @NonNull public android.app.wallpapereffectsgeneration.CinematicEffectResponse.Builder setImageContentType(int);
3293    method @NonNull public android.app.wallpapereffectsgeneration.CinematicEffectResponse.Builder setStartKeyFrame(@Nullable android.app.wallpapereffectsgeneration.CameraAttributes);
3294    method @NonNull public android.app.wallpapereffectsgeneration.CinematicEffectResponse.Builder setTexturedMeshes(@NonNull java.util.List<android.app.wallpapereffectsgeneration.TexturedMesh>);
3295  }
3296
3297  public final class TexturedMesh implements android.os.Parcelable {
3298    method public int describeContents();
3299    method @NonNull public android.graphics.Bitmap getBitmap();
3300    method @NonNull public int[] getIndices();
3301    method @NonNull public int getIndicesLayoutType();
3302    method @NonNull public float[] getVertices();
3303    method @NonNull public int getVerticesLayoutType();
3304    method public void writeToParcel(@NonNull android.os.Parcel, int);
3305    field @NonNull public static final android.os.Parcelable.Creator<android.app.wallpapereffectsgeneration.TexturedMesh> CREATOR;
3306    field public static final int INDICES_LAYOUT_TRIANGLES = 1; // 0x1
3307    field public static final int INDICES_LAYOUT_UNDEFINED = 0; // 0x0
3308    field public static final int VERTICES_LAYOUT_POSITION3_UV2 = 1; // 0x1
3309    field public static final int VERTICES_LAYOUT_UNDEFINED = 0; // 0x0
3310  }
3311
3312  public static final class TexturedMesh.Builder {
3313    ctor public TexturedMesh.Builder(@NonNull android.graphics.Bitmap);
3314    method @NonNull public android.app.wallpapereffectsgeneration.TexturedMesh build();
3315    method @NonNull public android.app.wallpapereffectsgeneration.TexturedMesh.Builder setIndices(@NonNull int[]);
3316    method @NonNull public android.app.wallpapereffectsgeneration.TexturedMesh.Builder setIndicesLayoutType(int);
3317    method @NonNull public android.app.wallpapereffectsgeneration.TexturedMesh.Builder setVertices(@NonNull float[]);
3318    method @NonNull public android.app.wallpapereffectsgeneration.TexturedMesh.Builder setVerticesLayoutType(int);
3319  }
3320
3321  public final class WallpaperEffectsGenerationManager {
3322    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);
3323  }
3324
3325  public static interface WallpaperEffectsGenerationManager.CinematicEffectListener {
3326    method public void onCinematicEffectGenerated(@NonNull android.app.wallpapereffectsgeneration.CinematicEffectResponse);
3327  }
3328
3329}
3330
3331package android.app.wearable {
3332
3333  public final class WearableSensingDataRequest implements android.os.Parcelable {
3334    method public int describeContents();
3335    method public int getDataSize();
3336    method public int getDataType();
3337    method public static int getMaxRequestSize();
3338    method public static int getRateLimit();
3339    method @NonNull public static java.time.Duration getRateLimitWindowSize();
3340    method @NonNull public android.os.PersistableBundle getRequestDetails();
3341    method public void writeToParcel(@NonNull android.os.Parcel, int);
3342    field @NonNull public static final android.os.Parcelable.Creator<android.app.wearable.WearableSensingDataRequest> CREATOR;
3343  }
3344
3345  public static final class WearableSensingDataRequest.Builder {
3346    ctor public WearableSensingDataRequest.Builder(int);
3347    method @NonNull public android.app.wearable.WearableSensingDataRequest build();
3348    method @NonNull public android.app.wearable.WearableSensingDataRequest.Builder setRequestDetails(@NonNull android.os.PersistableBundle);
3349  }
3350
3351  public class WearableSensingManager {
3352    method @Nullable public static android.app.wearable.WearableSensingDataRequest getDataRequestFromIntent(@NonNull android.content.Intent);
3353    method @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>);
3354    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>);
3355    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>);
3356    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>);
3357    method @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>);
3358    method @RequiresPermission(android.Manifest.permission.MANAGE_WEARABLE_SENSING_SERVICE) public void stopHotwordRecognition(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Integer>);
3359    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>);
3360    field public static final int STATUS_ACCESS_DENIED = 5; // 0x5
3361    field public static final int STATUS_CHANNEL_ERROR = 7; // 0x7
3362    field public static final int STATUS_SERVICE_UNAVAILABLE = 3; // 0x3
3363    field public static final int STATUS_SUCCESS = 1; // 0x1
3364    field public static final int STATUS_UNKNOWN = 0; // 0x0
3365    field @Deprecated public static final int STATUS_UNSUPPORTED = 2; // 0x2
3366    field public static final int STATUS_UNSUPPORTED_DATA_TYPE = 8; // 0x8
3367    field public static final int STATUS_UNSUPPORTED_OPERATION = 6; // 0x6
3368    field public static final int STATUS_WEARABLE_UNAVAILABLE = 4; // 0x4
3369  }
3370
3371}
3372
3373package android.apphibernation {
3374
3375  public class AppHibernationManager {
3376    method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_APP_HIBERNATION) public java.util.List<java.lang.String> getHibernatingPackagesForUser();
3377    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>);
3378    method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_APP_HIBERNATION) public java.util.Map<java.lang.String,android.apphibernation.HibernationStats> getHibernationStatsForUser();
3379    method @RequiresPermission(android.Manifest.permission.MANAGE_APP_HIBERNATION) public boolean isHibernatingForUser(@NonNull String);
3380    method @RequiresPermission(android.Manifest.permission.MANAGE_APP_HIBERNATION) public boolean isHibernatingGlobally(@NonNull String);
3381    method @RequiresPermission(android.Manifest.permission.MANAGE_APP_HIBERNATION) public boolean isOatArtifactDeletionEnabled();
3382    method @RequiresPermission(android.Manifest.permission.MANAGE_APP_HIBERNATION) public void setHibernatingForUser(@NonNull String, boolean);
3383    method @RequiresPermission(android.Manifest.permission.MANAGE_APP_HIBERNATION) public void setHibernatingGlobally(@NonNull String, boolean);
3384  }
3385
3386  public final class HibernationStats implements android.os.Parcelable {
3387    method public int describeContents();
3388    method public long getDiskBytesSaved();
3389    method public void writeToParcel(@NonNull android.os.Parcel, int);
3390    field @NonNull public static final android.os.Parcelable.Creator<android.apphibernation.HibernationStats> CREATOR;
3391  }
3392
3393}
3394
3395package android.companion {
3396
3397  public final class AssociationInfo implements android.os.Parcelable {
3398    method @NonNull public String getPackageName();
3399  }
3400
3401  public final class CompanionDeviceManager {
3402    method @RequiresPermission("android.permission.MANAGE_COMPANION_DEVICES") public void addOnAssociationsChangedListener(@NonNull java.util.concurrent.Executor, @NonNull android.companion.CompanionDeviceManager.OnAssociationsChangedListener);
3403    method @RequiresPermission(android.Manifest.permission.ASSOCIATE_COMPANION_DEVICES) public void associate(@NonNull String, @NonNull android.net.MacAddress, @NonNull byte[]);
3404    method @RequiresPermission("android.permission.MANAGE_COMPANION_DEVICES") public boolean canPairWithoutPrompt(@NonNull String, @NonNull String, @NonNull android.os.UserHandle);
3405    method @NonNull @RequiresPermission("android.permission.MANAGE_COMPANION_DEVICES") public java.util.List<android.companion.AssociationInfo> getAllAssociations();
3406    method @RequiresPermission("android.permission.MANAGE_COMPANION_DEVICES") public boolean isDeviceAssociatedForWifiConnection(@NonNull String, @NonNull android.net.MacAddress, @NonNull android.os.UserHandle);
3407    method @RequiresPermission(android.Manifest.permission.REQUEST_COMPANION_SELF_MANAGED) public void notifyDeviceAppeared(int);
3408    method @RequiresPermission(android.Manifest.permission.REQUEST_COMPANION_SELF_MANAGED) public void notifyDeviceDisappeared(int);
3409    method @RequiresPermission("android.permission.MANAGE_COMPANION_DEVICES") public void removeOnAssociationsChangedListener(@NonNull android.companion.CompanionDeviceManager.OnAssociationsChangedListener);
3410  }
3411
3412  public static interface CompanionDeviceManager.OnAssociationsChangedListener {
3413    method public void onAssociationsChanged(@NonNull java.util.List<android.companion.AssociationInfo>);
3414  }
3415
3416}
3417
3418package android.companion.virtual {
3419
3420  public final class VirtualDevice implements android.os.Parcelable {
3421    method public boolean hasCustomAudioInputSupport();
3422    method public boolean hasCustomCameraSupport();
3423  }
3424
3425  public final class VirtualDeviceManager {
3426    method @NonNull @RequiresPermission(android.Manifest.permission.CREATE_VIRTUAL_DEVICE) public android.companion.virtual.VirtualDeviceManager.VirtualDevice createVirtualDevice(int, @NonNull android.companion.virtual.VirtualDeviceParams);
3427    method @NonNull public java.util.Set<java.lang.String> getAllPersistentDeviceIds();
3428    method @Nullable public CharSequence getDisplayNameForPersistentDeviceId(@NonNull String);
3429    field public static final int LAUNCH_FAILURE_NO_ACTIVITY = 2; // 0x2
3430    field public static final int LAUNCH_FAILURE_PENDING_INTENT_CANCELED = 1; // 0x1
3431    field public static final int LAUNCH_SUCCESS = 0; // 0x0
3432    field public static final String PERSISTENT_DEVICE_ID_DEFAULT = "default:0";
3433  }
3434
3435  public static interface VirtualDeviceManager.ActivityListener {
3436    method public void onDisplayEmpty(int);
3437    method @Deprecated public void onTopActivityChanged(int, @NonNull android.content.ComponentName);
3438    method public default void onTopActivityChanged(int, @NonNull android.content.ComponentName, int);
3439  }
3440
3441  public static interface VirtualDeviceManager.IntentInterceptorCallback {
3442    method public void onIntentIntercepted(@NonNull android.content.Intent);
3443  }
3444
3445  public static interface VirtualDeviceManager.SoundEffectListener {
3446    method public void onPlaySoundEffect(int);
3447  }
3448
3449  public static class VirtualDeviceManager.VirtualDevice implements java.lang.AutoCloseable {
3450    method public void addActivityListener(@NonNull java.util.concurrent.Executor, @NonNull android.companion.virtual.VirtualDeviceManager.ActivityListener);
3451    method @RequiresPermission(android.Manifest.permission.CREATE_VIRTUAL_DEVICE) public void addActivityPolicyExemption(@NonNull android.content.ComponentName);
3452    method public void addSoundEffectListener(@NonNull java.util.concurrent.Executor, @NonNull android.companion.virtual.VirtualDeviceManager.SoundEffectListener);
3453    method @RequiresPermission(android.Manifest.permission.CREATE_VIRTUAL_DEVICE) public void close();
3454    method @NonNull public android.content.Context createContext();
3455    method @NonNull @RequiresPermission(android.Manifest.permission.CREATE_VIRTUAL_DEVICE) public android.companion.virtual.audio.VirtualAudioDevice createVirtualAudioDevice(@NonNull android.hardware.display.VirtualDisplay, @Nullable java.util.concurrent.Executor, @Nullable android.companion.virtual.audio.VirtualAudioDevice.AudioConfigurationChangeCallback);
3456    method @NonNull @RequiresPermission(android.Manifest.permission.CREATE_VIRTUAL_DEVICE) public android.companion.virtual.camera.VirtualCamera createVirtualCamera(@NonNull android.companion.virtual.camera.VirtualCameraConfig);
3457    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);
3458    method @Nullable public android.hardware.display.VirtualDisplay createVirtualDisplay(@NonNull android.hardware.display.VirtualDisplayConfig, @Nullable java.util.concurrent.Executor, @Nullable android.hardware.display.VirtualDisplay.Callback);
3459    method @NonNull @RequiresPermission(android.Manifest.permission.CREATE_VIRTUAL_DEVICE) public android.hardware.input.VirtualDpad createVirtualDpad(@NonNull android.hardware.input.VirtualDpadConfig);
3460    method @NonNull @RequiresPermission(android.Manifest.permission.CREATE_VIRTUAL_DEVICE) public android.hardware.input.VirtualKeyboard createVirtualKeyboard(@NonNull android.hardware.input.VirtualKeyboardConfig);
3461    method @Deprecated @NonNull @RequiresPermission(android.Manifest.permission.CREATE_VIRTUAL_DEVICE) public android.hardware.input.VirtualKeyboard createVirtualKeyboard(@NonNull android.hardware.display.VirtualDisplay, @NonNull String, int, int);
3462    method @NonNull @RequiresPermission(android.Manifest.permission.CREATE_VIRTUAL_DEVICE) public android.hardware.input.VirtualMouse createVirtualMouse(@NonNull android.hardware.input.VirtualMouseConfig);
3463    method @Deprecated @NonNull @RequiresPermission(android.Manifest.permission.CREATE_VIRTUAL_DEVICE) public android.hardware.input.VirtualMouse createVirtualMouse(@NonNull android.hardware.display.VirtualDisplay, @NonNull String, int, int);
3464    method @NonNull @RequiresPermission(android.Manifest.permission.CREATE_VIRTUAL_DEVICE) public android.hardware.input.VirtualNavigationTouchpad createVirtualNavigationTouchpad(@NonNull android.hardware.input.VirtualNavigationTouchpadConfig);
3465    method @NonNull @RequiresPermission(android.Manifest.permission.CREATE_VIRTUAL_DEVICE) public android.hardware.input.VirtualStylus createVirtualStylus(@NonNull android.hardware.input.VirtualStylusConfig);
3466    method @NonNull @RequiresPermission(android.Manifest.permission.CREATE_VIRTUAL_DEVICE) public android.hardware.input.VirtualTouchscreen createVirtualTouchscreen(@NonNull android.hardware.input.VirtualTouchscreenConfig);
3467    method @Deprecated @NonNull @RequiresPermission(android.Manifest.permission.CREATE_VIRTUAL_DEVICE) public android.hardware.input.VirtualTouchscreen createVirtualTouchscreen(@NonNull android.hardware.display.VirtualDisplay, @NonNull String, int, int);
3468    method public int getDeviceId();
3469    method @Nullable public String getPersistentDeviceId();
3470    method @NonNull public java.util.List<android.companion.virtual.sensor.VirtualSensor> getVirtualSensorList();
3471    method public void launchPendingIntent(int, @NonNull android.app.PendingIntent, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.IntConsumer);
3472    method @RequiresPermission(android.Manifest.permission.CREATE_VIRTUAL_DEVICE) public void registerIntentInterceptor(@NonNull android.content.IntentFilter, @NonNull java.util.concurrent.Executor, @NonNull android.companion.virtual.VirtualDeviceManager.IntentInterceptorCallback);
3473    method public void removeActivityListener(@NonNull android.companion.virtual.VirtualDeviceManager.ActivityListener);
3474    method @RequiresPermission(android.Manifest.permission.CREATE_VIRTUAL_DEVICE) public void removeActivityPolicyExemption(@NonNull android.content.ComponentName);
3475    method public void removeSoundEffectListener(@NonNull android.companion.virtual.VirtualDeviceManager.SoundEffectListener);
3476    method @RequiresPermission(android.Manifest.permission.CREATE_VIRTUAL_DEVICE) public void setDevicePolicy(int, int);
3477    method @RequiresPermission(android.Manifest.permission.CREATE_VIRTUAL_DEVICE) public void setDisplayImePolicy(int, int);
3478    method @RequiresPermission(android.Manifest.permission.CREATE_VIRTUAL_DEVICE) public void setShowPointerIcon(boolean);
3479    method @RequiresPermission(android.Manifest.permission.CREATE_VIRTUAL_DEVICE) public void unregisterIntentInterceptor(@NonNull android.companion.virtual.VirtualDeviceManager.IntentInterceptorCallback);
3480  }
3481
3482  public final class VirtualDeviceParams implements android.os.Parcelable {
3483    method public int describeContents();
3484    method @Deprecated @NonNull public java.util.Set<android.content.ComponentName> getAllowedActivities();
3485    method @Deprecated @NonNull public java.util.Set<android.content.ComponentName> getAllowedCrossTaskNavigations();
3486    method public int getAudioPlaybackSessionId();
3487    method public int getAudioRecordingSessionId();
3488    method @Deprecated @NonNull public java.util.Set<android.content.ComponentName> getBlockedActivities();
3489    method @Deprecated @NonNull public java.util.Set<android.content.ComponentName> getBlockedCrossTaskNavigations();
3490    method @Deprecated public int getDefaultActivityPolicy();
3491    method @Deprecated public int getDefaultNavigationPolicy();
3492    method public int getDevicePolicy(int);
3493    method @Nullable public android.content.ComponentName getHomeComponent();
3494    method @Nullable public android.content.ComponentName getInputMethodComponent();
3495    method public int getLockState();
3496    method @Nullable public String getName();
3497    method @NonNull public java.util.Set<android.os.UserHandle> getUsersWithMatchingAccounts();
3498    method @NonNull public java.util.List<android.companion.virtual.sensor.VirtualSensorConfig> getVirtualSensorConfigs();
3499    method public void writeToParcel(@NonNull android.os.Parcel, int);
3500    field @Deprecated public static final int ACTIVITY_POLICY_DEFAULT_ALLOWED = 0; // 0x0
3501    field @Deprecated public static final int ACTIVITY_POLICY_DEFAULT_BLOCKED = 1; // 0x1
3502    field @NonNull public static final android.os.Parcelable.Creator<android.companion.virtual.VirtualDeviceParams> CREATOR;
3503    field public static final int DEVICE_POLICY_CUSTOM = 1; // 0x1
3504    field public static final int DEVICE_POLICY_DEFAULT = 0; // 0x0
3505    field public static final int LOCK_STATE_ALWAYS_UNLOCKED = 1; // 0x1
3506    field public static final int LOCK_STATE_DEFAULT = 0; // 0x0
3507    field @Deprecated public static final int NAVIGATION_POLICY_DEFAULT_ALLOWED = 0; // 0x0
3508    field @Deprecated public static final int NAVIGATION_POLICY_DEFAULT_BLOCKED = 1; // 0x1
3509    field public static final int POLICY_TYPE_ACTIVITY = 3; // 0x3
3510    field public static final int POLICY_TYPE_AUDIO = 1; // 0x1
3511    field public static final int POLICY_TYPE_CAMERA = 5; // 0x5
3512    field public static final int POLICY_TYPE_CLIPBOARD = 4; // 0x4
3513    field public static final int POLICY_TYPE_RECENTS = 2; // 0x2
3514    field public static final int POLICY_TYPE_SENSORS = 0; // 0x0
3515  }
3516
3517  public static final class VirtualDeviceParams.Builder {
3518    ctor public VirtualDeviceParams.Builder();
3519    method @NonNull public android.companion.virtual.VirtualDeviceParams.Builder addVirtualSensorConfig(@NonNull android.companion.virtual.sensor.VirtualSensorConfig);
3520    method @NonNull public android.companion.virtual.VirtualDeviceParams build();
3521    method @Deprecated @NonNull public android.companion.virtual.VirtualDeviceParams.Builder setAllowedActivities(@NonNull java.util.Set<android.content.ComponentName>);
3522    method @Deprecated @NonNull public android.companion.virtual.VirtualDeviceParams.Builder setAllowedCrossTaskNavigations(@NonNull java.util.Set<android.content.ComponentName>);
3523    method @NonNull public android.companion.virtual.VirtualDeviceParams.Builder setAudioPlaybackSessionId(int);
3524    method @NonNull public android.companion.virtual.VirtualDeviceParams.Builder setAudioRecordingSessionId(int);
3525    method @Deprecated @NonNull public android.companion.virtual.VirtualDeviceParams.Builder setBlockedActivities(@NonNull java.util.Set<android.content.ComponentName>);
3526    method @Deprecated @NonNull public android.companion.virtual.VirtualDeviceParams.Builder setBlockedCrossTaskNavigations(@NonNull java.util.Set<android.content.ComponentName>);
3527    method @NonNull public android.companion.virtual.VirtualDeviceParams.Builder setDevicePolicy(int, int);
3528    method @NonNull public android.companion.virtual.VirtualDeviceParams.Builder setHomeComponent(@Nullable android.content.ComponentName);
3529    method @NonNull public android.companion.virtual.VirtualDeviceParams.Builder setInputMethodComponent(@Nullable android.content.ComponentName);
3530    method @NonNull @RequiresPermission(value=android.Manifest.permission.ADD_ALWAYS_UNLOCKED_DISPLAY, conditional=true) public android.companion.virtual.VirtualDeviceParams.Builder setLockState(int);
3531    method @NonNull public android.companion.virtual.VirtualDeviceParams.Builder setName(@NonNull String);
3532    method @NonNull public android.companion.virtual.VirtualDeviceParams.Builder setUsersWithMatchingAccounts(@NonNull java.util.Set<android.os.UserHandle>);
3533    method @NonNull public android.companion.virtual.VirtualDeviceParams.Builder setVirtualSensorCallback(@NonNull java.util.concurrent.Executor, @NonNull android.companion.virtual.sensor.VirtualSensorCallback);
3534    method @NonNull public android.companion.virtual.VirtualDeviceParams.Builder setVirtualSensorDirectChannelCallback(@NonNull java.util.concurrent.Executor, @NonNull android.companion.virtual.sensor.VirtualSensorDirectChannelCallback);
3535  }
3536
3537}
3538
3539package android.companion.virtual.audio {
3540
3541  public final class AudioCapture {
3542    method @NonNull public android.media.AudioFormat getFormat();
3543    method public int getRecordingState();
3544    method public int read(@NonNull byte[], int, int);
3545    method public int read(@NonNull byte[], int, int, int);
3546    method public int read(@NonNull java.nio.ByteBuffer, int);
3547    method public int read(@NonNull java.nio.ByteBuffer, int, int);
3548    method public int read(@NonNull float[], int, int, int);
3549    method public int read(@NonNull short[], int, int);
3550    method public int read(@NonNull short[], int, int, int);
3551    method public void startRecording();
3552    method public void stop();
3553  }
3554
3555  public final class AudioInjection {
3556    method @NonNull public android.media.AudioFormat getFormat();
3557    method public int getPlayState();
3558    method public void play();
3559    method public void stop();
3560    method public int write(@NonNull byte[], int, int);
3561    method public int write(@NonNull byte[], int, int, int);
3562    method public int write(@NonNull java.nio.ByteBuffer, int, int);
3563    method public int write(@NonNull java.nio.ByteBuffer, int, int, long);
3564    method public int write(@NonNull float[], int, int, int);
3565    method public int write(@NonNull short[], int, int);
3566    method public int write(@NonNull short[], int, int, int);
3567  }
3568
3569  public final class VirtualAudioDevice implements java.io.Closeable {
3570    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public void close();
3571    method @Nullable public android.companion.virtual.audio.AudioCapture getAudioCapture();
3572    method @Nullable public android.companion.virtual.audio.AudioInjection getAudioInjection();
3573    method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public android.companion.virtual.audio.AudioCapture startAudioCapture(@NonNull android.media.AudioFormat);
3574    method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public android.companion.virtual.audio.AudioInjection startAudioInjection(@NonNull android.media.AudioFormat);
3575  }
3576
3577  public static interface VirtualAudioDevice.AudioConfigurationChangeCallback {
3578    method public void onPlaybackConfigChanged(@NonNull java.util.List<android.media.AudioPlaybackConfiguration>);
3579    method public void onRecordingConfigChanged(@NonNull java.util.List<android.media.AudioRecordingConfiguration>);
3580  }
3581
3582}
3583
3584package android.companion.virtual.camera {
3585
3586  public final class VirtualCamera implements java.io.Closeable {
3587    method @RequiresPermission(android.Manifest.permission.CREATE_VIRTUAL_DEVICE) public void close();
3588    method @NonNull public android.companion.virtual.camera.VirtualCameraConfig getConfig();
3589  }
3590
3591  public interface VirtualCameraCallback {
3592    method public default void onProcessCaptureRequest(int, long);
3593    method public void onStreamClosed(int);
3594    method public void onStreamConfigured(int, @NonNull android.view.Surface, @IntRange(from=1) int, @IntRange(from=1) int, int);
3595  }
3596
3597  public final class VirtualCameraConfig implements android.os.Parcelable {
3598    method public int describeContents();
3599    method public int getLensFacing();
3600    method @NonNull public String getName();
3601    method public int getSensorOrientation();
3602    method @NonNull public java.util.Set<android.companion.virtual.camera.VirtualCameraStreamConfig> getStreamConfigs();
3603    method public void writeToParcel(@NonNull android.os.Parcel, int);
3604    field @NonNull public static final android.os.Parcelable.Creator<android.companion.virtual.camera.VirtualCameraConfig> CREATOR;
3605    field public static final int SENSOR_ORIENTATION_0 = 0; // 0x0
3606    field public static final int SENSOR_ORIENTATION_180 = 180; // 0xb4
3607    field public static final int SENSOR_ORIENTATION_270 = 270; // 0x10e
3608    field public static final int SENSOR_ORIENTATION_90 = 90; // 0x5a
3609  }
3610
3611  public static final class VirtualCameraConfig.Builder {
3612    ctor public VirtualCameraConfig.Builder(@NonNull String);
3613    method @NonNull public android.companion.virtual.camera.VirtualCameraConfig.Builder addStreamConfig(@IntRange(from=1) int, @IntRange(from=1) int, int, @IntRange(from=1) int);
3614    method @NonNull public android.companion.virtual.camera.VirtualCameraConfig build();
3615    method @NonNull public android.companion.virtual.camera.VirtualCameraConfig.Builder setLensFacing(int);
3616    method @NonNull public android.companion.virtual.camera.VirtualCameraConfig.Builder setSensorOrientation(int);
3617    method @NonNull public android.companion.virtual.camera.VirtualCameraConfig.Builder setVirtualCameraCallback(@NonNull java.util.concurrent.Executor, @NonNull android.companion.virtual.camera.VirtualCameraCallback);
3618  }
3619
3620  public final class VirtualCameraStreamConfig implements android.os.Parcelable {
3621    method public int describeContents();
3622    method public int getFormat();
3623    method @IntRange(from=1) public int getHeight();
3624    method @IntRange(from=1) public int getMaximumFramesPerSecond();
3625    method @IntRange(from=1) public int getWidth();
3626    method public void writeToParcel(@NonNull android.os.Parcel, int);
3627    field @NonNull public static final android.os.Parcelable.Creator<android.companion.virtual.camera.VirtualCameraStreamConfig> CREATOR;
3628  }
3629
3630}
3631
3632package android.companion.virtual.sensor {
3633
3634  public final class VirtualSensor implements android.os.Parcelable {
3635    method public int describeContents();
3636    method public int getDeviceId();
3637    method @NonNull public String getName();
3638    method public int getType();
3639    method @RequiresPermission(android.Manifest.permission.CREATE_VIRTUAL_DEVICE) public void sendEvent(@NonNull android.companion.virtual.sensor.VirtualSensorEvent);
3640    method public void writeToParcel(@NonNull android.os.Parcel, int);
3641    field @NonNull public static final android.os.Parcelable.Creator<android.companion.virtual.sensor.VirtualSensor> CREATOR;
3642  }
3643
3644  public interface VirtualSensorCallback {
3645    method public void onConfigurationChanged(@NonNull android.companion.virtual.sensor.VirtualSensor, boolean, @NonNull java.time.Duration, @NonNull java.time.Duration);
3646  }
3647
3648  public final class VirtualSensorConfig implements android.os.Parcelable {
3649    method public int describeContents();
3650    method public int getDirectChannelTypesSupported();
3651    method public int getHighestDirectReportRateLevel();
3652    method public int getMaxDelay();
3653    method public float getMaximumRange();
3654    method public int getMinDelay();
3655    method @NonNull public String getName();
3656    method public float getPower();
3657    method public float getResolution();
3658    method public int getType();
3659    method @Nullable public String getVendor();
3660    method public void writeToParcel(@NonNull android.os.Parcel, int);
3661    field @NonNull public static final android.os.Parcelable.Creator<android.companion.virtual.sensor.VirtualSensorConfig> CREATOR;
3662  }
3663
3664  public static final class VirtualSensorConfig.Builder {
3665    ctor public VirtualSensorConfig.Builder(@IntRange(from=1) int, @NonNull String);
3666    method @NonNull public android.companion.virtual.sensor.VirtualSensorConfig build();
3667    method @NonNull public android.companion.virtual.sensor.VirtualSensorConfig.Builder setDirectChannelTypesSupported(int);
3668    method @NonNull public android.companion.virtual.sensor.VirtualSensorConfig.Builder setHighestDirectReportRateLevel(int);
3669    method @NonNull public android.companion.virtual.sensor.VirtualSensorConfig.Builder setMaxDelay(int);
3670    method @NonNull public android.companion.virtual.sensor.VirtualSensorConfig.Builder setMaximumRange(float);
3671    method @NonNull public android.companion.virtual.sensor.VirtualSensorConfig.Builder setMinDelay(int);
3672    method @NonNull public android.companion.virtual.sensor.VirtualSensorConfig.Builder setPower(float);
3673    method @NonNull public android.companion.virtual.sensor.VirtualSensorConfig.Builder setResolution(float);
3674    method @NonNull public android.companion.virtual.sensor.VirtualSensorConfig.Builder setVendor(@Nullable String);
3675  }
3676
3677  public interface VirtualSensorDirectChannelCallback {
3678    method public void onDirectChannelConfigured(@IntRange(from=1) int, @NonNull android.companion.virtual.sensor.VirtualSensor, int, @IntRange(from=1) int);
3679    method public void onDirectChannelCreated(@IntRange(from=1) int, @NonNull android.os.SharedMemory);
3680    method public void onDirectChannelDestroyed(@IntRange(from=1) int);
3681  }
3682
3683  public final class VirtualSensorDirectChannelWriter implements java.lang.AutoCloseable {
3684    ctor public VirtualSensorDirectChannelWriter();
3685    method public void addChannel(@IntRange(from=1) int, @NonNull android.os.SharedMemory) throws android.system.ErrnoException;
3686    method public void close();
3687    method public boolean configureChannel(@IntRange(from=1) int, @NonNull android.companion.virtual.sensor.VirtualSensor, int, @IntRange(from=1) int);
3688    method public void removeChannel(@IntRange(from=1) int);
3689    method public boolean writeSensorEvent(@NonNull android.companion.virtual.sensor.VirtualSensor, @NonNull android.companion.virtual.sensor.VirtualSensorEvent);
3690  }
3691
3692  public final class VirtualSensorEvent implements android.os.Parcelable {
3693    method public int describeContents();
3694    method public long getTimestampNanos();
3695    method @NonNull public float[] getValues();
3696    method public void writeToParcel(@NonNull android.os.Parcel, int);
3697    field @NonNull public static final android.os.Parcelable.Creator<android.companion.virtual.sensor.VirtualSensorEvent> CREATOR;
3698  }
3699
3700  public static final class VirtualSensorEvent.Builder {
3701    ctor public VirtualSensorEvent.Builder(@NonNull float[]);
3702    method @NonNull public android.companion.virtual.sensor.VirtualSensorEvent build();
3703    method @NonNull public android.companion.virtual.sensor.VirtualSensorEvent.Builder setTimestampNanos(long);
3704  }
3705
3706}
3707
3708package android.content {
3709
3710  public class ApexEnvironment {
3711    method @NonNull public static android.content.ApexEnvironment getApexEnvironment(@NonNull String);
3712    method @NonNull public java.io.File getCredentialProtectedDataDirForUser(@NonNull android.os.UserHandle);
3713    method @NonNull public java.io.File getDeviceProtectedDataDir();
3714    method @NonNull public java.io.File getDeviceProtectedDataDirForUser(@NonNull android.os.UserHandle);
3715  }
3716
3717  public final class AttributionSource implements android.os.Parcelable {
3718    method @NonNull @RequiresPermission(android.Manifest.permission.RENOUNCE_PERMISSIONS) public java.util.Set<java.lang.String> getRenouncedPermissions();
3719  }
3720
3721  public static final class AttributionSource.Builder {
3722    method @NonNull @RequiresPermission(android.Manifest.permission.RENOUNCE_PERMISSIONS) public android.content.AttributionSource.Builder setRenouncedPermissions(@Nullable java.util.Set<java.lang.String>);
3723  }
3724
3725  public abstract class BroadcastReceiver {
3726    method @NonNull public final android.os.UserHandle getSendingUser();
3727  }
3728
3729  public class ClipboardManager extends android.text.ClipboardManager {
3730    method @RequiresPermission(android.Manifest.permission.MANAGE_CLIPBOARD_ACCESS_NOTIFICATION) public boolean areClipboardAccessNotificationsEnabled();
3731    method @RequiresPermission(android.Manifest.permission.MANAGE_CLIPBOARD_ACCESS_NOTIFICATION) public void setClipboardAccessNotificationsEnabled(boolean);
3732    method @RequiresPermission(android.Manifest.permission.SET_CLIP_SOURCE) public void setPrimaryClipAsPackage(@NonNull android.content.ClipData, @NonNull String);
3733  }
3734
3735  public abstract class ContentProvider implements android.content.ComponentCallbacks2 {
3736    method public int checkUriPermission(@NonNull android.net.Uri, int, int);
3737  }
3738
3739  public class ContentProviderClient implements java.lang.AutoCloseable {
3740    method @RequiresPermission(android.Manifest.permission.REMOVE_TASKS) public void setDetectNotResponding(long);
3741  }
3742
3743  public abstract class ContentResolver {
3744    method public int checkUriPermission(@NonNull android.net.Uri, int, int);
3745    method @NonNull public static android.net.Uri decodeFromFile(@NonNull java.io.File);
3746    method @NonNull public static java.io.File encodeToFile(@NonNull android.net.Uri);
3747    method @Nullable @RequiresPermission("android.permission.CACHE_CONTENT") public android.os.Bundle getCache(@NonNull android.net.Uri);
3748    method @RequiresPermission("android.permission.CACHE_CONTENT") public void putCache(@NonNull android.net.Uri, @Nullable android.os.Bundle);
3749  }
3750
3751  public abstract class Context {
3752    method @NonNull public android.content.Context createContextAsUser(@NonNull android.os.UserHandle, int);
3753    method public abstract android.content.Context createCredentialProtectedStorageContext();
3754    method @NonNull public android.content.Context createPackageContextAsUser(@NonNull String, int, @NonNull android.os.UserHandle) throws android.content.pm.PackageManager.NameNotFoundException;
3755    method @Nullable public abstract java.io.File getPreloadsFileCache();
3756    method public abstract boolean isCredentialProtectedStorage();
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);
3758    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);
3759    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);
3760    method public void sendBroadcastMultiplePermissions(@NonNull android.content.Intent, @NonNull String[], @Nullable android.app.BroadcastOptions);
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 public static final String BACKUP_SERVICE = "backup";
3769    field public static final String BATTERY_STATS_SERVICE = "batterystats";
3770    field public static final int BIND_ALLOW_BACKGROUND_ACTIVITY_STARTS = 1048576; // 0x100000
3771    field @Deprecated public static final int BIND_ALLOW_FOREGROUND_SERVICE_STARTS_FROM_BACKGROUND = 262144; // 0x40000
3772    field public static final String CLOUDSEARCH_SERVICE = "cloudsearch";
3773    field public static final String CONTENT_SUGGESTIONS_SERVICE = "content_suggestions";
3774    field public static final String CONTEXTHUB_SERVICE = "contexthub";
3775    field public static final String CONTEXTUAL_SEARCH_SERVICE = "contextual_search";
3776    field public static final String ECM_ENHANCED_CONFIRMATION_SERVICE = "ecm_enhanced_confirmation";
3777    field public static final String ETHERNET_SERVICE = "ethernet";
3778    field public static final String EUICC_CARD_SERVICE = "euicc_card";
3779    field public static final String FONT_SERVICE = "font";
3780    field public static final String HDMI_CONTROL_SERVICE = "hdmi_control";
3781    field public static final String MEDIA_TRANSCODING_SERVICE = "media_transcoding";
3782    field public static final String MUSIC_RECOGNITION_SERVICE = "music_recognition";
3783    field public static final String NEARBY_SERVICE = "nearby";
3784    field public static final String NETD_SERVICE = "netd";
3785    field @Deprecated public static final String NETWORK_SCORE_SERVICE = "network_score";
3786    field public static final String OEM_LOCK_SERVICE = "oem_lock";
3787    field public static final String ON_DEVICE_INTELLIGENCE_SERVICE = "on_device_intelligence";
3788    field public static final String PERMISSION_CONTROLLER_SERVICE = "permission_controller";
3789    field public static final String PERMISSION_SERVICE = "permission";
3790    field public static final String REBOOT_READINESS_SERVICE = "reboot_readiness";
3791    field public static final String ROLLBACK_SERVICE = "rollback";
3792    field public static final String SAFETY_CENTER_SERVICE = "safety_center";
3793    field public static final String SEARCH_UI_SERVICE = "search_ui";
3794    field public static final String SECURE_ELEMENT_SERVICE = "secure_element";
3795    field public static final String SHARED_CONNECTIVITY_SERVICE = "shared_connectivity";
3796    field public static final String SMARTSPACE_SERVICE = "smartspace";
3797    field public static final String STATS_MANAGER = "stats";
3798    field public static final String SYSTEM_CONFIG_SERVICE = "system_config";
3799    field public static final String SYSTEM_UPDATE_SERVICE = "system_update";
3800    field public static final String TETHERING_SERVICE = "tethering";
3801    field public static final String TIME_MANAGER_SERVICE = "time_manager";
3802    field public static final String TRANSLATION_MANAGER_SERVICE = "translation";
3803    field public static final String UI_TRANSLATION_SERVICE = "ui_translation";
3804    field public static final String UWB_SERVICE = "uwb";
3805    field public static final String VIRTUALIZATION_SERVICE = "virtualization";
3806    field public static final String VR_SERVICE = "vrmanager";
3807    field public static final String WALLPAPER_EFFECTS_GENERATION_SERVICE = "wallpaper_effects_generation";
3808    field public static final String WEARABLE_SENSING_SERVICE = "wearable_sensing";
3809    field public static final String WIFI_NL80211_SERVICE = "wifinl80211";
3810    field @Deprecated public static final String WIFI_RTT_SERVICE = "rttmanager";
3811    field public static final String WIFI_SCANNING_SERVICE = "wifiscanner";
3812  }
3813
3814  public final class ContextParams {
3815    method @NonNull @RequiresPermission(android.Manifest.permission.RENOUNCE_PERMISSIONS) public java.util.Set<java.lang.String> getRenouncedPermissions();
3816  }
3817
3818  public static final class ContextParams.Builder {
3819    method @NonNull @RequiresPermission(android.Manifest.permission.RENOUNCE_PERMISSIONS) public android.content.ContextParams.Builder setRenouncedPermissions(@Nullable java.util.Set<java.lang.String>);
3820  }
3821
3822  public class ContextWrapper extends android.content.Context {
3823    method public android.content.Context createCredentialProtectedStorageContext();
3824    method @Nullable public java.io.File getPreloadsFileCache();
3825    method public boolean isCredentialProtectedStorage();
3826    method public void sendBroadcastAsUser(android.content.Intent, android.os.UserHandle, @Nullable String, @Nullable android.os.Bundle);
3827  }
3828
3829  public class Intent implements java.lang.Cloneable android.os.Parcelable {
3830    field public static final String ACTION_ACTIVITY_RECOGNIZER = "android.intent.action.ACTIVITY_RECOGNIZER";
3831    field public static final String ACTION_BATTERY_LEVEL_CHANGED = "android.intent.action.BATTERY_LEVEL_CHANGED";
3832    field public static final String ACTION_CALL_EMERGENCY = "android.intent.action.CALL_EMERGENCY";
3833    field public static final String ACTION_CALL_PRIVILEGED = "android.intent.action.CALL_PRIVILEGED";
3834    field public static final String ACTION_DEVICE_CUSTOMIZATION_READY = "android.intent.action.DEVICE_CUSTOMIZATION_READY";
3835    field public static final String ACTION_DIAL_EMERGENCY = "android.intent.action.DIAL_EMERGENCY";
3836    field public static final String ACTION_DOMAINS_NEED_VERIFICATION = "android.intent.action.DOMAINS_NEED_VERIFICATION";
3837    field public static final String ACTION_FACTORY_RESET = "android.intent.action.FACTORY_RESET";
3838    field public static final String ACTION_GLOBAL_BUTTON = "android.intent.action.GLOBAL_BUTTON";
3839    field public static final String ACTION_INCIDENT_REPORT_READY = "android.intent.action.INCIDENT_REPORT_READY";
3840    field public static final String ACTION_INSTALL_INSTANT_APP_PACKAGE = "android.intent.action.INSTALL_INSTANT_APP_PACKAGE";
3841    field public static final String ACTION_INSTANT_APP_RESOLVER_SETTINGS = "android.intent.action.INSTANT_APP_RESOLVER_SETTINGS";
3842    field @Deprecated public static final String ACTION_INTENT_FILTER_NEEDS_VERIFICATION = "android.intent.action.INTENT_FILTER_NEEDS_VERIFICATION";
3843    field public static final String ACTION_LOAD_DATA = "android.intent.action.LOAD_DATA";
3844    field public static final String ACTION_MAIN_USER_LOCKSCREEN_KNOWLEDGE_FACTOR_CHANGED = "android.intent.action.MAIN_USER_LOCKSCREEN_KNOWLEDGE_FACTOR_CHANGED";
3845    field @RequiresPermission(android.Manifest.permission.GRANT_RUNTIME_PERMISSIONS) public static final String ACTION_MANAGE_APP_PERMISSION = "android.intent.action.MANAGE_APP_PERMISSION";
3846    field @Deprecated public static final String ACTION_MANAGE_APP_PERMISSIONS = "android.intent.action.MANAGE_APP_PERMISSIONS";
3847    field @RequiresPermission(android.Manifest.permission.MANAGE_ROLE_HOLDERS) public static final String ACTION_MANAGE_DEFAULT_APP = "android.intent.action.MANAGE_DEFAULT_APP";
3848    field public static final String ACTION_MANAGE_PERMISSIONS = "android.intent.action.MANAGE_PERMISSIONS";
3849    field public static final String ACTION_MANAGE_PERMISSION_APPS = "android.intent.action.MANAGE_PERMISSION_APPS";
3850    field @RequiresPermission(android.Manifest.permission.START_VIEW_PERMISSION_USAGE) public static final String ACTION_MANAGE_PERMISSION_USAGE = "android.intent.action.MANAGE_PERMISSION_USAGE";
3851    field @RequiresPermission(android.Manifest.permission.MANAGE_ROLE_HOLDERS) public static final String ACTION_MANAGE_SPECIAL_APP_ACCESSES = "android.intent.action.MANAGE_SPECIAL_APP_ACCESSES";
3852    field @RequiresPermission(android.Manifest.permission.MASTER_CLEAR) public static final String ACTION_MASTER_CLEAR_NOTIFICATION = "android.intent.action.MASTER_CLEAR_NOTIFICATION";
3853    field public static final String ACTION_PACKAGE_NEEDS_INTEGRITY_VERIFICATION = "android.intent.action.PACKAGE_NEEDS_INTEGRITY_VERIFICATION";
3854    field public static final String ACTION_PACKAGE_UNSUSPENDED_MANUALLY = "android.intent.action.PACKAGE_UNSUSPENDED_MANUALLY";
3855    field public static final String ACTION_PENDING_INCIDENT_REPORTS_CHANGED = "android.intent.action.PENDING_INCIDENT_REPORTS_CHANGED";
3856    field public static final String ACTION_PRE_BOOT_COMPLETED = "android.intent.action.PRE_BOOT_COMPLETED";
3857    field public static final String ACTION_QUERY_PACKAGE_RESTART = "android.intent.action.QUERY_PACKAGE_RESTART";
3858    field public static final String ACTION_RESOLVE_INSTANT_APP_PACKAGE = "android.intent.action.RESOLVE_INSTANT_APP_PACKAGE";
3859    field @RequiresPermission(android.Manifest.permission.REVIEW_ACCESSIBILITY_SERVICES) public static final String ACTION_REVIEW_ACCESSIBILITY_SERVICES = "android.intent.action.REVIEW_ACCESSIBILITY_SERVICES";
3860    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";
3861    field @RequiresPermission(android.Manifest.permission.GRANT_RUNTIME_PERMISSIONS) public static final String ACTION_REVIEW_ONGOING_PERMISSION_USAGE = "android.intent.action.REVIEW_ONGOING_PERMISSION_USAGE";
3862    field public static final String ACTION_REVIEW_PERMISSIONS = "android.intent.action.REVIEW_PERMISSIONS";
3863    field @RequiresPermission(android.Manifest.permission.GRANT_RUNTIME_PERMISSIONS) public static final String ACTION_REVIEW_PERMISSION_HISTORY = "android.intent.action.REVIEW_PERMISSION_HISTORY";
3864    field @RequiresPermission(android.Manifest.permission.GRANT_RUNTIME_PERMISSIONS) public static final String ACTION_REVIEW_PERMISSION_USAGE = "android.intent.action.REVIEW_PERMISSION_USAGE";
3865    field public static final String ACTION_ROLLBACK_COMMITTED = "android.intent.action.ROLLBACK_COMMITTED";
3866    field public static final String ACTION_SHOW_SUSPENDED_APP_DETAILS = "android.intent.action.SHOW_SUSPENDED_APP_DETAILS";
3867    field @Deprecated public static final String ACTION_SIM_STATE_CHANGED = "android.intent.action.SIM_STATE_CHANGED";
3868    field public static final String ACTION_SPLIT_CONFIGURATION_CHANGED = "android.intent.action.SPLIT_CONFIGURATION_CHANGED";
3869    field public static final String ACTION_UPGRADE_SETUP = "android.intent.action.UPGRADE_SETUP";
3870    field public static final String ACTION_USER_ADDED = "android.intent.action.USER_ADDED";
3871    field public static final String ACTION_USER_REMOVED = "android.intent.action.USER_REMOVED";
3872    field public static final String ACTION_USER_SWITCHED = "android.intent.action.USER_SWITCHED";
3873    field @RequiresPermission(android.Manifest.permission.START_VIEW_APP_FEATURES) public static final String ACTION_VIEW_APP_FEATURES = "android.intent.action.VIEW_APP_FEATURES";
3874    field @RequiresPermission(android.Manifest.permission.MANAGE_SENSOR_PRIVACY) public static final String ACTION_VIEW_SAFETY_CENTER_QS = "android.intent.action.VIEW_SAFETY_CENTER_QS";
3875    field public static final String ACTION_VOICE_ASSIST = "android.intent.action.VOICE_ASSIST";
3876    field public static final String CATEGORY_LEANBACK_SETTINGS = "android.intent.category.LEANBACK_SETTINGS";
3877    field public static final String EXTRA_CALLING_PACKAGE = "android.intent.extra.CALLING_PACKAGE";
3878    field public static final String EXTRA_FORCE_FACTORY_RESET = "android.intent.extra.FORCE_FACTORY_RESET";
3879    field public static final String EXTRA_INSTALL_RESULT = "android.intent.extra.INSTALL_RESULT";
3880    field public static final String EXTRA_INSTANT_APP_ACTION = "android.intent.extra.INSTANT_APP_ACTION";
3881    field public static final String EXTRA_INSTANT_APP_BUNDLES = "android.intent.extra.INSTANT_APP_BUNDLES";
3882    field public static final String EXTRA_INSTANT_APP_EXTRAS = "android.intent.extra.INSTANT_APP_EXTRAS";
3883    field public static final String EXTRA_INSTANT_APP_FAILURE = "android.intent.extra.INSTANT_APP_FAILURE";
3884    field public static final String EXTRA_INSTANT_APP_HOSTNAME = "android.intent.extra.INSTANT_APP_HOSTNAME";
3885    field public static final String EXTRA_INSTANT_APP_SUCCESS = "android.intent.extra.INSTANT_APP_SUCCESS";
3886    field public static final String EXTRA_INSTANT_APP_TOKEN = "android.intent.extra.INSTANT_APP_TOKEN";
3887    field public static final String EXTRA_LONG_VERSION_CODE = "android.intent.extra.LONG_VERSION_CODE";
3888    field public static final String EXTRA_ORIGINATING_UID = "android.intent.extra.ORIGINATING_UID";
3889    field public static final String EXTRA_PERMISSION_NAME = "android.intent.extra.PERMISSION_NAME";
3890    field public static final String EXTRA_REASON = "android.intent.extra.REASON";
3891    field public static final String EXTRA_REMOTE_CALLBACK = "android.intent.extra.REMOTE_CALLBACK";
3892    field public static final String EXTRA_RESULT_NEEDED = "android.intent.extra.RESULT_NEEDED";
3893    field public static final String EXTRA_ROLE_NAME = "android.intent.extra.ROLE_NAME";
3894    field public static final String EXTRA_SHOWING_ATTRIBUTION = "android.intent.extra.SHOWING_ATTRIBUTION";
3895    field public static final String EXTRA_UNINSTALL_ALL_USERS = "android.intent.extra.UNINSTALL_ALL_USERS";
3896    field public static final String EXTRA_UNKNOWN_INSTANT_APP = "android.intent.extra.UNKNOWN_INSTANT_APP";
3897    field public static final String EXTRA_USER_HANDLE = "android.intent.extra.user_handle";
3898    field public static final String EXTRA_VERIFICATION_BUNDLE = "android.intent.extra.VERIFICATION_BUNDLE";
3899    field public static final int FLAG_RECEIVER_INCLUDE_BACKGROUND = 16777216; // 0x1000000
3900    field public static final int FLAG_RECEIVER_REGISTERED_ONLY_BEFORE_BOOT = 67108864; // 0x4000000
3901    field public static final String METADATA_SETUP_VERSION = "android.SETUP_VERSION";
3902  }
3903
3904  public class IntentFilter implements android.os.Parcelable {
3905    method public final int getOrder();
3906    method public final void setOrder(int);
3907  }
3908
3909}
3910
3911package android.content.integrity {
3912
3913  public class AppIntegrityManager {
3914    method @NonNull public String getCurrentRuleSetProvider();
3915    method @NonNull public String getCurrentRuleSetVersion();
3916    method public void updateRuleSet(@NonNull android.content.integrity.RuleSet, @NonNull android.content.IntentSender);
3917    field public static final String EXTRA_STATUS = "android.content.integrity.extra.STATUS";
3918    field public static final int STATUS_FAILURE = 1; // 0x1
3919    field public static final int STATUS_SUCCESS = 0; // 0x0
3920  }
3921
3922  public abstract class IntegrityFormula {
3923    method @NonNull public static android.content.integrity.IntegrityFormula all(@NonNull android.content.integrity.IntegrityFormula...);
3924    method @NonNull public static android.content.integrity.IntegrityFormula any(@NonNull android.content.integrity.IntegrityFormula...);
3925    method @NonNull public static android.content.integrity.IntegrityFormula not(@NonNull android.content.integrity.IntegrityFormula);
3926  }
3927
3928  public static final class IntegrityFormula.Application {
3929    method @NonNull public static android.content.integrity.IntegrityFormula certificateLineageContains(@NonNull String);
3930    method @NonNull public static android.content.integrity.IntegrityFormula certificatesContain(@NonNull String);
3931    method @NonNull public static android.content.integrity.IntegrityFormula isPreInstalled();
3932    method @NonNull public static android.content.integrity.IntegrityFormula packageNameEquals(@NonNull String);
3933    method @NonNull public static android.content.integrity.IntegrityFormula versionCodeEquals(@NonNull long);
3934    method @NonNull public static android.content.integrity.IntegrityFormula versionCodeGreaterThan(@NonNull long);
3935    method @NonNull public static android.content.integrity.IntegrityFormula versionCodeGreaterThanOrEqualTo(@NonNull long);
3936  }
3937
3938  public static final class IntegrityFormula.Installer {
3939    method @NonNull public static android.content.integrity.IntegrityFormula certificatesContain(@NonNull String);
3940    method @NonNull public static android.content.integrity.IntegrityFormula notAllowedByManifest();
3941    method @NonNull public static android.content.integrity.IntegrityFormula packageNameEquals(@NonNull String);
3942  }
3943
3944  public static final class IntegrityFormula.SourceStamp {
3945    method @NonNull public static android.content.integrity.IntegrityFormula notTrusted();
3946    method @NonNull public static android.content.integrity.IntegrityFormula stampCertificateHashEquals(@NonNull String);
3947  }
3948
3949  public final class Rule implements android.os.Parcelable {
3950    ctor public Rule(@NonNull android.content.integrity.IntegrityFormula, int);
3951    method public int describeContents();
3952    method public int getEffect();
3953    method @NonNull public android.content.integrity.IntegrityFormula getFormula();
3954    method public void writeToParcel(@NonNull android.os.Parcel, int);
3955    field @NonNull public static final android.os.Parcelable.Creator<android.content.integrity.Rule> CREATOR;
3956    field public static final int DENY = 0; // 0x0
3957    field public static final int FORCE_ALLOW = 1; // 0x1
3958  }
3959
3960  public class RuleSet {
3961    method @NonNull public java.util.List<android.content.integrity.Rule> getRules();
3962    method @NonNull public String getVersion();
3963  }
3964
3965  public static class RuleSet.Builder {
3966    ctor public RuleSet.Builder();
3967    method @NonNull public android.content.integrity.RuleSet.Builder addRules(@NonNull java.util.List<android.content.integrity.Rule>);
3968    method @NonNull public android.content.integrity.RuleSet build();
3969    method @NonNull public android.content.integrity.RuleSet.Builder setVersion(@NonNull String);
3970  }
3971
3972}
3973
3974package android.content.om {
3975
3976  public final class OverlayInfo implements android.os.Parcelable {
3977    method @Nullable public String getCategory();
3978    method @NonNull public String getPackageName();
3979    method public int getUserId();
3980    method public boolean isEnabled();
3981  }
3982
3983  public class OverlayManager {
3984    method @Nullable public android.content.om.OverlayInfo getOverlayInfo(@NonNull String, @NonNull android.os.UserHandle);
3985    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);
3986    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;
3987    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;
3988  }
3989
3990}
3991
3992package android.content.pm {
3993
3994  public class ApplicationInfo extends android.content.pm.PackageItemInfo implements android.os.Parcelable {
3995    method @RequiresPermission(android.Manifest.permission.DELETE_PACKAGES) public boolean hasFragileUserData();
3996    method public boolean isEncryptionAware();
3997    method public boolean isInstantApp();
3998    method public boolean isOem();
3999    method @RequiresPermission(android.Manifest.permission.INSTALL_PACKAGES) public boolean isPrivilegedApp();
4000    method public boolean isProduct();
4001    method public boolean isVendor();
4002    field public String credentialProtectedDataDir;
4003    field public int targetSandboxVersion;
4004  }
4005
4006  public class CrossProfileApps {
4007    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);
4008    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);
4009  }
4010
4011  public class DataLoaderParams {
4012    method @NonNull public static final android.content.pm.DataLoaderParams forIncremental(@NonNull android.content.ComponentName, @NonNull String);
4013    method @NonNull public static final android.content.pm.DataLoaderParams forStreaming(@NonNull android.content.ComponentName, @NonNull String);
4014    method @NonNull public final String getArguments();
4015    method @NonNull public final android.content.ComponentName getComponentName();
4016    method @NonNull public final int getType();
4017  }
4018
4019  public final class InstallationFile {
4020    method public long getLengthBytes();
4021    method public int getLocation();
4022    method @Nullable public byte[] getMetadata();
4023    method @NonNull public String getName();
4024    method @Nullable public byte[] getSignature();
4025  }
4026
4027  public final class InstantAppInfo implements android.os.Parcelable {
4028    ctor public InstantAppInfo(android.content.pm.ApplicationInfo, String[], String[]);
4029    ctor public InstantAppInfo(String, CharSequence, String[], String[]);
4030    method public int describeContents();
4031    method @Nullable public android.content.pm.ApplicationInfo getApplicationInfo();
4032    method @Nullable public String[] getGrantedPermissions();
4033    method @NonNull public String getPackageName();
4034    method @Nullable public String[] getRequestedPermissions();
4035    method @NonNull public android.graphics.drawable.Drawable loadIcon(@NonNull android.content.pm.PackageManager);
4036    method @NonNull public CharSequence loadLabel(@NonNull android.content.pm.PackageManager);
4037    method public void writeToParcel(android.os.Parcel, int);
4038    field @NonNull public static final android.os.Parcelable.Creator<android.content.pm.InstantAppInfo> CREATOR;
4039  }
4040
4041  public final class InstantAppIntentFilter implements android.os.Parcelable {
4042    ctor public InstantAppIntentFilter(@Nullable String, @NonNull java.util.List<android.content.IntentFilter>);
4043    method public int describeContents();
4044    method public java.util.List<android.content.IntentFilter> getFilters();
4045    method public String getSplitName();
4046    method public void writeToParcel(android.os.Parcel, int);
4047    field @NonNull public static final android.os.Parcelable.Creator<android.content.pm.InstantAppIntentFilter> CREATOR;
4048  }
4049
4050  public final class InstantAppRequestInfo implements android.os.Parcelable {
4051    ctor public InstantAppRequestInfo(@NonNull android.content.Intent, @Nullable int[], @NonNull android.os.UserHandle, boolean, @NonNull String);
4052    method public int describeContents();
4053    method @Nullable public int[] getHostDigestPrefix();
4054    method @NonNull public android.content.Intent getIntent();
4055    method @NonNull public String getToken();
4056    method @NonNull public android.os.UserHandle getUserHandle();
4057    method public boolean isRequesterInstantApp();
4058    method public void writeToParcel(@NonNull android.os.Parcel, int);
4059    field @NonNull public static final android.os.Parcelable.Creator<android.content.pm.InstantAppRequestInfo> CREATOR;
4060  }
4061
4062  public final class InstantAppResolveInfo implements android.os.Parcelable {
4063    ctor public InstantAppResolveInfo(@NonNull android.content.pm.InstantAppResolveInfo.InstantAppDigest, @Nullable String, @Nullable java.util.List<android.content.pm.InstantAppIntentFilter>, int);
4064    ctor public InstantAppResolveInfo(@NonNull android.content.pm.InstantAppResolveInfo.InstantAppDigest, @Nullable String, @Nullable java.util.List<android.content.pm.InstantAppIntentFilter>, long, @Nullable android.os.Bundle);
4065    ctor public InstantAppResolveInfo(@NonNull String, @Nullable String, @Nullable java.util.List<android.content.pm.InstantAppIntentFilter>);
4066    ctor public InstantAppResolveInfo(@Nullable android.os.Bundle);
4067    method public int describeContents();
4068    method public byte[] getDigestBytes();
4069    method public int getDigestPrefix();
4070    method @Nullable public android.os.Bundle getExtras();
4071    method public java.util.List<android.content.pm.InstantAppIntentFilter> getIntentFilters();
4072    method public long getLongVersionCode();
4073    method public String getPackageName();
4074    method @Deprecated public int getVersionCode();
4075    method public boolean shouldLetInstallerDecide();
4076    method public void writeToParcel(android.os.Parcel, int);
4077    field @NonNull public static final android.os.Parcelable.Creator<android.content.pm.InstantAppResolveInfo> CREATOR;
4078  }
4079
4080  public static final class InstantAppResolveInfo.InstantAppDigest implements android.os.Parcelable {
4081    ctor public InstantAppResolveInfo.InstantAppDigest(@NonNull String);
4082    method public int describeContents();
4083    method public byte[][] getDigestBytes();
4084    method public int[] getDigestPrefix();
4085    method public void writeToParcel(android.os.Parcel, int);
4086    field @NonNull public static final android.os.Parcelable.Creator<android.content.pm.InstantAppResolveInfo.InstantAppDigest> CREATOR;
4087    field public static final android.content.pm.InstantAppResolveInfo.InstantAppDigest UNDEFINED;
4088  }
4089
4090  public final class IntentFilterVerificationInfo implements android.os.Parcelable {
4091    method public int describeContents();
4092    method public java.util.Set<java.lang.String> getDomains();
4093    method public String getPackageName();
4094    method public int getStatus();
4095    method public void writeToParcel(android.os.Parcel, int);
4096    field @NonNull public static final android.os.Parcelable.Creator<android.content.pm.IntentFilterVerificationInfo> CREATOR;
4097  }
4098
4099  public class LauncherApps {
4100    method @Nullable public android.content.pm.LauncherApps.AppUsageLimit getAppUsageLimit(@NonNull String, @NonNull android.os.UserHandle);
4101  }
4102
4103  public static final class LauncherApps.AppUsageLimit implements android.os.Parcelable {
4104    method public int describeContents();
4105    method public long getTotalUsageLimit();
4106    method public long getUsageRemaining();
4107    method public void writeToParcel(android.os.Parcel, int);
4108    field @NonNull public static final android.os.Parcelable.Creator<android.content.pm.LauncherApps.AppUsageLimit> CREATOR;
4109  }
4110
4111  public static class LauncherApps.ShortcutQuery {
4112    field public static final int FLAG_GET_PERSISTED_DATA = 4096; // 0x1000
4113    field @RequiresPermission(android.Manifest.permission.ACCESS_SHORTCUTS) public static final int FLAG_GET_PERSONS_DATA = 2048; // 0x800
4114  }
4115
4116  public class PackageInstaller {
4117    method @NonNull public android.content.pm.PackageInstaller.InstallInfo readInstallInfo(@NonNull java.io.File, int) throws android.content.pm.PackageInstaller.PackageParsingException;
4118    method @NonNull public android.content.pm.PackageInstaller.InstallInfo readInstallInfo(@NonNull android.os.ParcelFileDescriptor, @Nullable String, int) throws android.content.pm.PackageInstaller.PackageParsingException;
4119    method @RequiresPermission(android.Manifest.permission.INSTALL_PACKAGES) public void setPermissionsResult(int, boolean);
4120    field public static final String ACTION_CONFIRM_INSTALL = "android.content.pm.action.CONFIRM_INSTALL";
4121    field public static final String ACTION_CONFIRM_PRE_APPROVAL = "android.content.pm.action.CONFIRM_PRE_APPROVAL";
4122    field public static final int DATA_LOADER_TYPE_INCREMENTAL = 2; // 0x2
4123    field public static final int DATA_LOADER_TYPE_NONE = 0; // 0x0
4124    field public static final int DATA_LOADER_TYPE_STREAMING = 1; // 0x1
4125    field public static final String EXTRA_CALLBACK = "android.content.pm.extra.CALLBACK";
4126    field public static final String EXTRA_DATA_LOADER_TYPE = "android.content.pm.extra.DATA_LOADER_TYPE";
4127    field public static final String EXTRA_DELETE_FLAGS = "android.content.pm.extra.DELETE_FLAGS";
4128    field public static final String EXTRA_LEGACY_STATUS = "android.content.pm.extra.LEGACY_STATUS";
4129    field @Deprecated public static final String EXTRA_RESOLVED_BASE_PATH = "android.content.pm.extra.RESOLVED_BASE_PATH";
4130    field public static final int LOCATION_DATA_APP = 0; // 0x0
4131    field public static final int LOCATION_MEDIA_DATA = 2; // 0x2
4132    field public static final int LOCATION_MEDIA_OBB = 1; // 0x1
4133    field public static final int REASON_CONFIRM_PACKAGE_CHANGE = 0; // 0x0
4134    field public static final int REASON_OWNERSHIP_CHANGED = 1; // 0x1
4135    field public static final int REASON_REMIND_OWNERSHIP = 2; // 0x2
4136  }
4137
4138  public static class PackageInstaller.InstallInfo {
4139    method public long calculateInstalledSize(@NonNull android.content.pm.PackageInstaller.SessionParams) throws java.io.IOException;
4140    method public long calculateInstalledSize(@NonNull android.content.pm.PackageInstaller.SessionParams, @NonNull android.os.ParcelFileDescriptor) throws java.io.IOException;
4141    method public int getInstallLocation();
4142    method @NonNull public String getPackageName();
4143  }
4144
4145  public static class PackageInstaller.PackageParsingException extends java.lang.Exception {
4146    method public int getErrorCode();
4147  }
4148
4149  public static class PackageInstaller.Session implements java.io.Closeable {
4150    method @RequiresPermission("com.android.permission.USE_INSTALLER_V2") public void addFile(int, @NonNull String, long, @NonNull byte[], @Nullable byte[]);
4151    method @RequiresPermission(android.Manifest.permission.INSTALL_PACKAGES) public void commitTransferred(@NonNull android.content.IntentSender);
4152    method @Nullable @RequiresPermission("com.android.permission.USE_INSTALLER_V2") public android.content.pm.DataLoaderParams getDataLoaderParams();
4153    method @NonNull @RequiresPermission(android.Manifest.permission.ACCESS_INSTANT_APPS) public java.util.Set<java.lang.String> getPreVerifiedDomains();
4154    method @RequiresPermission("com.android.permission.USE_INSTALLER_V2") public void removeFile(int, @NonNull String);
4155    method @RequiresPermission(android.Manifest.permission.ACCESS_INSTANT_APPS) public void setPreVerifiedDomains(@NonNull java.util.Set<java.lang.String>);
4156  }
4157
4158  public static class PackageInstaller.SessionInfo implements android.os.Parcelable {
4159    method public boolean getAllocateAggressive();
4160    method @Deprecated public boolean getAllowDowngrade();
4161    method public int getAutoRevokePermissionsMode();
4162    method public boolean getEnableRollback();
4163    method @Nullable public String[] getGrantedRuntimePermissions();
4164    method public boolean getInstallAsFullApp(boolean);
4165    method public boolean getInstallAsInstantApp(boolean);
4166    method public boolean getInstallAsVirtualPreload();
4167    method public int getPendingUserActionReason();
4168    method public boolean getRequestDowngrade();
4169    method @Nullable @RequiresPermission(android.Manifest.permission.READ_INSTALLED_SESSION_PATHS) public String getResolvedBaseApkPath();
4170    method public int getRollbackDataPolicy();
4171    method @NonNull public java.util.Set<java.lang.String> getWhitelistedRestrictedPermissions();
4172  }
4173
4174  public static class PackageInstaller.SessionParams implements android.os.Parcelable {
4175    method @RequiresPermission(android.Manifest.permission.ALLOCATE_AGGRESSIVE) public void setAllocateAggressive(boolean);
4176    method @Deprecated public void setAllowDowngrade(boolean);
4177    method @RequiresPermission(allOf={android.Manifest.permission.INSTALL_PACKAGES, "com.android.permission.USE_INSTALLER_V2"}) public void setDataLoaderParams(@NonNull android.content.pm.DataLoaderParams);
4178    method public void setEnableRollback(boolean);
4179    method public void setEnableRollback(boolean, int);
4180    method @Deprecated @RequiresPermission(android.Manifest.permission.INSTALL_GRANT_RUNTIME_PERMISSIONS) public void setGrantedRuntimePermissions(String[]);
4181    method @RequiresPermission(android.Manifest.permission.INSTALL_PACKAGES) public void setInstallAsApex();
4182    method public void setInstallAsInstantApp(boolean);
4183    method public void setInstallAsVirtualPreload();
4184    method public void setRequestDowngrade(boolean);
4185    method @RequiresPermission(android.Manifest.permission.MANAGE_ROLLBACKS) public void setRollbackImpactLevel(int);
4186    method @RequiresPermission(android.Manifest.permission.MANAGE_ROLLBACKS) public void setRollbackLifetimeMillis(long);
4187    method @RequiresPermission(android.Manifest.permission.INSTALL_PACKAGES) public void setStaged();
4188  }
4189
4190  public class PackageItemInfo {
4191    method public static void forceSafeLabels();
4192    method @Deprecated @NonNull public CharSequence loadSafeLabel(@NonNull android.content.pm.PackageManager);
4193    method @NonNull public CharSequence loadSafeLabel(@NonNull android.content.pm.PackageManager, @FloatRange(from=0) float, int);
4194  }
4195
4196  public abstract class PackageManager {
4197    method @RequiresPermission("android.permission.OBSERVE_GRANT_REVOKE_PERMISSIONS") public abstract void addOnPermissionsChangeListener(@NonNull android.content.pm.PackageManager.OnPermissionsChangedListener);
4198    method public abstract boolean arePermissionsIndividuallyControlled();
4199    method @NonNull public boolean canUserUninstall(@NonNull String, @NonNull android.os.UserHandle);
4200    method @NonNull public abstract java.util.List<android.content.IntentFilter> getAllIntentFilters(@NonNull String);
4201    method @NonNull @RequiresPermission(android.Manifest.permission.GET_APP_METADATA) public android.os.PersistableBundle getAppMetadata(@NonNull String) throws android.content.pm.PackageManager.NameNotFoundException;
4202    method @RequiresPermission(android.Manifest.permission.GET_APP_METADATA) public int getAppMetadataSource(@NonNull String) throws android.content.pm.PackageManager.NameNotFoundException;
4203    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;
4204    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;
4205    method @NonNull public android.content.pm.dex.ArtManager getArtManager();
4206    method @NonNull @RequiresPermission(android.Manifest.permission.ACCESS_SHARED_LIBRARIES) public java.util.List<android.content.pm.SharedLibraryInfo> getDeclaredSharedLibraries(@NonNull String, int);
4207    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);
4208    method @Nullable @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS_FULL) public abstract String getDefaultBrowserPackageNameAsUser(int);
4209    method @Nullable @RequiresPermission(android.Manifest.permission.SET_HARMFUL_APP_WARNINGS) public CharSequence getHarmfulAppWarning(@NonNull String);
4210    method @Nullable public String getIncidentReportApproverPackageName();
4211    method @NonNull @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS_FULL) public abstract java.util.List<android.content.pm.PackageInfo> getInstalledPackagesAsUser(int, int);
4212    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);
4213    method @Nullable @RequiresPermission(android.Manifest.permission.ACCESS_INSTANT_APPS) public abstract android.graphics.drawable.Drawable getInstantAppIcon(String);
4214    method @Nullable public abstract android.content.ComponentName getInstantAppInstallerComponent();
4215    method @Nullable public abstract android.content.ComponentName getInstantAppResolverSettingsComponent();
4216    method @NonNull @RequiresPermission(android.Manifest.permission.ACCESS_INSTANT_APPS) public abstract java.util.List<android.content.pm.InstantAppInfo> getInstantApps();
4217    method @Deprecated @NonNull public abstract java.util.List<android.content.pm.IntentFilterVerificationInfo> getIntentFilterVerifications(@NonNull String);
4218    method @Deprecated @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS_FULL) public abstract int getIntentVerificationStatusAsUser(@NonNull String, int);
4219    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;
4220    method @NonNull public String getPermissionControllerPackageName();
4221    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);
4222    method @NonNull @RequiresPermission(android.Manifest.permission.SUSPEND_APPS) public String[] getUnsuspendablePackages(@NonNull String[]);
4223    method @RequiresPermission(android.Manifest.permission.GRANT_RUNTIME_PERMISSIONS) public abstract void grantRuntimePermission(@NonNull String, @NonNull String, @NonNull android.os.UserHandle);
4224    method @Deprecated public abstract int installExistingPackage(@NonNull String) throws android.content.pm.PackageManager.NameNotFoundException;
4225    method @Deprecated public abstract int installExistingPackage(@NonNull String, int) throws android.content.pm.PackageManager.NameNotFoundException;
4226    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);
4227    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);
4228    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);
4229    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);
4230    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);
4231    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);
4232    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);
4233    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);
4234    method public abstract void registerDexModule(@NonNull String, @Nullable android.content.pm.PackageManager.DexModuleRegisterCallback);
4235    method @RequiresPermission("android.permission.OBSERVE_GRANT_REVOKE_PERMISSIONS") public abstract void removeOnPermissionsChangeListener(@NonNull android.content.pm.PackageManager.OnPermissionsChangedListener);
4236    method public void replacePreferredActivity(@NonNull android.content.IntentFilter, int, @NonNull java.util.List<android.content.ComponentName>, @NonNull android.content.ComponentName);
4237    method @RequiresPermission(android.Manifest.permission.REVOKE_RUNTIME_PERMISSIONS) public abstract void revokeRuntimePermission(@NonNull String, @NonNull String, @NonNull android.os.UserHandle);
4238    method @RequiresPermission(android.Manifest.permission.REVOKE_RUNTIME_PERMISSIONS) public void revokeRuntimePermission(@NonNull String, @NonNull String, @NonNull android.os.UserHandle, @NonNull String);
4239    method public void sendDeviceCustomizationReadyBroadcast();
4240    method @RequiresPermission(allOf={android.Manifest.permission.SET_PREFERRED_APPLICATIONS, android.Manifest.permission.INTERACT_ACROSS_USERS_FULL}) public abstract boolean setDefaultBrowserPackageNameAsUser(@Nullable String, int);
4241    method @NonNull @RequiresPermission(android.Manifest.permission.SUSPEND_APPS) public String[] setDistractingPackageRestrictions(@NonNull String[], int);
4242    method @RequiresPermission(android.Manifest.permission.SET_HARMFUL_APP_WARNINGS) public void setHarmfulAppWarning(@NonNull String, @Nullable CharSequence);
4243    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);
4244    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);
4245    method @RequiresPermission(value=android.Manifest.permission.CHANGE_COMPONENT_ENABLED_STATE, conditional=true) public void setSyntheticAppDetailsActivityEnabled(@NonNull String, boolean);
4246    method public void setSystemAppState(@NonNull String, int);
4247    method @RequiresPermission(android.Manifest.permission.INSTALL_PACKAGES) public abstract void setUpdateAvailable(@NonNull String, boolean);
4248    method @NonNull public boolean shouldShowNewAppInstalledNotification();
4249    method @Deprecated @RequiresPermission(android.Manifest.permission.SET_PREFERRED_APPLICATIONS) public abstract boolean updateIntentVerificationStatusAsUser(@NonNull String, int, int);
4250    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);
4251    method @Deprecated @RequiresPermission(android.Manifest.permission.INTENT_FILTER_VERIFICATION_AGENT) public abstract void verifyIntentFilter(int, int, @NonNull java.util.List<java.lang.String>);
4252    field public static final String ACTION_REQUEST_PERMISSIONS = "android.content.pm.action.REQUEST_PERMISSIONS";
4253    field public static final String ACTION_REQUEST_PERMISSIONS_FOR_OTHER = "android.content.pm.action.REQUEST_PERMISSIONS_FOR_OTHER";
4254    field public static final int APP_METADATA_SOURCE_APK = 1; // 0x1
4255    field public static final int APP_METADATA_SOURCE_INSTALLER = 2; // 0x2
4256    field public static final int APP_METADATA_SOURCE_SYSTEM_IMAGE = 3; // 0x3
4257    field public static final int APP_METADATA_SOURCE_UNKNOWN = 0; // 0x0
4258    field public static final int DELETE_ALL_USERS = 2; // 0x2
4259    field public static final int DELETE_FAILED_ABORTED = -5; // 0xfffffffb
4260    field public static final int DELETE_FAILED_DEVICE_POLICY_MANAGER = -2; // 0xfffffffe
4261    field public static final int DELETE_FAILED_INTERNAL_ERROR = -1; // 0xffffffff
4262    field public static final int DELETE_FAILED_OWNER_BLOCKED = -4; // 0xfffffffc
4263    field public static final int DELETE_KEEP_DATA = 1; // 0x1
4264    field public static final int DELETE_SUCCEEDED = 1; // 0x1
4265    field public static final String EXTRA_REQUEST_PERMISSIONS_DEVICE_ID = "android.content.pm.extra.REQUEST_PERMISSIONS_DEVICE_ID";
4266    field public static final String EXTRA_REQUEST_PERMISSIONS_LEGACY_ACCESS_PERMISSION_NAMES = "android.content.pm.extra.REQUEST_PERMISSIONS_LEGACY_ACCESS_PERMISSION_NAMES";
4267    field public static final String EXTRA_REQUEST_PERMISSIONS_NAMES = "android.content.pm.extra.REQUEST_PERMISSIONS_NAMES";
4268    field public static final String EXTRA_REQUEST_PERMISSIONS_RESULTS = "android.content.pm.extra.REQUEST_PERMISSIONS_RESULTS";
4269    field public static final String FEATURE_BROADCAST_RADIO = "android.hardware.broadcastradio";
4270    field public static final String FEATURE_CONTEXT_HUB = "android.hardware.context_hub";
4271    field public static final String FEATURE_EROFS = "android.software.erofs";
4272    field public static final String FEATURE_EROFS_LEGACY = "android.software.erofs_legacy";
4273    field public static final String FEATURE_GAME_SERVICE = "android.software.game_service";
4274    field public static final String FEATURE_INCREMENTAL_DELIVERY = "android.software.incremental_delivery";
4275    field public static final String FEATURE_REBOOT_ESCROW = "android.hardware.reboot_escrow";
4276    field public static final String FEATURE_TELEPHONY_CARRIERLOCK = "android.hardware.telephony.carrierlock";
4277    field public static final String FEATURE_TELEPHONY_IMS_SINGLE_REGISTRATION = "android.hardware.telephony.ims.singlereg";
4278    field public static final String FEATURE_VIRTUALIZATION_FRAMEWORK = "android.software.virtualization_framework";
4279    field public static final int FLAGS_PERMISSION_RESERVED_PERMISSION_CONTROLLER = -268435456; // 0xf0000000
4280    field public static final int FLAG_PERMISSION_APPLY_RESTRICTION = 16384; // 0x4000
4281    field public static final int FLAG_PERMISSION_AUTO_REVOKED = 131072; // 0x20000
4282    field public static final int FLAG_PERMISSION_GRANTED_BY_DEFAULT = 32; // 0x20
4283    field public static final int FLAG_PERMISSION_GRANTED_BY_ROLE = 32768; // 0x8000
4284    field public static final int FLAG_PERMISSION_ONE_TIME = 65536; // 0x10000
4285    field public static final int FLAG_PERMISSION_POLICY_FIXED = 4; // 0x4
4286    field public static final int FLAG_PERMISSION_RESTRICTION_INSTALLER_EXEMPT = 2048; // 0x800
4287    field public static final int FLAG_PERMISSION_RESTRICTION_SYSTEM_EXEMPT = 4096; // 0x1000
4288    field public static final int FLAG_PERMISSION_RESTRICTION_UPGRADE_EXEMPT = 8192; // 0x2000
4289    field public static final int FLAG_PERMISSION_REVIEW_REQUIRED = 64; // 0x40
4290    field public static final int FLAG_PERMISSION_REVOKED_COMPAT = 8; // 0x8
4291    field @Deprecated public static final int FLAG_PERMISSION_REVOKE_ON_UPGRADE = 8; // 0x8
4292    field public static final int FLAG_PERMISSION_REVOKE_WHEN_REQUESTED = 128; // 0x80
4293    field public static final int FLAG_PERMISSION_SELECTED_LOCATION_ACCURACY = 524288; // 0x80000
4294    field public static final int FLAG_PERMISSION_SYSTEM_FIXED = 16; // 0x10
4295    field public static final int FLAG_PERMISSION_USER_FIXED = 2; // 0x2
4296    field public static final int FLAG_PERMISSION_USER_SENSITIVE_WHEN_DENIED = 512; // 0x200
4297    field public static final int FLAG_PERMISSION_USER_SENSITIVE_WHEN_GRANTED = 256; // 0x100
4298    field public static final int FLAG_PERMISSION_USER_SET = 1; // 0x1
4299    field public static final int INSTALL_FAILED_ALREADY_EXISTS = -1; // 0xffffffff
4300    field public static final int INSTALL_FAILED_CONFLICTING_PROVIDER = -13; // 0xfffffff3
4301    field public static final int INSTALL_FAILED_CONTAINER_ERROR = -18; // 0xffffffee
4302    field public static final int INSTALL_FAILED_CPU_ABI_INCOMPATIBLE = -16; // 0xfffffff0
4303    field public static final int INSTALL_FAILED_DEXOPT = -11; // 0xfffffff5
4304    field public static final int INSTALL_FAILED_DUPLICATE_PACKAGE = -5; // 0xfffffffb
4305    field public static final int INSTALL_FAILED_INSUFFICIENT_STORAGE = -4; // 0xfffffffc
4306    field public static final int INSTALL_FAILED_INTERNAL_ERROR = -110; // 0xffffff92
4307    field public static final int INSTALL_FAILED_INVALID_APK = -2; // 0xfffffffe
4308    field public static final int INSTALL_FAILED_INVALID_INSTALL_LOCATION = -19; // 0xffffffed
4309    field public static final int INSTALL_FAILED_INVALID_URI = -3; // 0xfffffffd
4310    field public static final int INSTALL_FAILED_MEDIA_UNAVAILABLE = -20; // 0xffffffec
4311    field public static final int INSTALL_FAILED_MISSING_FEATURE = -17; // 0xffffffef
4312    field public static final int INSTALL_FAILED_MISSING_SHARED_LIBRARY = -9; // 0xfffffff7
4313    field public static final int INSTALL_FAILED_NEWER_SDK = -14; // 0xfffffff2
4314    field public static final int INSTALL_FAILED_NO_SHARED_USER = -6; // 0xfffffffa
4315    field public static final int INSTALL_FAILED_OLDER_SDK = -12; // 0xfffffff4
4316    field public static final int INSTALL_FAILED_PACKAGE_CHANGED = -23; // 0xffffffe9
4317    field public static final int INSTALL_FAILED_PERMISSION_MODEL_DOWNGRADE = -26; // 0xffffffe6
4318    field public static final int INSTALL_FAILED_REPLACE_COULDNT_DELETE = -10; // 0xfffffff6
4319    field public static final int INSTALL_FAILED_SANDBOX_VERSION_DOWNGRADE = -27; // 0xffffffe5
4320    field public static final int INSTALL_FAILED_SHARED_USER_INCOMPATIBLE = -8; // 0xfffffff8
4321    field public static final int INSTALL_FAILED_TEST_ONLY = -15; // 0xfffffff1
4322    field public static final int INSTALL_FAILED_UPDATE_INCOMPATIBLE = -7; // 0xfffffff9
4323    field public static final int INSTALL_FAILED_VERIFICATION_FAILURE = -22; // 0xffffffea
4324    field public static final int INSTALL_FAILED_VERIFICATION_TIMEOUT = -21; // 0xffffffeb
4325    field public static final int INSTALL_PARSE_FAILED_BAD_MANIFEST = -101; // 0xffffff9b
4326    field public static final int INSTALL_PARSE_FAILED_BAD_PACKAGE_NAME = -106; // 0xffffff96
4327    field public static final int INSTALL_PARSE_FAILED_BAD_SHARED_USER_ID = -107; // 0xffffff95
4328    field public static final int INSTALL_PARSE_FAILED_CERTIFICATE_ENCODING = -105; // 0xffffff97
4329    field public static final int INSTALL_PARSE_FAILED_INCONSISTENT_CERTIFICATES = -104; // 0xffffff98
4330    field public static final int INSTALL_PARSE_FAILED_MANIFEST_EMPTY = -109; // 0xffffff93
4331    field public static final int INSTALL_PARSE_FAILED_MANIFEST_MALFORMED = -108; // 0xffffff94
4332    field public static final int INSTALL_PARSE_FAILED_NOT_APK = -100; // 0xffffff9c
4333    field public static final int INSTALL_PARSE_FAILED_NO_CERTIFICATES = -103; // 0xffffff99
4334    field public static final int INSTALL_PARSE_FAILED_UNEXPECTED_EXCEPTION = -102; // 0xffffff9a
4335    field public static final int INSTALL_SUCCEEDED = 1; // 0x1
4336    field @Deprecated public static final int INTENT_FILTER_DOMAIN_VERIFICATION_STATUS_ALWAYS = 2; // 0x2
4337    field @Deprecated public static final int INTENT_FILTER_DOMAIN_VERIFICATION_STATUS_ALWAYS_ASK = 4; // 0x4
4338    field @Deprecated public static final int INTENT_FILTER_DOMAIN_VERIFICATION_STATUS_ASK = 1; // 0x1
4339    field @Deprecated public static final int INTENT_FILTER_DOMAIN_VERIFICATION_STATUS_NEVER = 3; // 0x3
4340    field @Deprecated public static final int INTENT_FILTER_DOMAIN_VERIFICATION_STATUS_UNDEFINED = 0; // 0x0
4341    field @Deprecated public static final int INTENT_FILTER_VERIFICATION_FAILURE = -1; // 0xffffffff
4342    field @Deprecated public static final int INTENT_FILTER_VERIFICATION_SUCCESS = 1; // 0x1
4343    field @Deprecated public static final int MASK_PERMISSION_FLAGS = 255; // 0xff
4344    field public static final int MATCH_ANY_USER = 4194304; // 0x400000
4345    field @Deprecated public static final int MATCH_CLONE_PROFILE = 536870912; // 0x20000000
4346    field public static final long MATCH_CLONE_PROFILE_LONG = 17179869184L; // 0x400000000L
4347    field public static final int MATCH_FACTORY_ONLY = 2097152; // 0x200000
4348    field public static final int MATCH_HIDDEN_UNTIL_INSTALLED_COMPONENTS = 536870912; // 0x20000000
4349    field public static final int MATCH_INSTANT = 8388608; // 0x800000
4350    field public static final int MODULE_APEX_NAME = 1; // 0x1
4351    field public static final int RESTRICTION_HIDE_FROM_SUGGESTIONS = 1; // 0x1
4352    field public static final int RESTRICTION_HIDE_NOTIFICATIONS = 2; // 0x2
4353    field public static final int RESTRICTION_NONE = 0; // 0x0
4354    field public static final int ROLLBACK_DATA_POLICY_RESTORE = 0; // 0x0
4355    field public static final int ROLLBACK_DATA_POLICY_RETAIN = 2; // 0x2
4356    field public static final int ROLLBACK_DATA_POLICY_WIPE = 1; // 0x1
4357    field public static final int ROLLBACK_USER_IMPACT_HIGH = 1; // 0x1
4358    field public static final int ROLLBACK_USER_IMPACT_LOW = 0; // 0x0
4359    field public static final int ROLLBACK_USER_IMPACT_ONLY_MANUAL = 2; // 0x2
4360    field public static final int SYSTEM_APP_STATE_HIDDEN_UNTIL_INSTALLED_HIDDEN = 0; // 0x0
4361    field public static final int SYSTEM_APP_STATE_HIDDEN_UNTIL_INSTALLED_VISIBLE = 1; // 0x1
4362    field public static final int SYSTEM_APP_STATE_INSTALLED = 2; // 0x2
4363    field public static final int SYSTEM_APP_STATE_UNINSTALLED = 3; // 0x3
4364  }
4365
4366  public abstract static class PackageManager.DexModuleRegisterCallback {
4367    ctor public PackageManager.DexModuleRegisterCallback();
4368    method public abstract void onDexModuleRegistered(String, boolean, String);
4369  }
4370
4371  public static interface PackageManager.OnPermissionsChangedListener {
4372    method public void onPermissionsChanged(int);
4373    method public default void onPermissionsChanged(int, @NonNull String);
4374  }
4375
4376  public static final class PackageManager.UninstallCompleteCallback implements android.os.Parcelable {
4377    method public int describeContents();
4378    method public void onUninstallComplete(@NonNull String, int, @Nullable String);
4379    method public void writeToParcel(@NonNull android.os.Parcel, int);
4380    field @NonNull public static final android.os.Parcelable.Creator<android.content.pm.PackageManager.UninstallCompleteCallback> CREATOR;
4381  }
4382
4383  public class PermissionGroupInfo extends android.content.pm.PackageItemInfo implements android.os.Parcelable {
4384    field @StringRes public final int backgroundRequestDetailResourceId;
4385    field @StringRes public final int backgroundRequestResourceId;
4386    field @StringRes public final int requestDetailResourceId;
4387    field @StringRes public int requestRes;
4388  }
4389
4390  public class PermissionInfo extends android.content.pm.PackageItemInfo implements android.os.Parcelable {
4391    field public static final int FLAG_REMOVED = 2; // 0x2
4392    field public static final int PROTECTION_FLAG_APP_PREDICTOR = 2097152; // 0x200000
4393    field public static final int PROTECTION_FLAG_COMPANION = 8388608; // 0x800000
4394    field public static final int PROTECTION_FLAG_CONFIGURATOR = 524288; // 0x80000
4395    field @Deprecated public static final int PROTECTION_FLAG_DOCUMENTER = 262144; // 0x40000
4396    field public static final int PROTECTION_FLAG_INCIDENT_REPORT_APPROVER = 1048576; // 0x100000
4397    field public static final int PROTECTION_FLAG_KNOWN_SIGNER = 134217728; // 0x8000000
4398    field public static final int PROTECTION_FLAG_MODULE = 4194304; // 0x400000
4399    field public static final int PROTECTION_FLAG_OEM = 16384; // 0x4000
4400    field public static final int PROTECTION_FLAG_RECENTS = 33554432; // 0x2000000
4401    field @Deprecated public static final int PROTECTION_FLAG_RETAIL_DEMO = 16777216; // 0x1000000
4402    field public static final int PROTECTION_FLAG_ROLE = 67108864; // 0x4000000
4403    field public static final int PROTECTION_FLAG_SYSTEM_TEXT_CLASSIFIER = 65536; // 0x10000
4404    field public static final int PROTECTION_FLAG_VENDOR_PRIVILEGED = 32768; // 0x8000
4405    field @Deprecated public static final int PROTECTION_FLAG_WELLBEING = 131072; // 0x20000
4406    field @Nullable public final String backgroundPermission;
4407    field @NonNull public java.util.Set<java.lang.String> knownCerts;
4408    field @StringRes public int requestRes;
4409  }
4410
4411  public class ResolveInfo implements android.os.Parcelable {
4412    field public boolean handleAllWebDataURI;
4413  }
4414
4415  public final class ShortcutInfo implements android.os.Parcelable {
4416    method @Nullable public android.app.Person[] getPersons();
4417  }
4418
4419  public class ShortcutManager {
4420    method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_APP_PREDICTIONS) @WorkerThread public java.util.List<android.content.pm.ShortcutManager.ShareShortcutInfo> getShareTargets(@NonNull android.content.IntentFilter);
4421    method public boolean hasShareTargets(@NonNull String);
4422  }
4423
4424  public static final class ShortcutManager.ShareShortcutInfo implements android.os.Parcelable {
4425    method public int describeContents();
4426    method @NonNull public android.content.pm.ShortcutInfo getShortcutInfo();
4427    method @NonNull public android.content.ComponentName getTargetComponent();
4428    method public void writeToParcel(@NonNull android.os.Parcel, int);
4429    field @NonNull public static final android.os.Parcelable.Creator<android.content.pm.ShortcutManager.ShareShortcutInfo> CREATOR;
4430  }
4431
4432  public final class SuspendDialogInfo implements android.os.Parcelable {
4433    method public int describeContents();
4434    method public void writeToParcel(android.os.Parcel, int);
4435    field public static final int BUTTON_ACTION_MORE_DETAILS = 0; // 0x0
4436    field public static final int BUTTON_ACTION_UNSUSPEND = 1; // 0x1
4437    field @NonNull public static final android.os.Parcelable.Creator<android.content.pm.SuspendDialogInfo> CREATOR;
4438  }
4439
4440  public static final class SuspendDialogInfo.Builder {
4441    ctor public SuspendDialogInfo.Builder();
4442    method @NonNull public android.content.pm.SuspendDialogInfo build();
4443    method @NonNull public android.content.pm.SuspendDialogInfo.Builder setIcon(@DrawableRes int);
4444    method @NonNull public android.content.pm.SuspendDialogInfo.Builder setMessage(@NonNull String);
4445    method @NonNull public android.content.pm.SuspendDialogInfo.Builder setMessage(@StringRes int);
4446    method @NonNull public android.content.pm.SuspendDialogInfo.Builder setNeutralButtonAction(int);
4447    method @NonNull public android.content.pm.SuspendDialogInfo.Builder setNeutralButtonText(@StringRes int);
4448    method @NonNull public android.content.pm.SuspendDialogInfo.Builder setNeutralButtonText(@NonNull String);
4449    method @NonNull public android.content.pm.SuspendDialogInfo.Builder setTitle(@StringRes int);
4450    method @NonNull public android.content.pm.SuspendDialogInfo.Builder setTitle(@NonNull String);
4451  }
4452
4453  public final class UserProperties implements android.os.Parcelable {
4454    method public int describeContents();
4455    method public int getCrossProfileContentSharingStrategy();
4456    method public int getShowInQuietMode();
4457    method public int getShowInSharingSurfaces();
4458    method public boolean isCredentialShareableWithParent();
4459    method public boolean isMediaSharedWithParent();
4460    method public void writeToParcel(@NonNull android.os.Parcel, int);
4461    field @NonNull public static final android.os.Parcelable.Creator<android.content.pm.UserProperties> CREATOR;
4462    field public static final int CROSS_PROFILE_CONTENT_SHARING_DELEGATE_FROM_PARENT = 1; // 0x1
4463    field public static final int CROSS_PROFILE_CONTENT_SHARING_NO_DELEGATION = 0; // 0x0
4464    field public static final int CROSS_PROFILE_CONTENT_SHARING_UNKNOWN = -1; // 0xffffffff
4465    field public static final int SHOW_IN_QUIET_MODE_DEFAULT = 2; // 0x2
4466    field public static final int SHOW_IN_QUIET_MODE_HIDDEN = 1; // 0x1
4467    field public static final int SHOW_IN_QUIET_MODE_PAUSED = 0; // 0x0
4468    field public static final int SHOW_IN_QUIET_MODE_UNKNOWN = -1; // 0xffffffff
4469    field public static final int SHOW_IN_SHARING_SURFACES_NO = 2; // 0x2
4470    field public static final int SHOW_IN_SHARING_SURFACES_SEPARATE = 1; // 0x1
4471    field public static final int SHOW_IN_SHARING_SURFACES_UNKNOWN = -1; // 0xffffffff
4472    field public static final int SHOW_IN_SHARING_SURFACES_WITH_PARENT = 0; // 0x0
4473  }
4474
4475}
4476
4477package android.content.pm.dex {
4478
4479  public class ArtManager {
4480    method @RequiresPermission(allOf={android.Manifest.permission.READ_RUNTIME_PROFILES, android.Manifest.permission.PACKAGE_USAGE_STATS}) public boolean isRuntimeProfilingEnabled(int);
4481    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);
4482    field public static final int PROFILE_APPS = 0; // 0x0
4483    field public static final int PROFILE_BOOT_IMAGE = 1; // 0x1
4484    field public static final int SNAPSHOT_FAILED_CODE_PATH_NOT_FOUND = 1; // 0x1
4485    field public static final int SNAPSHOT_FAILED_INTERNAL_ERROR = 2; // 0x2
4486    field public static final int SNAPSHOT_FAILED_PACKAGE_NOT_FOUND = 0; // 0x0
4487  }
4488
4489  public abstract static class ArtManager.SnapshotRuntimeProfileCallback {
4490    ctor public ArtManager.SnapshotRuntimeProfileCallback();
4491    method public abstract void onError(int);
4492    method public abstract void onSuccess(android.os.ParcelFileDescriptor);
4493  }
4494
4495}
4496
4497package android.content.pm.permission {
4498
4499  @Deprecated public final class RuntimePermissionPresentationInfo implements android.os.Parcelable {
4500    ctor @Deprecated public RuntimePermissionPresentationInfo(CharSequence, boolean, boolean);
4501    method @Deprecated public int describeContents();
4502    method @Deprecated @NonNull public CharSequence getLabel();
4503    method @Deprecated public boolean isGranted();
4504    method @Deprecated public boolean isStandard();
4505    method @Deprecated public void writeToParcel(android.os.Parcel, int);
4506    field @Deprecated @NonNull public static final android.os.Parcelable.Creator<android.content.pm.permission.RuntimePermissionPresentationInfo> CREATOR;
4507  }
4508
4509}
4510
4511package android.content.pm.verify.domain {
4512
4513  public final class DomainOwner implements android.os.Parcelable {
4514    ctor public DomainOwner(@NonNull String, boolean);
4515    method public int describeContents();
4516    method @NonNull public String getPackageName();
4517    method public boolean isOverrideable();
4518    method public void writeToParcel(@NonNull android.os.Parcel, int);
4519    field @NonNull public static final android.os.Parcelable.Creator<android.content.pm.verify.domain.DomainOwner> CREATOR;
4520  }
4521
4522  public final class DomainVerificationInfo implements android.os.Parcelable {
4523    method public int describeContents();
4524    method @NonNull public java.util.Map<java.lang.String,java.lang.Integer> getHostToStateMap();
4525    method @NonNull public java.util.UUID getIdentifier();
4526    method @NonNull public String getPackageName();
4527    method public void writeToParcel(@NonNull android.os.Parcel, int);
4528    field @NonNull public static final android.os.Parcelable.Creator<android.content.pm.verify.domain.DomainVerificationInfo> CREATOR;
4529    field public static final int STATE_FIRST_VERIFIER_DEFINED = 1024; // 0x400
4530    field public static final int STATE_MODIFIABLE_UNVERIFIED = 3; // 0x3
4531    field public static final int STATE_MODIFIABLE_VERIFIED = 4; // 0x4
4532    field public static final int STATE_NO_RESPONSE = 0; // 0x0
4533    field public static final int STATE_SUCCESS = 1; // 0x1
4534    field public static final int STATE_UNMODIFIABLE = 2; // 0x2
4535  }
4536
4537  public final class DomainVerificationManager {
4538    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;
4539    method @NonNull @RequiresPermission(android.Manifest.permission.UPDATE_DOMAIN_VERIFICATION_USER_SELECTION) public java.util.SortedSet<android.content.pm.verify.domain.DomainOwner> getOwnersForDomain(@NonNull String);
4540    method @NonNull public java.util.Map<java.lang.String,java.util.List<android.content.UriRelativeFilterGroup>> getUriRelativeFilterGroups(@NonNull String, @NonNull java.util.List<java.lang.String>);
4541    method @NonNull @RequiresPermission(android.Manifest.permission.DOMAIN_VERIFICATION_AGENT) public java.util.List<java.lang.String> queryValidVerificationPackageNames();
4542    method @RequiresPermission(android.Manifest.permission.UPDATE_DOMAIN_VERIFICATION_USER_SELECTION) public void setDomainVerificationLinkHandlingAllowed(@NonNull String, boolean) throws android.content.pm.PackageManager.NameNotFoundException;
4543    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;
4544    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;
4545    method @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>>);
4546    field public static final int ERROR_DOMAIN_SET_ID_INVALID = 1; // 0x1
4547    field public static final int ERROR_UNABLE_TO_APPROVE = 3; // 0x3
4548    field public static final int ERROR_UNKNOWN_DOMAIN = 2; // 0x2
4549    field public static final String EXTRA_VERIFICATION_REQUEST = "android.content.pm.verify.domain.extra.VERIFICATION_REQUEST";
4550    field public static final int STATUS_OK = 0; // 0x0
4551  }
4552
4553  public final class DomainVerificationRequest implements android.os.Parcelable {
4554    method public int describeContents();
4555    method @NonNull public java.util.Set<java.lang.String> getPackageNames();
4556    method public void writeToParcel(@NonNull android.os.Parcel, int);
4557    field @NonNull public static final android.os.Parcelable.Creator<android.content.pm.verify.domain.DomainVerificationRequest> CREATOR;
4558  }
4559
4560  public final class DomainVerificationUserState implements android.os.Parcelable {
4561    method @NonNull public java.util.UUID getIdentifier();
4562  }
4563
4564}
4565
4566package android.content.rollback {
4567
4568  public final class PackageRollbackInfo implements android.os.Parcelable {
4569    method public int describeContents();
4570    method @NonNull public String getPackageName();
4571    method @NonNull public android.content.pm.VersionedPackage getVersionRolledBackFrom();
4572    method @NonNull public android.content.pm.VersionedPackage getVersionRolledBackTo();
4573    method public void writeToParcel(android.os.Parcel, int);
4574    field @NonNull public static final android.os.Parcelable.Creator<android.content.rollback.PackageRollbackInfo> CREATOR;
4575  }
4576
4577  public final class RollbackInfo implements android.os.Parcelable {
4578    method public int describeContents();
4579    method @NonNull public java.util.List<android.content.pm.VersionedPackage> getCausePackages();
4580    method public int getCommittedSessionId();
4581    method @NonNull public java.util.List<android.content.rollback.PackageRollbackInfo> getPackages();
4582    method public int getRollbackId();
4583    method public boolean isStaged();
4584    method public void writeToParcel(android.os.Parcel, int);
4585    field @NonNull public static final android.os.Parcelable.Creator<android.content.rollback.RollbackInfo> CREATOR;
4586  }
4587
4588  public final class RollbackManager {
4589    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);
4590    method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_ROLLBACKS, "android.permission.TEST_MANAGE_ROLLBACKS"}) public java.util.List<android.content.rollback.RollbackInfo> getAvailableRollbacks();
4591    method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_ROLLBACKS, "android.permission.TEST_MANAGE_ROLLBACKS"}) public java.util.List<android.content.rollback.RollbackInfo> getRecentlyCommittedRollbacks();
4592    field public static final String EXTRA_STATUS = "android.content.rollback.extra.STATUS";
4593    field public static final String EXTRA_STATUS_MESSAGE = "android.content.rollback.extra.STATUS_MESSAGE";
4594    field public static final int STATUS_FAILURE = 1; // 0x1
4595    field public static final int STATUS_FAILURE_INSTALL = 3; // 0x3
4596    field public static final int STATUS_FAILURE_ROLLBACK_UNAVAILABLE = 2; // 0x2
4597    field public static final int STATUS_SUCCESS = 0; // 0x0
4598  }
4599
4600}
4601
4602package android.credentials.selection {
4603
4604  public final class AuthenticationEntry implements android.os.Parcelable {
4605    ctor public AuthenticationEntry(@NonNull String, @NonNull String, @NonNull android.app.slice.Slice, int, @NonNull android.content.Intent);
4606    method public int describeContents();
4607    method @Nullable public android.content.Intent getFrameworkExtrasIntent();
4608    method @NonNull public String getKey();
4609    method @NonNull public android.app.slice.Slice getSlice();
4610    method @NonNull public int getStatus();
4611    method @NonNull public String getSubkey();
4612    method public void writeToParcel(@NonNull android.os.Parcel, int);
4613    field @NonNull public static final android.os.Parcelable.Creator<android.credentials.selection.AuthenticationEntry> CREATOR;
4614    field public static final int STATUS_LOCKED = 0; // 0x0
4615    field public static final int STATUS_UNLOCKED_BUT_EMPTY_LESS_RECENT = 1; // 0x1
4616    field public static final int STATUS_UNLOCKED_BUT_EMPTY_MOST_RECENT = 2; // 0x2
4617  }
4618
4619  public final class CancelSelectionRequest implements android.os.Parcelable {
4620    ctor public CancelSelectionRequest(@NonNull android.credentials.selection.RequestToken, boolean, @NonNull String);
4621    method public int describeContents();
4622    method @NonNull public String getPackageName();
4623    method @NonNull public android.credentials.selection.RequestToken getRequestToken();
4624    method public boolean shouldShowCancellationExplanation();
4625    method public void writeToParcel(@NonNull android.os.Parcel, int);
4626    field @NonNull public static final android.os.Parcelable.Creator<android.credentials.selection.CancelSelectionRequest> CREATOR;
4627  }
4628
4629  public final class CreateCredentialProviderInfo {
4630    method @NonNull public String getProviderName();
4631    method @Nullable public android.credentials.selection.Entry getRemoteEntry();
4632    method @NonNull public java.util.List<android.credentials.selection.Entry> getSaveEntries();
4633  }
4634
4635  public static final class CreateCredentialProviderInfo.Builder {
4636    ctor public CreateCredentialProviderInfo.Builder(@NonNull String);
4637    method @NonNull public android.credentials.selection.CreateCredentialProviderInfo build();
4638    method @NonNull public android.credentials.selection.CreateCredentialProviderInfo.Builder setRemoteEntry(@Nullable android.credentials.selection.Entry);
4639    method @NonNull public android.credentials.selection.CreateCredentialProviderInfo.Builder setSaveEntries(@NonNull java.util.List<android.credentials.selection.Entry>);
4640  }
4641
4642  public final class DisabledProviderInfo {
4643    ctor public DisabledProviderInfo(@NonNull String);
4644    method @NonNull public String getProviderName();
4645  }
4646
4647  public final class Entry implements android.os.Parcelable {
4648    ctor public Entry(@NonNull String, @NonNull String, @NonNull android.app.slice.Slice, @NonNull android.content.Intent);
4649    method public int describeContents();
4650    method @Nullable public android.content.Intent getFrameworkExtrasIntent();
4651    method @NonNull public String getKey();
4652    method @NonNull public android.app.slice.Slice getSlice();
4653    method @NonNull public String getSubkey();
4654    method public void writeToParcel(@NonNull android.os.Parcel, int);
4655    field @NonNull public static final android.os.Parcelable.Creator<android.credentials.selection.Entry> CREATOR;
4656  }
4657
4658  public final class FailureResult {
4659    ctor public FailureResult(int, @Nullable String);
4660    method public int getErrorCode();
4661    method @Nullable public String getErrorMessage();
4662    method public static void sendFailureResult(@NonNull android.os.ResultReceiver, @NonNull android.credentials.selection.FailureResult);
4663    field public static final int ERROR_CODE_CANCELED_AND_LAUNCHED_SETTINGS = 2; // 0x2
4664    field public static final int ERROR_CODE_DIALOG_CANCELED_BY_USER = 1; // 0x1
4665    field public static final int ERROR_CODE_UI_FAILURE = 0; // 0x0
4666  }
4667
4668  public final class GetCredentialProviderInfo {
4669    method @NonNull public java.util.List<android.credentials.selection.Entry> getActionChips();
4670    method @NonNull public java.util.List<android.credentials.selection.AuthenticationEntry> getAuthenticationEntries();
4671    method @NonNull public java.util.List<android.credentials.selection.Entry> getCredentialEntries();
4672    method @NonNull public String getProviderName();
4673    method @Nullable public android.credentials.selection.Entry getRemoteEntry();
4674  }
4675
4676  public static final class GetCredentialProviderInfo.Builder {
4677    ctor public GetCredentialProviderInfo.Builder(@NonNull String);
4678    method @NonNull public android.credentials.selection.GetCredentialProviderInfo build();
4679    method @NonNull public android.credentials.selection.GetCredentialProviderInfo.Builder setActionChips(@NonNull java.util.List<android.credentials.selection.Entry>);
4680    method @NonNull public android.credentials.selection.GetCredentialProviderInfo.Builder setAuthenticationEntries(@NonNull java.util.List<android.credentials.selection.AuthenticationEntry>);
4681    method @NonNull public android.credentials.selection.GetCredentialProviderInfo.Builder setCredentialEntries(@NonNull java.util.List<android.credentials.selection.Entry>);
4682    method @NonNull public android.credentials.selection.GetCredentialProviderInfo.Builder setRemoteEntry(@Nullable android.credentials.selection.Entry);
4683  }
4684
4685  public final class IntentHelper {
4686    method @Nullable public static android.credentials.selection.CancelSelectionRequest extractCancelUiRequest(@NonNull android.content.Intent);
4687    method @NonNull public static java.util.List<android.credentials.selection.CreateCredentialProviderInfo> extractCreateCredentialProviderInfoList(@NonNull android.content.Intent);
4688    method @NonNull public static java.util.List<android.credentials.selection.DisabledProviderInfo> extractDisabledProviderInfoList(@NonNull android.content.Intent);
4689    method @NonNull public static java.util.List<android.credentials.selection.GetCredentialProviderInfo> extractGetCredentialProviderInfoList(@NonNull android.content.Intent);
4690    method @Nullable public static android.credentials.selection.RequestInfo extractRequestInfo(@NonNull android.content.Intent);
4691    method @Nullable public static android.os.ResultReceiver extractResultReceiver(@NonNull android.content.Intent);
4692  }
4693
4694  public final class ProviderPendingIntentResponse implements android.os.Parcelable {
4695    ctor public ProviderPendingIntentResponse(int, @Nullable android.content.Intent);
4696    method public int describeContents();
4697    method public int getResultCode();
4698    method @Nullable public android.content.Intent getResultData();
4699    method public void writeToParcel(@NonNull android.os.Parcel, int);
4700    field @NonNull public static final android.os.Parcelable.Creator<android.credentials.selection.ProviderPendingIntentResponse> CREATOR;
4701  }
4702
4703  public final class RequestInfo implements android.os.Parcelable {
4704    method public int describeContents();
4705    method @Nullable public android.credentials.CreateCredentialRequest getCreateCredentialRequest();
4706    method @NonNull public java.util.List<java.lang.String> getDefaultProviderIds();
4707    method @Nullable public android.credentials.GetCredentialRequest getGetCredentialRequest();
4708    method @NonNull public String getPackageName();
4709    method @NonNull public java.util.List<java.lang.String> getRegistryProviderIds();
4710    method @NonNull public android.credentials.selection.RequestToken getRequestToken();
4711    method @NonNull public String getType();
4712    method public boolean hasPermissionToOverrideDefault();
4713    method public boolean isShowAllOptionsRequested();
4714    method public void writeToParcel(@NonNull android.os.Parcel, int);
4715    field @NonNull public static final android.os.Parcelable.Creator<android.credentials.selection.RequestInfo> CREATOR;
4716    field @NonNull public static final String TYPE_CREATE = "android.credentials.selection.TYPE_CREATE";
4717    field @NonNull public static final String TYPE_GET = "android.credentials.selection.TYPE_GET";
4718    field @NonNull public static final String TYPE_UNDEFINED = "android.credentials.selection.TYPE_UNDEFINED";
4719  }
4720
4721  public final class RequestToken {
4722  }
4723
4724  public final class UserSelectionResult {
4725    ctor public UserSelectionResult(@NonNull String, @NonNull String, @NonNull String, @Nullable android.credentials.selection.ProviderPendingIntentResponse);
4726    method @NonNull public String getEntryKey();
4727    method @NonNull public String getEntrySubkey();
4728    method @Nullable public android.credentials.selection.ProviderPendingIntentResponse getPendingIntentProviderResponse();
4729    method @NonNull public String getProviderId();
4730    method public static void sendUserSelectionResult(@NonNull android.os.ResultReceiver, @NonNull android.credentials.selection.UserSelectionResult);
4731  }
4732
4733}
4734
4735package android.database {
4736
4737  public abstract class ContentObserver {
4738    method public void onChange(boolean, @NonNull java.util.Collection<android.net.Uri>, int, @NonNull android.os.UserHandle);
4739  }
4740
4741}
4742
4743package android.debug {
4744
4745  public class AdbManager {
4746    method @RequiresPermission(android.Manifest.permission.MANAGE_DEBUGGING) public boolean isAdbWifiQrSupported();
4747    method @RequiresPermission(android.Manifest.permission.MANAGE_DEBUGGING) public boolean isAdbWifiSupported();
4748  }
4749
4750}
4751
4752package android.graphics.fonts {
4753
4754  public final class FontFamilyUpdateRequest {
4755    method @NonNull public java.util.List<android.graphics.fonts.FontFamilyUpdateRequest.FontFamily> getFontFamilies();
4756    method @NonNull public java.util.List<android.graphics.fonts.FontFileUpdateRequest> getFontFileUpdateRequests();
4757  }
4758
4759  public static final class FontFamilyUpdateRequest.Builder {
4760    ctor public FontFamilyUpdateRequest.Builder();
4761    method @NonNull public android.graphics.fonts.FontFamilyUpdateRequest.Builder addFontFamily(@NonNull android.graphics.fonts.FontFamilyUpdateRequest.FontFamily);
4762    method @NonNull public android.graphics.fonts.FontFamilyUpdateRequest.Builder addFontFileUpdateRequest(@NonNull android.graphics.fonts.FontFileUpdateRequest);
4763    method @NonNull public android.graphics.fonts.FontFamilyUpdateRequest build();
4764  }
4765
4766  public static final class FontFamilyUpdateRequest.Font {
4767    method @NonNull public java.util.List<android.graphics.fonts.FontVariationAxis> getAxes();
4768    method @IntRange(from=0) public int getIndex();
4769    method @NonNull public String getPostScriptName();
4770    method @NonNull public android.graphics.fonts.FontStyle getStyle();
4771  }
4772
4773  public static final class FontFamilyUpdateRequest.Font.Builder {
4774    ctor public FontFamilyUpdateRequest.Font.Builder(@NonNull String, @NonNull android.graphics.fonts.FontStyle);
4775    method @NonNull public android.graphics.fonts.FontFamilyUpdateRequest.Font build();
4776    method @NonNull public android.graphics.fonts.FontFamilyUpdateRequest.Font.Builder setAxes(@NonNull java.util.List<android.graphics.fonts.FontVariationAxis>);
4777    method @NonNull public android.graphics.fonts.FontFamilyUpdateRequest.Font.Builder setIndex(@IntRange(from=0) int);
4778  }
4779
4780  public static final class FontFamilyUpdateRequest.FontFamily {
4781    method @NonNull public java.util.List<android.graphics.fonts.FontFamilyUpdateRequest.Font> getFonts();
4782    method @NonNull public String getName();
4783  }
4784
4785  public static final class FontFamilyUpdateRequest.FontFamily.Builder {
4786    ctor public FontFamilyUpdateRequest.FontFamily.Builder(@NonNull String, @NonNull java.util.List<android.graphics.fonts.FontFamilyUpdateRequest.Font>);
4787    method @NonNull public android.graphics.fonts.FontFamilyUpdateRequest.FontFamily.Builder addFont(@NonNull android.graphics.fonts.FontFamilyUpdateRequest.Font);
4788    method @NonNull public android.graphics.fonts.FontFamilyUpdateRequest.FontFamily build();
4789  }
4790
4791  public final class FontFileUpdateRequest {
4792    ctor public FontFileUpdateRequest(@NonNull android.os.ParcelFileDescriptor, @NonNull byte[]);
4793    method @NonNull public android.os.ParcelFileDescriptor getParcelFileDescriptor();
4794    method @NonNull public byte[] getSignature();
4795  }
4796
4797  public class FontManager {
4798    method @NonNull @RequiresPermission(android.Manifest.permission.UPDATE_FONTS) public android.text.FontConfig getFontConfig();
4799    method @RequiresPermission(android.Manifest.permission.UPDATE_FONTS) public int updateFontFamily(@NonNull android.graphics.fonts.FontFamilyUpdateRequest, @IntRange(from=0) int);
4800    field public static final int RESULT_ERROR_DOWNGRADING = -5; // 0xfffffffb
4801    field public static final int RESULT_ERROR_FAILED_TO_WRITE_FONT_FILE = -1; // 0xffffffff
4802    field public static final int RESULT_ERROR_FAILED_UPDATE_CONFIG = -6; // 0xfffffffa
4803    field public static final int RESULT_ERROR_FONT_NOT_FOUND = -9; // 0xfffffff7
4804    field public static final int RESULT_ERROR_FONT_UPDATER_DISABLED = -7; // 0xfffffff9
4805    field public static final int RESULT_ERROR_INVALID_FONT_FILE = -3; // 0xfffffffd
4806    field public static final int RESULT_ERROR_INVALID_FONT_NAME = -4; // 0xfffffffc
4807    field public static final int RESULT_ERROR_VERIFICATION_FAILURE = -2; // 0xfffffffe
4808    field public static final int RESULT_ERROR_VERSION_MISMATCH = -8; // 0xfffffff8
4809    field public static final int RESULT_SUCCESS = 0; // 0x0
4810  }
4811
4812}
4813
4814package android.hardware {
4815
4816  public final class Sensor {
4817    method public java.util.UUID getUuid();
4818    method public boolean isDataInjectionSupported();
4819    field public static final String STRING_TYPE_DYNAMIC_SENSOR_META = "android.sensor.dynamic_sensor_meta";
4820    field public static final String STRING_TYPE_WRIST_TILT_GESTURE = "android.sensor.wrist_tilt_gesture";
4821    field public static final int TYPE_DYNAMIC_SENSOR_META = 32; // 0x20
4822    field public static final int TYPE_WRIST_TILT_GESTURE = 26; // 0x1a
4823  }
4824
4825  public abstract class SensorManager {
4826    method public boolean initDataInjection(boolean);
4827    method public boolean injectSensorData(android.hardware.Sensor, float[], int, long);
4828  }
4829
4830  public final class SensorPrivacyManager {
4831    method @RequiresPermission(android.Manifest.permission.OBSERVE_SENSOR_PRIVACY) public void addSensorPrivacyListener(int, @NonNull android.hardware.SensorPrivacyManager.OnSensorPrivacyChangedListener);
4832    method @RequiresPermission(android.Manifest.permission.OBSERVE_SENSOR_PRIVACY) public void addSensorPrivacyListener(int, @NonNull java.util.concurrent.Executor, @NonNull android.hardware.SensorPrivacyManager.OnSensorPrivacyChangedListener);
4833    method @RequiresPermission(android.Manifest.permission.OBSERVE_SENSOR_PRIVACY) public void addSensorPrivacyListener(@NonNull android.hardware.SensorPrivacyManager.OnSensorPrivacyChangedListener);
4834    method @RequiresPermission(android.Manifest.permission.OBSERVE_SENSOR_PRIVACY) public void addSensorPrivacyListener(@NonNull java.util.concurrent.Executor, @NonNull android.hardware.SensorPrivacyManager.OnSensorPrivacyChangedListener);
4835    method @RequiresPermission(android.Manifest.permission.OBSERVE_SENSOR_PRIVACY) public boolean areAnySensorPrivacyTogglesEnabled(int);
4836    method @NonNull @RequiresPermission(android.Manifest.permission.OBSERVE_SENSOR_PRIVACY) public java.util.List<java.lang.String> getCameraPrivacyAllowlist();
4837    method @RequiresPermission(android.Manifest.permission.OBSERVE_SENSOR_PRIVACY) public int getSensorPrivacyState(int, int);
4838    method @RequiresPermission(android.Manifest.permission.OBSERVE_SENSOR_PRIVACY) public boolean isCameraPrivacyEnabled(@NonNull String);
4839    method @Deprecated @RequiresPermission(android.Manifest.permission.OBSERVE_SENSOR_PRIVACY) public boolean isSensorPrivacyEnabled(int);
4840    method @RequiresPermission(android.Manifest.permission.OBSERVE_SENSOR_PRIVACY) public boolean isSensorPrivacyEnabled(int, int);
4841    method @RequiresPermission(android.Manifest.permission.OBSERVE_SENSOR_PRIVACY) public void removeSensorPrivacyListener(int, @NonNull android.hardware.SensorPrivacyManager.OnSensorPrivacyChangedListener);
4842    method @RequiresPermission(android.Manifest.permission.OBSERVE_SENSOR_PRIVACY) public void removeSensorPrivacyListener(@NonNull android.hardware.SensorPrivacyManager.OnSensorPrivacyChangedListener);
4843    method @RequiresPermission(android.Manifest.permission.MANAGE_SENSOR_PRIVACY) public void setSensorPrivacy(int, boolean);
4844    method @RequiresPermission(android.Manifest.permission.MANAGE_SENSOR_PRIVACY) public void setSensorPrivacyState(int, int);
4845  }
4846
4847  public static interface SensorPrivacyManager.OnSensorPrivacyChangedListener {
4848    method public default void onSensorPrivacyChanged(@NonNull android.hardware.SensorPrivacyManager.OnSensorPrivacyChangedListener.SensorPrivacyChangedParams);
4849    method @Deprecated public void onSensorPrivacyChanged(int, boolean);
4850  }
4851
4852  public static class SensorPrivacyManager.OnSensorPrivacyChangedListener.SensorPrivacyChangedParams {
4853    method public int getSensor();
4854    method public int getState();
4855    method public int getToggleType();
4856    method public boolean isEnabled();
4857  }
4858
4859  public static class SensorPrivacyManager.StateTypes {
4860    field public static final int DISABLED = 2; // 0x2
4861    field public static final int ENABLED = 1; // 0x1
4862    field public static final int ENABLED_EXCEPT_ALLOWLISTED_APPS = 3; // 0x3
4863  }
4864
4865}
4866
4867package android.hardware.biometrics {
4868
4869  public static interface BiometricManager.Authenticators {
4870    field @RequiresPermission(android.Manifest.permission.WRITE_DEVICE_CONFIG) public static final int BIOMETRIC_CONVENIENCE = 4095; // 0xfff
4871    field @RequiresPermission(android.Manifest.permission.WRITE_DEVICE_CONFIG) public static final int EMPTY_SET = 0; // 0x0
4872  }
4873
4874}
4875
4876package android.hardware.camera2 {
4877
4878  public abstract class CameraDevice implements java.lang.AutoCloseable {
4879    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;
4880    field public static final int SESSION_OPERATION_MODE_CONSTRAINED_HIGH_SPEED = 1; // 0x1
4881    field public static final int SESSION_OPERATION_MODE_NORMAL = 0; // 0x0
4882    field public static final int SESSION_OPERATION_MODE_VENDOR_START = 32768; // 0x8000
4883  }
4884
4885  public final class CameraManager {
4886    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;
4887  }
4888
4889  public abstract static class CameraManager.AvailabilityCallback {
4890    method @RequiresPermission(android.Manifest.permission.CAMERA_OPEN_CLOSE_LISTENER) public void onCameraClosed(@NonNull String);
4891    method @RequiresPermission(android.Manifest.permission.CAMERA_OPEN_CLOSE_LISTENER) public void onCameraOpened(@NonNull String, @NonNull String);
4892  }
4893
4894}
4895
4896package android.hardware.camera2.extension {
4897
4898  public abstract class AdvancedExtender {
4899    ctor public AdvancedExtender(@NonNull android.hardware.camera2.CameraManager);
4900    method @NonNull public abstract java.util.List<android.hardware.camera2.CaptureRequest.Key> getAvailableCaptureRequestKeys(@NonNull String);
4901    method @NonNull public abstract java.util.List<android.hardware.camera2.CaptureResult.Key> getAvailableCaptureResultKeys(@NonNull String);
4902    method @NonNull public abstract java.util.List<android.util.Pair<android.hardware.camera2.CameraCharacteristics.Key,java.lang.Object>> getAvailableCharacteristicsKeyValues();
4903    method public long getMetadataVendorId(@NonNull String);
4904    method @NonNull public abstract android.hardware.camera2.extension.SessionProcessor getSessionProcessor();
4905    method @NonNull public abstract java.util.Map<java.lang.Integer,java.util.List<android.util.Size>> getSupportedCaptureOutputResolutions(@NonNull String);
4906    method @NonNull public abstract java.util.Map<java.lang.Integer,java.util.List<android.util.Size>> getSupportedPreviewOutputResolutions(@NonNull String);
4907    method public abstract void initialize(@NonNull String, @NonNull android.hardware.camera2.extension.CharacteristicsMap);
4908    method public abstract boolean isExtensionAvailable(@NonNull String, @NonNull android.hardware.camera2.extension.CharacteristicsMap);
4909  }
4910
4911  public abstract class CameraExtensionService extends android.app.Service {
4912    ctor protected CameraExtensionService();
4913    method @NonNull public final android.os.IBinder onBind(@Nullable android.content.Intent);
4914    method @NonNull public abstract android.hardware.camera2.extension.AdvancedExtender onInitializeAdvancedExtension(int);
4915    method public abstract boolean onRegisterClient(@NonNull android.os.IBinder);
4916    method public abstract void onUnregisterClient(@NonNull android.os.IBinder);
4917  }
4918
4919  public final class CameraOutputSurface {
4920    ctor public CameraOutputSurface(@NonNull android.view.Surface, @NonNull android.util.Size);
4921    method public int getColorSpace();
4922    method public long getDynamicRangeProfile();
4923    method public int getImageFormat();
4924    method @NonNull public android.util.Size getSize();
4925    method @NonNull public android.view.Surface getSurface();
4926    method public void setDynamicRangeProfile(long);
4927  }
4928
4929  public class CharacteristicsMap {
4930    method @Nullable public android.hardware.camera2.CameraCharacteristics get(@NonNull String);
4931    method @NonNull public java.util.Set<java.lang.String> getCameraIds();
4932  }
4933
4934  public class ExtensionConfiguration {
4935    ctor public ExtensionConfiguration(int, int, @NonNull java.util.List<android.hardware.camera2.extension.ExtensionOutputConfiguration>, @Nullable android.hardware.camera2.CaptureRequest);
4936    method public void setColorSpace(int);
4937  }
4938
4939  public class ExtensionOutputConfiguration {
4940    ctor public ExtensionOutputConfiguration(@NonNull java.util.List<android.hardware.camera2.extension.CameraOutputSurface>, int, @Nullable String, int);
4941  }
4942
4943  public final class RequestProcessor {
4944    method public void abortCaptures();
4945    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;
4946    method public void stopRepeating();
4947    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;
4948    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;
4949  }
4950
4951  public static final class RequestProcessor.Request {
4952    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);
4953    method @NonNull public java.util.List<android.util.Pair<android.hardware.camera2.CaptureRequest.Key,java.lang.Object>> getParameters();
4954  }
4955
4956  public static interface RequestProcessor.RequestCallback {
4957    method public void onCaptureBufferLost(@NonNull android.hardware.camera2.extension.RequestProcessor.Request, long, int);
4958    method public void onCaptureCompleted(@NonNull android.hardware.camera2.extension.RequestProcessor.Request, @Nullable android.hardware.camera2.TotalCaptureResult);
4959    method public void onCaptureFailed(@NonNull android.hardware.camera2.extension.RequestProcessor.Request, @NonNull android.hardware.camera2.CaptureFailure);
4960    method public void onCaptureProgressed(@NonNull android.hardware.camera2.extension.RequestProcessor.Request, @NonNull android.hardware.camera2.CaptureResult);
4961    method public void onCaptureSequenceAborted(int);
4962    method public void onCaptureSequenceCompleted(int, long);
4963    method public void onCaptureStarted(@NonNull android.hardware.camera2.extension.RequestProcessor.Request, long, long);
4964  }
4965
4966  public abstract class SessionProcessor {
4967    ctor public SessionProcessor();
4968    method public abstract void deInitSession(@NonNull android.os.IBinder);
4969    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);
4970    method public abstract void onCaptureSessionEnd();
4971    method public abstract void onCaptureSessionStart(@NonNull android.hardware.camera2.extension.RequestProcessor, @NonNull String);
4972    method public abstract void setParameters(@NonNull android.hardware.camera2.CaptureRequest);
4973    method public abstract int startMultiFrameCapture(@NonNull java.util.concurrent.Executor, @NonNull android.hardware.camera2.extension.SessionProcessor.CaptureCallback);
4974    method public abstract int startRepeating(@NonNull java.util.concurrent.Executor, @NonNull android.hardware.camera2.extension.SessionProcessor.CaptureCallback);
4975    method public abstract int startTrigger(@NonNull android.hardware.camera2.CaptureRequest, @NonNull java.util.concurrent.Executor, @NonNull android.hardware.camera2.extension.SessionProcessor.CaptureCallback);
4976    method public abstract void stopRepeating();
4977  }
4978
4979  public static interface SessionProcessor.CaptureCallback {
4980    method public void onCaptureCompleted(long, int, @NonNull java.util.Map<android.hardware.camera2.CaptureResult.Key,java.lang.Object>);
4981    method public void onCaptureFailed(int, int);
4982    method public void onCaptureProcessStarted(int);
4983    method public void onCaptureSequenceAborted(int);
4984    method public void onCaptureSequenceCompleted(int);
4985    method public void onCaptureStarted(int, long);
4986  }
4987
4988}
4989
4990package android.hardware.camera2.params {
4991
4992  public final class OutputConfiguration implements android.os.Parcelable {
4993    ctor public OutputConfiguration(@NonNull android.view.Surface, int);
4994    ctor public OutputConfiguration(int, @NonNull android.view.Surface, int);
4995    method public int getRotation();
4996    field public static final int ROTATION_0 = 0; // 0x0
4997    field public static final int ROTATION_180 = 2; // 0x2
4998    field public static final int ROTATION_270 = 3; // 0x3
4999    field public static final int ROTATION_90 = 1; // 0x1
5000  }
5001
5002}
5003
5004package android.hardware.devicestate {
5005
5006  public final class DeviceState {
5007    method @IntRange(from=0x0) public int getIdentifier();
5008    method @NonNull public String getName();
5009    method public boolean hasProperties(@NonNull int...);
5010    method public boolean hasProperty(int);
5011    field public static final int PROPERTY_EMULATED_ONLY = 10; // 0xa
5012    field public static final int PROPERTY_EXTENDED_DEVICE_STATE_EXTERNAL_DISPLAY = 15; // 0xf
5013    field public static final int PROPERTY_FEATURE_DUAL_DISPLAY_INTERNAL_DEFAULT = 17; // 0x11
5014    field public static final int PROPERTY_FEATURE_REAR_DISPLAY = 16; // 0x10
5015    field public static final int PROPERTY_FOLDABLE_DISPLAY_CONFIGURATION_INNER_PRIMARY = 12; // 0xc
5016    field public static final int PROPERTY_FOLDABLE_DISPLAY_CONFIGURATION_OUTER_PRIMARY = 11; // 0xb
5017    field public static final int PROPERTY_FOLDABLE_HARDWARE_CONFIGURATION_FOLD_IN_CLOSED = 1; // 0x1
5018    field public static final int PROPERTY_FOLDABLE_HARDWARE_CONFIGURATION_FOLD_IN_HALF_OPEN = 2; // 0x2
5019    field public static final int PROPERTY_FOLDABLE_HARDWARE_CONFIGURATION_FOLD_IN_OPEN = 3; // 0x3
5020    field public static final int PROPERTY_POWER_CONFIGURATION_TRIGGER_SLEEP = 13; // 0xd
5021    field public static final int PROPERTY_POWER_CONFIGURATION_TRIGGER_WAKE = 14; // 0xe
5022  }
5023
5024  public final class DeviceStateManager {
5025    method @NonNull public java.util.List<android.hardware.devicestate.DeviceState> getSupportedDeviceStates();
5026    method public void registerCallback(@NonNull java.util.concurrent.Executor, @NonNull android.hardware.devicestate.DeviceStateManager.DeviceStateCallback);
5027    method public void unregisterCallback(@NonNull android.hardware.devicestate.DeviceStateManager.DeviceStateCallback);
5028  }
5029
5030  public static interface DeviceStateManager.DeviceStateCallback {
5031    method public void onDeviceStateChanged(@NonNull android.hardware.devicestate.DeviceState);
5032    method public default void onSupportedStatesChanged(@NonNull java.util.List<android.hardware.devicestate.DeviceState>);
5033  }
5034
5035}
5036
5037package android.hardware.display {
5038
5039  public final class AmbientBrightnessDayStats implements android.os.Parcelable {
5040    method public int describeContents();
5041    method public float[] getBucketBoundaries();
5042    method public java.time.LocalDate getLocalDate();
5043    method public float[] getStats();
5044    method public void writeToParcel(android.os.Parcel, int);
5045    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.display.AmbientBrightnessDayStats> CREATOR;
5046  }
5047
5048  public final class BrightnessChangeEvent implements android.os.Parcelable {
5049    method public int describeContents();
5050    method public void writeToParcel(android.os.Parcel, int);
5051    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.display.BrightnessChangeEvent> CREATOR;
5052    field public final float batteryLevel;
5053    field public final float brightness;
5054    field public final long colorSampleDuration;
5055    field public final int colorTemperature;
5056    field @Nullable public final long[] colorValueBuckets;
5057    field public final boolean isDefaultBrightnessConfig;
5058    field public final boolean isUserSetBrightness;
5059    field public final float lastBrightness;
5060    field public final long[] luxTimestamps;
5061    field public final float[] luxValues;
5062    field public final boolean nightMode;
5063    field public final String packageName;
5064    field public final float powerBrightnessFactor;
5065    field public final boolean reduceBrightColors;
5066    field public final float reduceBrightColorsOffset;
5067    field public final int reduceBrightColorsStrength;
5068    field public final long timeStamp;
5069    field @NonNull public final String uniqueDisplayId;
5070  }
5071
5072  public final class BrightnessConfiguration implements android.os.Parcelable {
5073    method public int describeContents();
5074    method @Nullable public android.hardware.display.BrightnessCorrection getCorrectionByCategory(int);
5075    method @Nullable public android.hardware.display.BrightnessCorrection getCorrectionByPackageName(@NonNull String);
5076    method public android.util.Pair<float[],float[]> getCurve();
5077    method public float getShortTermModelLowerLuxMultiplier();
5078    method public long getShortTermModelTimeoutMillis();
5079    method public float getShortTermModelUpperLuxMultiplier();
5080    method public boolean shouldCollectColorSamples();
5081    method public void writeToParcel(android.os.Parcel, int);
5082    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.display.BrightnessConfiguration> CREATOR;
5083    field public static final long SHORT_TERM_TIMEOUT_UNSET = -1L; // 0xffffffffffffffffL
5084  }
5085
5086  public static class BrightnessConfiguration.Builder {
5087    ctor public BrightnessConfiguration.Builder(float[], float[]);
5088    method @NonNull public android.hardware.display.BrightnessConfiguration.Builder addCorrectionByCategory(int, @NonNull android.hardware.display.BrightnessCorrection);
5089    method @NonNull public android.hardware.display.BrightnessConfiguration.Builder addCorrectionByPackageName(@NonNull String, @NonNull android.hardware.display.BrightnessCorrection);
5090    method @NonNull public android.hardware.display.BrightnessConfiguration build();
5091    method public int getMaxCorrectionsByCategory();
5092    method public int getMaxCorrectionsByPackageName();
5093    method @NonNull public android.hardware.display.BrightnessConfiguration.Builder setDescription(@Nullable String);
5094    method @NonNull public android.hardware.display.BrightnessConfiguration.Builder setShortTermModelLowerLuxMultiplier(@FloatRange(from=0.0f) float);
5095    method @NonNull public android.hardware.display.BrightnessConfiguration.Builder setShortTermModelTimeoutMillis(long);
5096    method @NonNull public android.hardware.display.BrightnessConfiguration.Builder setShortTermModelUpperLuxMultiplier(@FloatRange(from=0.0f) float);
5097    method @NonNull public android.hardware.display.BrightnessConfiguration.Builder setShouldCollectColorSamples(boolean);
5098  }
5099
5100  public final class BrightnessCorrection implements android.os.Parcelable {
5101    method @FloatRange(from=0.0) public float apply(@FloatRange(from=0.0) float);
5102    method @NonNull public static android.hardware.display.BrightnessCorrection createScaleAndTranslateLog(float, float);
5103    method public int describeContents();
5104    method public void writeToParcel(android.os.Parcel, int);
5105    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.display.BrightnessCorrection> CREATOR;
5106  }
5107
5108  public final class ColorDisplayManager {
5109    method @RequiresPermission(android.Manifest.permission.CONTROL_DISPLAY_COLOR_TRANSFORMS) public int getNightDisplayAutoMode();
5110    method @RequiresPermission(android.Manifest.permission.CONTROL_DISPLAY_COLOR_TRANSFORMS) public int getTransformCapabilities();
5111    method @RequiresPermission(android.Manifest.permission.CONTROL_DISPLAY_COLOR_TRANSFORMS) public boolean setAppSaturationLevel(@NonNull String, @IntRange(from=0, to=100) int);
5112    method @RequiresPermission(android.Manifest.permission.CONTROL_DISPLAY_COLOR_TRANSFORMS) public boolean setNightDisplayAutoMode(int);
5113    method @RequiresPermission(android.Manifest.permission.CONTROL_DISPLAY_COLOR_TRANSFORMS) public boolean setNightDisplayCustomEndTime(@NonNull java.time.LocalTime);
5114    method @RequiresPermission(android.Manifest.permission.CONTROL_DISPLAY_COLOR_TRANSFORMS) public boolean setNightDisplayCustomStartTime(@NonNull java.time.LocalTime);
5115    method @RequiresPermission(android.Manifest.permission.CONTROL_DISPLAY_COLOR_TRANSFORMS) public boolean setSaturationLevel(@IntRange(from=0, to=100) int);
5116    field public static final int AUTO_MODE_CUSTOM_TIME = 1; // 0x1
5117    field public static final int AUTO_MODE_DISABLED = 0; // 0x0
5118    field public static final int AUTO_MODE_TWILIGHT = 2; // 0x2
5119    field public static final int CAPABILITY_HARDWARE_ACCELERATION_GLOBAL = 2; // 0x2
5120    field public static final int CAPABILITY_HARDWARE_ACCELERATION_PER_APP = 4; // 0x4
5121    field public static final int CAPABILITY_NONE = 0; // 0x0
5122    field public static final int CAPABILITY_PROTECTED_CONTENT = 1; // 0x1
5123  }
5124
5125  public final class DisplayManager {
5126    method @Nullable @RequiresPermission("android.permission.CAPTURE_VIDEO_OUTPUT") public static android.hardware.display.VirtualDisplay createVirtualDisplay(@NonNull String, int, int, int, @Nullable android.view.Surface);
5127    method @RequiresPermission(android.Manifest.permission.ACCESS_AMBIENT_LIGHT_STATS) public java.util.List<android.hardware.display.AmbientBrightnessDayStats> getAmbientBrightnessStats();
5128    method @RequiresPermission(android.Manifest.permission.CONFIGURE_DISPLAY_BRIGHTNESS) public android.hardware.display.BrightnessConfiguration getBrightnessConfiguration();
5129    method @Nullable @RequiresPermission(android.Manifest.permission.CONFIGURE_DISPLAY_BRIGHTNESS) public android.hardware.display.BrightnessConfiguration getBrightnessConfigurationForDisplay(@NonNull String);
5130    method @RequiresPermission(android.Manifest.permission.BRIGHTNESS_SLIDER_USAGE) public java.util.List<android.hardware.display.BrightnessChangeEvent> getBrightnessEvents();
5131    method @Nullable @RequiresPermission(android.Manifest.permission.CONFIGURE_DISPLAY_BRIGHTNESS) public android.hardware.display.BrightnessConfiguration getDefaultBrightnessConfiguration();
5132    method public android.util.Pair<float[],float[]> getMinimumBrightnessCurve();
5133    method public android.graphics.Point getStableDisplaySize();
5134    method @RequiresPermission(android.Manifest.permission.CONFIGURE_DISPLAY_BRIGHTNESS) public void setBrightnessConfiguration(android.hardware.display.BrightnessConfiguration);
5135    method @RequiresPermission(android.Manifest.permission.CONFIGURE_DISPLAY_BRIGHTNESS) public void setBrightnessConfigurationForDisplay(@NonNull android.hardware.display.BrightnessConfiguration, @NonNull String);
5136    method @Deprecated @RequiresPermission(android.Manifest.permission.CONTROL_DISPLAY_SATURATION) public void setSaturationLevel(float);
5137    field public static final int VIRTUAL_DISPLAY_FLAG_ROTATES_WITH_CONTENT = 128; // 0x80
5138    field public static final int VIRTUAL_DISPLAY_FLAG_STEAL_TOP_FOCUS_DISABLED = 65536; // 0x10000
5139    field public static final int VIRTUAL_DISPLAY_FLAG_TRUSTED = 1024; // 0x400
5140  }
5141
5142  public final class VirtualDisplayConfig implements android.os.Parcelable {
5143    method public boolean isHomeSupported();
5144  }
5145
5146  public static final class VirtualDisplayConfig.Builder {
5147    method @NonNull public android.hardware.display.VirtualDisplayConfig.Builder setHomeSupported(boolean);
5148  }
5149
5150}
5151
5152package android.hardware.hdmi {
5153
5154  public abstract class HdmiClient {
5155    method public android.hardware.hdmi.HdmiDeviceInfo getActiveSource();
5156    method public void selectDevice(int, @NonNull java.util.concurrent.Executor, @NonNull android.hardware.hdmi.HdmiClient.OnDeviceSelectedListener);
5157    method public void sendKeyEvent(int, boolean);
5158    method public void sendVendorCommand(int, byte[], boolean);
5159    method public void setVendorCommandListener(@NonNull android.hardware.hdmi.HdmiControlManager.VendorCommandListener);
5160    method public void setVendorCommandListener(@NonNull android.hardware.hdmi.HdmiControlManager.VendorCommandListener, int);
5161  }
5162
5163  public static interface HdmiClient.OnDeviceSelectedListener {
5164    method public void onDeviceSelected(int, int);
5165  }
5166
5167  public final class HdmiControlManager {
5168    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public void addHdmiCecEnabledChangeListener(@NonNull android.hardware.hdmi.HdmiControlManager.CecSettingChangeListener);
5169    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public void addHdmiCecEnabledChangeListener(@NonNull java.util.concurrent.Executor, @NonNull android.hardware.hdmi.HdmiControlManager.CecSettingChangeListener);
5170    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public void addHotplugEventListener(android.hardware.hdmi.HdmiControlManager.HotplugEventListener);
5171    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public void addHotplugEventListener(@NonNull java.util.concurrent.Executor, @NonNull android.hardware.hdmi.HdmiControlManager.HotplugEventListener);
5172    method @NonNull @RequiresPermission(android.Manifest.permission.HDMI_CEC) public java.util.List<java.lang.Integer> getAllowedCecSettingIntValues(@NonNull String);
5173    method @NonNull @RequiresPermission(android.Manifest.permission.HDMI_CEC) public java.util.List<java.lang.String> getAllowedCecSettingStringValues(@NonNull String);
5174    method @Nullable public android.hardware.hdmi.HdmiClient getClient(int);
5175    method @NonNull public java.util.List<android.hardware.hdmi.HdmiDeviceInfo> getConnectedDevices();
5176    method @NonNull @RequiresPermission(android.Manifest.permission.HDMI_CEC) public int getEarcEnabled();
5177    method @NonNull @RequiresPermission(android.Manifest.permission.HDMI_CEC) public int getHdmiCecEnabled();
5178    method @NonNull @RequiresPermission(android.Manifest.permission.HDMI_CEC) public int getHdmiCecVersion();
5179    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public int getHdmiCecVolumeControlEnabled();
5180    method public int getPhysicalAddress();
5181    method @Nullable public android.hardware.hdmi.HdmiPlaybackClient getPlaybackClient();
5182    method @NonNull public java.util.List<android.hardware.hdmi.HdmiPortInfo> getPortInfo();
5183    method @NonNull @RequiresPermission(android.Manifest.permission.HDMI_CEC) public String getPowerControlMode();
5184    method @NonNull @RequiresPermission(android.Manifest.permission.HDMI_CEC) public String getPowerStateChangeOnActiveSourceLost();
5185    method @NonNull @RequiresPermission(android.Manifest.permission.HDMI_CEC) public int getRoutingControl();
5186    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public int getSadPresenceInQuery(@NonNull String);
5187    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public int getSoundbarMode();
5188    method @Nullable public android.hardware.hdmi.HdmiSwitchClient getSwitchClient();
5189    method @NonNull @RequiresPermission(android.Manifest.permission.HDMI_CEC) public int getSystemAudioControl();
5190    method @NonNull @RequiresPermission(android.Manifest.permission.HDMI_CEC) public int getSystemAudioModeMuting();
5191    method @Nullable public android.hardware.hdmi.HdmiTvClient getTvClient();
5192    method @NonNull @RequiresPermission(android.Manifest.permission.HDMI_CEC) public int getTvSendStandbyOnSleep();
5193    method @NonNull @RequiresPermission(android.Manifest.permission.HDMI_CEC) public int getTvWakeOnOneTouchPlay();
5194    method @NonNull @RequiresPermission(android.Manifest.permission.HDMI_CEC) public java.util.List<java.lang.String> getUserCecSettings();
5195    method public boolean isDeviceConnected(@NonNull android.hardware.hdmi.HdmiDeviceInfo);
5196    method public void powerOffDevice(@NonNull android.hardware.hdmi.HdmiDeviceInfo);
5197    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public void removeHdmiCecEnabledChangeListener(@NonNull android.hardware.hdmi.HdmiControlManager.CecSettingChangeListener);
5198    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public void removeHotplugEventListener(android.hardware.hdmi.HdmiControlManager.HotplugEventListener);
5199    method public void setActiveSource(@NonNull android.hardware.hdmi.HdmiDeviceInfo);
5200    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public void setEarcEnabled(@NonNull int);
5201    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public void setHdmiCecEnabled(@NonNull int);
5202    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public void setHdmiCecVersion(@NonNull int);
5203    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public void setHdmiCecVolumeControlEnabled(int);
5204    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public void setPowerControlMode(@NonNull String);
5205    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public void setPowerStateChangeOnActiveSourceLost(@NonNull String);
5206    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public void setRoutingControl(@NonNull int);
5207    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public void setSadPresenceInQuery(@NonNull String, int);
5208    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public void setSadsPresenceInQuery(@NonNull java.util.List<java.lang.String>, int);
5209    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public void setSoundbarMode(int);
5210    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public void setStandbyMode(boolean);
5211    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public void setSystemAudioControl(@NonNull int);
5212    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public void setSystemAudioModeMuting(@NonNull int);
5213    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public void setTvSendStandbyOnSleep(@NonNull int);
5214    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public void setTvWakeOnOneTouchPlay(@NonNull int);
5215    field public static final String ACTION_OSD_MESSAGE = "android.hardware.hdmi.action.OSD_MESSAGE";
5216    field public static final int AVR_VOLUME_MUTED = 101; // 0x65
5217    field public static final String CEC_SETTING_NAME_HDMI_CEC_ENABLED = "hdmi_cec_enabled";
5218    field public static final String CEC_SETTING_NAME_HDMI_CEC_VERSION = "hdmi_cec_version";
5219    field public static final String CEC_SETTING_NAME_POWER_CONTROL_MODE = "power_control_mode";
5220    field public static final String CEC_SETTING_NAME_POWER_STATE_CHANGE_ON_ACTIVE_SOURCE_LOST = "power_state_change_on_active_source_lost";
5221    field public static final String CEC_SETTING_NAME_QUERY_SAD_AAC = "query_sad_aac";
5222    field public static final String CEC_SETTING_NAME_QUERY_SAD_ATRAC = "query_sad_atrac";
5223    field public static final String CEC_SETTING_NAME_QUERY_SAD_DD = "query_sad_dd";
5224    field public static final String CEC_SETTING_NAME_QUERY_SAD_DDP = "query_sad_ddp";
5225    field public static final String CEC_SETTING_NAME_QUERY_SAD_DST = "query_sad_dst";
5226    field public static final String CEC_SETTING_NAME_QUERY_SAD_DTS = "query_sad_dts";
5227    field public static final String CEC_SETTING_NAME_QUERY_SAD_DTSHD = "query_sad_dtshd";
5228    field public static final String CEC_SETTING_NAME_QUERY_SAD_LPCM = "query_sad_lpcm";
5229    field public static final String CEC_SETTING_NAME_QUERY_SAD_MAX = "query_sad_max";
5230    field public static final String CEC_SETTING_NAME_QUERY_SAD_MP3 = "query_sad_mp3";
5231    field public static final String CEC_SETTING_NAME_QUERY_SAD_MPEG1 = "query_sad_mpeg1";
5232    field public static final String CEC_SETTING_NAME_QUERY_SAD_MPEG2 = "query_sad_mpeg2";
5233    field public static final String CEC_SETTING_NAME_QUERY_SAD_ONEBITAUDIO = "query_sad_onebitaudio";
5234    field public static final String CEC_SETTING_NAME_QUERY_SAD_TRUEHD = "query_sad_truehd";
5235    field public static final String CEC_SETTING_NAME_QUERY_SAD_WMAPRO = "query_sad_wmapro";
5236    field public static final String CEC_SETTING_NAME_ROUTING_CONTROL = "routing_control";
5237    field public static final String CEC_SETTING_NAME_SOUNDBAR_MODE = "soundbar_mode";
5238    field public static final String CEC_SETTING_NAME_SYSTEM_AUDIO_CONTROL = "system_audio_control";
5239    field public static final String CEC_SETTING_NAME_SYSTEM_AUDIO_MODE_MUTING = "system_audio_mode_muting";
5240    field public static final String CEC_SETTING_NAME_TV_SEND_STANDBY_ON_SLEEP = "tv_send_standby_on_sleep";
5241    field public static final String CEC_SETTING_NAME_TV_WAKE_ON_ONE_TOUCH_PLAY = "tv_wake_on_one_touch_play";
5242    field public static final String CEC_SETTING_NAME_VOLUME_CONTROL_MODE = "volume_control_enabled";
5243    field public static final int CLEAR_TIMER_STATUS_CEC_DISABLE = 162; // 0xa2
5244    field public static final int CLEAR_TIMER_STATUS_CHECK_RECORDER_CONNECTION = 160; // 0xa0
5245    field public static final int CLEAR_TIMER_STATUS_FAIL_TO_CLEAR_SELECTED_SOURCE = 161; // 0xa1
5246    field public static final int CLEAR_TIMER_STATUS_TIMER_CLEARED = 128; // 0x80
5247    field public static final int CLEAR_TIMER_STATUS_TIMER_NOT_CLEARED_NO_INFO_AVAILABLE = 2; // 0x2
5248    field public static final int CLEAR_TIMER_STATUS_TIMER_NOT_CLEARED_NO_MATCHING = 1; // 0x1
5249    field public static final int CLEAR_TIMER_STATUS_TIMER_NOT_CLEARED_RECORDING = 0; // 0x0
5250    field public static final int CONTROL_STATE_CHANGED_REASON_SETTING = 1; // 0x1
5251    field public static final int CONTROL_STATE_CHANGED_REASON_STANDBY = 3; // 0x3
5252    field public static final int CONTROL_STATE_CHANGED_REASON_START = 0; // 0x0
5253    field public static final int CONTROL_STATE_CHANGED_REASON_WAKEUP = 2; // 0x2
5254    field public static final int DEVICE_EVENT_ADD_DEVICE = 1; // 0x1
5255    field public static final int DEVICE_EVENT_REMOVE_DEVICE = 2; // 0x2
5256    field public static final int DEVICE_EVENT_UPDATE_DEVICE = 3; // 0x3
5257    field public static final int EARC_FEATURE_DISABLED = 0; // 0x0
5258    field public static final int EARC_FEATURE_ENABLED = 1; // 0x1
5259    field public static final String EXTRA_MESSAGE_EXTRA_PARAM1 = "android.hardware.hdmi.extra.MESSAGE_EXTRA_PARAM1";
5260    field public static final String EXTRA_MESSAGE_ID = "android.hardware.hdmi.extra.MESSAGE_ID";
5261    field public static final int HDMI_CEC_CONTROL_DISABLED = 0; // 0x0
5262    field public static final int HDMI_CEC_CONTROL_ENABLED = 1; // 0x1
5263    field public static final int HDMI_CEC_VERSION_1_4_B = 5; // 0x5
5264    field public static final int HDMI_CEC_VERSION_2_0 = 6; // 0x6
5265    field public static final int ONE_TOUCH_RECORD_ALREADY_RECORDING = 18; // 0x12
5266    field public static final int ONE_TOUCH_RECORD_CEC_DISABLED = 51; // 0x33
5267    field public static final int ONE_TOUCH_RECORD_CHECK_RECORDER_CONNECTION = 49; // 0x31
5268    field public static final int ONE_TOUCH_RECORD_DISALLOW_TO_COPY = 13; // 0xd
5269    field public static final int ONE_TOUCH_RECORD_DISALLOW_TO_FUTHER_COPIES = 14; // 0xe
5270    field public static final int ONE_TOUCH_RECORD_FAIL_TO_RECORD_DISPLAYED_SCREEN = 50; // 0x32
5271    field public static final int ONE_TOUCH_RECORD_INVALID_EXTERNAL_PHYSICAL_ADDRESS = 10; // 0xa
5272    field public static final int ONE_TOUCH_RECORD_INVALID_EXTERNAL_PLUG_NUMBER = 9; // 0x9
5273    field public static final int ONE_TOUCH_RECORD_MEDIA_PROBLEM = 21; // 0x15
5274    field public static final int ONE_TOUCH_RECORD_MEDIA_PROTECTED = 19; // 0x13
5275    field public static final int ONE_TOUCH_RECORD_NOT_ENOUGH_SPACE = 22; // 0x16
5276    field public static final int ONE_TOUCH_RECORD_NO_MEDIA = 16; // 0x10
5277    field public static final int ONE_TOUCH_RECORD_NO_OR_INSUFFICIENT_CA_ENTITLEMENTS = 12; // 0xc
5278    field public static final int ONE_TOUCH_RECORD_NO_SOURCE_SIGNAL = 20; // 0x14
5279    field public static final int ONE_TOUCH_RECORD_OTHER_REASON = 31; // 0x1f
5280    field public static final int ONE_TOUCH_RECORD_PARENT_LOCK_ON = 23; // 0x17
5281    field public static final int ONE_TOUCH_RECORD_PLAYING = 17; // 0x11
5282    field public static final int ONE_TOUCH_RECORD_PREVIOUS_RECORDING_IN_PROGRESS = 48; // 0x30
5283    field public static final int ONE_TOUCH_RECORD_RECORDING_ALREADY_TERMINATED = 27; // 0x1b
5284    field public static final int ONE_TOUCH_RECORD_RECORDING_ANALOGUE_SERVICE = 3; // 0x3
5285    field public static final int ONE_TOUCH_RECORD_RECORDING_CURRENTLY_SELECTED_SOURCE = 1; // 0x1
5286    field public static final int ONE_TOUCH_RECORD_RECORDING_DIGITAL_SERVICE = 2; // 0x2
5287    field public static final int ONE_TOUCH_RECORD_RECORDING_EXTERNAL_INPUT = 4; // 0x4
5288    field public static final int ONE_TOUCH_RECORD_RECORDING_TERMINATED_NORMALLY = 26; // 0x1a
5289    field public static final int ONE_TOUCH_RECORD_UNABLE_ANALOGUE_SERVICE = 6; // 0x6
5290    field public static final int ONE_TOUCH_RECORD_UNABLE_DIGITAL_SERVICE = 5; // 0x5
5291    field public static final int ONE_TOUCH_RECORD_UNABLE_SELECTED_SERVICE = 7; // 0x7
5292    field public static final int ONE_TOUCH_RECORD_UNSUPPORTED_CA = 11; // 0xb
5293    field public static final int OSD_MESSAGE_ARC_CONNECTED_INVALID_PORT = 1; // 0x1
5294    field public static final int OSD_MESSAGE_AVR_VOLUME_CHANGED = 2; // 0x2
5295    field public static final String POWER_CONTROL_MODE_BROADCAST = "broadcast";
5296    field public static final String POWER_CONTROL_MODE_NONE = "none";
5297    field public static final String POWER_CONTROL_MODE_TV = "to_tv";
5298    field public static final String POWER_CONTROL_MODE_TV_AND_AUDIO_SYSTEM = "to_tv_and_audio_system";
5299    field public static final String POWER_STATE_CHANGE_ON_ACTIVE_SOURCE_LOST_NONE = "none";
5300    field public static final String POWER_STATE_CHANGE_ON_ACTIVE_SOURCE_LOST_STANDBY_NOW = "standby_now";
5301    field public static final int POWER_STATUS_ON = 0; // 0x0
5302    field public static final int POWER_STATUS_STANDBY = 1; // 0x1
5303    field public static final int POWER_STATUS_TRANSIENT_TO_ON = 2; // 0x2
5304    field public static final int POWER_STATUS_TRANSIENT_TO_STANDBY = 3; // 0x3
5305    field public static final int POWER_STATUS_UNKNOWN = -1; // 0xffffffff
5306    field public static final int QUERY_SAD_DISABLED = 0; // 0x0
5307    field public static final int QUERY_SAD_ENABLED = 1; // 0x1
5308    field @Deprecated public static final int RESULT_ALREADY_IN_PROGRESS = 4; // 0x4
5309    field public static final int RESULT_COMMUNICATION_FAILED = 7; // 0x7
5310    field public static final int RESULT_EXCEPTION = 5; // 0x5
5311    field public static final int RESULT_INCORRECT_MODE = 6; // 0x6
5312    field public static final int RESULT_SOURCE_NOT_AVAILABLE = 2; // 0x2
5313    field public static final int RESULT_SUCCESS = 0; // 0x0
5314    field public static final int RESULT_TARGET_NOT_AVAILABLE = 3; // 0x3
5315    field public static final int RESULT_TIMEOUT = 1; // 0x1
5316    field public static final int ROUTING_CONTROL_DISABLED = 0; // 0x0
5317    field public static final int ROUTING_CONTROL_ENABLED = 1; // 0x1
5318    field public static final String SETTING_NAME_EARC_ENABLED = "earc_enabled";
5319    field public static final int SOUNDBAR_MODE_DISABLED = 0; // 0x0
5320    field public static final int SOUNDBAR_MODE_ENABLED = 1; // 0x1
5321    field public static final int SYSTEM_AUDIO_CONTROL_DISABLED = 0; // 0x0
5322    field public static final int SYSTEM_AUDIO_CONTROL_ENABLED = 1; // 0x1
5323    field public static final int SYSTEM_AUDIO_MODE_MUTING_DISABLED = 0; // 0x0
5324    field public static final int SYSTEM_AUDIO_MODE_MUTING_ENABLED = 1; // 0x1
5325    field public static final int TIMER_RECORDING_RESULT_EXTRA_CEC_DISABLED = 3; // 0x3
5326    field public static final int TIMER_RECORDING_RESULT_EXTRA_CHECK_RECORDER_CONNECTION = 1; // 0x1
5327    field public static final int TIMER_RECORDING_RESULT_EXTRA_FAIL_TO_RECORD_SELECTED_SOURCE = 2; // 0x2
5328    field public static final int TIMER_RECORDING_RESULT_EXTRA_NO_ERROR = 0; // 0x0
5329    field public static final int TIMER_RECORDING_TYPE_ANALOGUE = 2; // 0x2
5330    field public static final int TIMER_RECORDING_TYPE_DIGITAL = 1; // 0x1
5331    field public static final int TIMER_RECORDING_TYPE_EXTERNAL = 3; // 0x3
5332    field public static final int TIMER_STATUS_MEDIA_INFO_NOT_PRESENT = 2; // 0x2
5333    field public static final int TIMER_STATUS_MEDIA_INFO_PRESENT_NOT_PROTECTED = 0; // 0x0
5334    field public static final int TIMER_STATUS_MEDIA_INFO_PRESENT_PROTECTED = 1; // 0x1
5335    field public static final int TIMER_STATUS_NOT_PROGRAMMED_CA_NOT_SUPPORTED = 6; // 0x6
5336    field public static final int TIMER_STATUS_NOT_PROGRAMMED_CLOCK_FAILURE = 10; // 0xa
5337    field public static final int TIMER_STATUS_NOT_PROGRAMMED_DATE_OUT_OF_RANGE = 2; // 0x2
5338    field public static final int TIMER_STATUS_NOT_PROGRAMMED_DUPLICATED = 14; // 0xe
5339    field public static final int TIMER_STATUS_NOT_PROGRAMMED_INVALID_EXTERNAL_PHYSICAL_NUMBER = 5; // 0x5
5340    field public static final int TIMER_STATUS_NOT_PROGRAMMED_INVALID_EXTERNAL_PLUG_NUMBER = 4; // 0x4
5341    field public static final int TIMER_STATUS_NOT_PROGRAMMED_INVALID_SEQUENCE = 3; // 0x3
5342    field public static final int TIMER_STATUS_NOT_PROGRAMMED_NO_CA_ENTITLEMENTS = 7; // 0x7
5343    field public static final int TIMER_STATUS_NOT_PROGRAMMED_NO_FREE_TIME = 1; // 0x1
5344    field public static final int TIMER_STATUS_NOT_PROGRAMMED_PARENTAL_LOCK_ON = 9; // 0x9
5345    field public static final int TIMER_STATUS_NOT_PROGRAMMED_UNSUPPORTED_RESOLUTION = 8; // 0x8
5346    field public static final int TIMER_STATUS_PROGRAMMED_INFO_ENOUGH_SPACE = 8; // 0x8
5347    field public static final int TIMER_STATUS_PROGRAMMED_INFO_MIGHT_NOT_ENOUGH_SPACE = 11; // 0xb
5348    field public static final int TIMER_STATUS_PROGRAMMED_INFO_NOT_ENOUGH_SPACE = 9; // 0x9
5349    field public static final int TIMER_STATUS_PROGRAMMED_INFO_NO_MEDIA_INFO = 10; // 0xa
5350    field public static final int TV_SEND_STANDBY_ON_SLEEP_DISABLED = 0; // 0x0
5351    field public static final int TV_SEND_STANDBY_ON_SLEEP_ENABLED = 1; // 0x1
5352    field public static final int TV_WAKE_ON_ONE_TOUCH_PLAY_DISABLED = 0; // 0x0
5353    field public static final int TV_WAKE_ON_ONE_TOUCH_PLAY_ENABLED = 1; // 0x1
5354    field public static final int VOLUME_CONTROL_DISABLED = 0; // 0x0
5355    field public static final int VOLUME_CONTROL_ENABLED = 1; // 0x1
5356  }
5357
5358  public static interface HdmiControlManager.CecSettingChangeListener {
5359    method public void onChange(@NonNull String);
5360  }
5361
5362  public static interface HdmiControlManager.HotplugEventListener {
5363    method public void onReceived(android.hardware.hdmi.HdmiHotplugEvent);
5364  }
5365
5366  public static interface HdmiControlManager.VendorCommandListener {
5367    method public void onControlStateChanged(boolean, int);
5368    method public void onReceived(int, int, byte[], boolean);
5369  }
5370
5371  public class HdmiDeviceInfo implements android.os.Parcelable {
5372    ctor @Deprecated public HdmiDeviceInfo();
5373    method public int describeContents();
5374    method public int getAdopterId();
5375    method public int getDeviceId();
5376    method public int getDevicePowerStatus();
5377    method public int getDeviceType();
5378    method public String getDisplayName();
5379    method public int getId();
5380    method public int getLogicalAddress();
5381    method public int getPhysicalAddress();
5382    method public int getPortId();
5383    method public int getVendorId();
5384    method public static int idForCecDevice(int);
5385    method public static int idForHardware(int);
5386    method public static int idForMhlDevice(int);
5387    method public boolean isCecDevice();
5388    method public boolean isInactivated();
5389    method public boolean isMhlDevice();
5390    method public boolean isSourceType();
5391    method public void writeToParcel(android.os.Parcel, int);
5392    field public static final int ADDR_INTERNAL = 0; // 0x0
5393    field public static final int ADDR_INVALID = -1; // 0xffffffff
5394    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.hdmi.HdmiDeviceInfo> CREATOR;
5395    field public static final int DEVICE_AUDIO_SYSTEM = 5; // 0x5
5396    field public static final int DEVICE_INACTIVE = -1; // 0xffffffff
5397    field public static final int DEVICE_PLAYBACK = 4; // 0x4
5398    field public static final int DEVICE_RECORDER = 1; // 0x1
5399    field public static final int DEVICE_RESERVED = 2; // 0x2
5400    field public static final int DEVICE_TUNER = 3; // 0x3
5401    field public static final int DEVICE_TV = 0; // 0x0
5402    field public static final int ID_INVALID = 65535; // 0xffff
5403    field public static final android.hardware.hdmi.HdmiDeviceInfo INACTIVE_DEVICE;
5404    field public static final int PATH_INTERNAL = 0; // 0x0
5405    field public static final int PATH_INVALID = 65535; // 0xffff
5406    field public static final int PORT_INVALID = -1; // 0xffffffff
5407    field public static final int VENDOR_ID_UNKNOWN = 16777215; // 0xffffff
5408  }
5409
5410  public final class HdmiHotplugEvent implements android.os.Parcelable {
5411    method public int describeContents();
5412    method public int getPort();
5413    method public boolean isConnected();
5414    method public void writeToParcel(android.os.Parcel, int);
5415    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.hdmi.HdmiHotplugEvent> CREATOR;
5416  }
5417
5418  public final class HdmiPlaybackClient extends android.hardware.hdmi.HdmiClient {
5419    method public int getDeviceType();
5420    method public void oneTouchPlay(android.hardware.hdmi.HdmiPlaybackClient.OneTouchPlayCallback);
5421    method public void queryDisplayStatus(android.hardware.hdmi.HdmiPlaybackClient.DisplayStatusCallback);
5422    method public void sendStandby();
5423  }
5424
5425  public static interface HdmiPlaybackClient.DisplayStatusCallback {
5426    method public void onComplete(int);
5427  }
5428
5429  public static interface HdmiPlaybackClient.OneTouchPlayCallback {
5430    method public void onComplete(int);
5431  }
5432
5433  public final class HdmiPortInfo implements android.os.Parcelable {
5434    ctor @Deprecated public HdmiPortInfo(int, int, int, boolean, boolean, boolean);
5435    method public int describeContents();
5436    method public int getAddress();
5437    method public int getId();
5438    method public int getType();
5439    method public boolean isArcSupported();
5440    method public boolean isCecSupported();
5441    method public boolean isEarcSupported();
5442    method public boolean isMhlSupported();
5443    method public void writeToParcel(android.os.Parcel, int);
5444    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.hdmi.HdmiPortInfo> CREATOR;
5445    field public static final int PORT_INPUT = 0; // 0x0
5446    field public static final int PORT_OUTPUT = 1; // 0x1
5447  }
5448
5449  public static final class HdmiPortInfo.Builder {
5450    ctor public HdmiPortInfo.Builder(int, int, int);
5451    method @NonNull public android.hardware.hdmi.HdmiPortInfo build();
5452    method @NonNull public android.hardware.hdmi.HdmiPortInfo.Builder setArcSupported(boolean);
5453    method @NonNull public android.hardware.hdmi.HdmiPortInfo.Builder setCecSupported(boolean);
5454    method @NonNull public android.hardware.hdmi.HdmiPortInfo.Builder setEarcSupported(boolean);
5455    method @NonNull public android.hardware.hdmi.HdmiPortInfo.Builder setMhlSupported(boolean);
5456  }
5457
5458  public abstract class HdmiRecordListener {
5459    ctor public HdmiRecordListener();
5460    method public void onClearTimerRecordingResult(int, int);
5461    method public void onOneTouchRecordResult(int, int);
5462    method public abstract android.hardware.hdmi.HdmiRecordSources.RecordSource onOneTouchRecordSourceRequested(int);
5463    method public void onTimerRecordingResult(int, android.hardware.hdmi.HdmiRecordListener.TimerStatusData);
5464  }
5465
5466  public static class HdmiRecordListener.TimerStatusData {
5467    method public int getDurationHour();
5468    method public int getDurationMinute();
5469    method public int getExtraError();
5470    method public int getMediaInfo();
5471    method public int getNotProgammedError();
5472    method public int getProgrammedInfo();
5473    method public boolean isOverlapped();
5474    method public boolean isProgrammed();
5475  }
5476
5477  public final class HdmiRecordSources {
5478    method public static boolean checkRecordSource(byte[]);
5479    method public static android.hardware.hdmi.HdmiRecordSources.OwnSource ofOwnSource();
5480  }
5481
5482  public static final class HdmiRecordSources.AnalogueServiceSource extends android.hardware.hdmi.HdmiRecordSources.RecordSource {
5483  }
5484
5485  public static final class HdmiRecordSources.DigitalServiceSource extends android.hardware.hdmi.HdmiRecordSources.RecordSource {
5486  }
5487
5488  public static final class HdmiRecordSources.ExternalPhysicalAddress extends android.hardware.hdmi.HdmiRecordSources.RecordSource {
5489  }
5490
5491  public static final class HdmiRecordSources.ExternalPlugData extends android.hardware.hdmi.HdmiRecordSources.RecordSource {
5492  }
5493
5494  public static final class HdmiRecordSources.OwnSource extends android.hardware.hdmi.HdmiRecordSources.RecordSource {
5495  }
5496
5497  public abstract static class HdmiRecordSources.RecordSource {
5498  }
5499
5500  public class HdmiSwitchClient extends android.hardware.hdmi.HdmiClient {
5501    method public int getDeviceType();
5502    method @Deprecated @NonNull public java.util.List<android.hardware.hdmi.HdmiPortInfo> getPortInfo();
5503    method public void selectPort(int, @NonNull android.hardware.hdmi.HdmiSwitchClient.OnSelectListener);
5504    method public void selectPort(int, @NonNull java.util.concurrent.Executor, @NonNull android.hardware.hdmi.HdmiSwitchClient.OnSelectListener);
5505  }
5506
5507  public static interface HdmiSwitchClient.OnSelectListener {
5508    method public void onSelect(int);
5509  }
5510
5511  public class HdmiTimerRecordSources {
5512    method public static boolean checkTimerRecordSource(int, byte[]);
5513    method public static android.hardware.hdmi.HdmiTimerRecordSources.Duration durationOf(int, int);
5514    method public static android.hardware.hdmi.HdmiTimerRecordSources.TimerRecordSource ofAnalogueSource(android.hardware.hdmi.HdmiTimerRecordSources.TimerInfo, android.hardware.hdmi.HdmiRecordSources.AnalogueServiceSource);
5515    method public static android.hardware.hdmi.HdmiTimerRecordSources.TimerRecordSource ofDigitalSource(android.hardware.hdmi.HdmiTimerRecordSources.TimerInfo, android.hardware.hdmi.HdmiRecordSources.DigitalServiceSource);
5516    method public static android.hardware.hdmi.HdmiTimerRecordSources.TimerRecordSource ofExternalPhysicalAddress(android.hardware.hdmi.HdmiTimerRecordSources.TimerInfo, android.hardware.hdmi.HdmiRecordSources.ExternalPhysicalAddress);
5517    method public static android.hardware.hdmi.HdmiTimerRecordSources.TimerRecordSource ofExternalPlug(android.hardware.hdmi.HdmiTimerRecordSources.TimerInfo, android.hardware.hdmi.HdmiRecordSources.ExternalPlugData);
5518    method public static android.hardware.hdmi.HdmiTimerRecordSources.Time timeOf(int, int);
5519    method public static android.hardware.hdmi.HdmiTimerRecordSources.TimerInfo timerInfoOf(int, int, android.hardware.hdmi.HdmiTimerRecordSources.Time, android.hardware.hdmi.HdmiTimerRecordSources.Duration, int);
5520    field public static final int RECORDING_SEQUENCE_REPEAT_FRIDAY = 32; // 0x20
5521    field public static final int RECORDING_SEQUENCE_REPEAT_MONDAY = 2; // 0x2
5522    field public static final int RECORDING_SEQUENCE_REPEAT_ONCE_ONLY = 0; // 0x0
5523    field public static final int RECORDING_SEQUENCE_REPEAT_SATUREDAY = 64; // 0x40
5524    field public static final int RECORDING_SEQUENCE_REPEAT_SUNDAY = 1; // 0x1
5525    field public static final int RECORDING_SEQUENCE_REPEAT_THURSDAY = 16; // 0x10
5526    field public static final int RECORDING_SEQUENCE_REPEAT_TUESDAY = 4; // 0x4
5527    field public static final int RECORDING_SEQUENCE_REPEAT_WEDNESDAY = 8; // 0x8
5528  }
5529
5530  public static final class HdmiTimerRecordSources.Duration {
5531  }
5532
5533  public static final class HdmiTimerRecordSources.Time {
5534  }
5535
5536  public static final class HdmiTimerRecordSources.TimerInfo {
5537  }
5538
5539  public static final class HdmiTimerRecordSources.TimerRecordSource {
5540  }
5541
5542  public final class HdmiTvClient extends android.hardware.hdmi.HdmiClient {
5543    method public void clearTimerRecording(int, int, android.hardware.hdmi.HdmiTimerRecordSources.TimerRecordSource);
5544    method @Deprecated public void deviceSelect(int, @NonNull android.hardware.hdmi.HdmiTvClient.SelectCallback);
5545    method @Deprecated public java.util.List<android.hardware.hdmi.HdmiDeviceInfo> getDeviceList();
5546    method public int getDeviceType();
5547    method public void portSelect(int, @NonNull android.hardware.hdmi.HdmiTvClient.SelectCallback);
5548    method public void sendMhlVendorCommand(int, int, int, byte[]);
5549    method public void sendStandby(int);
5550    method public void setHdmiMhlVendorCommandListener(android.hardware.hdmi.HdmiTvClient.HdmiMhlVendorCommandListener);
5551    method public void setInputChangeListener(android.hardware.hdmi.HdmiTvClient.InputChangeListener);
5552    method public void setRecordListener(@NonNull android.hardware.hdmi.HdmiRecordListener);
5553    method public void setSystemAudioMode(boolean, android.hardware.hdmi.HdmiTvClient.SelectCallback);
5554    method public void setSystemAudioMute(boolean);
5555    method public void setSystemAudioVolume(int, int, int);
5556    method public void startOneTouchRecord(int, @NonNull android.hardware.hdmi.HdmiRecordSources.RecordSource);
5557    method public void startTimerRecording(int, int, android.hardware.hdmi.HdmiTimerRecordSources.TimerRecordSource);
5558    method public void stopOneTouchRecord(int);
5559    field public static final int VENDOR_DATA_SIZE = 16; // 0x10
5560  }
5561
5562  public static interface HdmiTvClient.HdmiMhlVendorCommandListener {
5563    method public void onReceived(int, int, int, byte[]);
5564  }
5565
5566  public static interface HdmiTvClient.InputChangeListener {
5567    method public void onChanged(android.hardware.hdmi.HdmiDeviceInfo);
5568  }
5569
5570  public static interface HdmiTvClient.SelectCallback {
5571    method public void onComplete(int);
5572  }
5573
5574}
5575
5576package android.hardware.input {
5577
5578  public class VirtualDpad implements java.io.Closeable {
5579    method @RequiresPermission(android.Manifest.permission.CREATE_VIRTUAL_DEVICE) public void close();
5580    method @RequiresPermission(android.Manifest.permission.CREATE_VIRTUAL_DEVICE) public void sendKeyEvent(@NonNull android.hardware.input.VirtualKeyEvent);
5581  }
5582
5583  public final class VirtualDpadConfig extends android.hardware.input.VirtualInputDeviceConfig implements android.os.Parcelable {
5584    method public int describeContents();
5585    method public void writeToParcel(@NonNull android.os.Parcel, int);
5586    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.input.VirtualDpadConfig> CREATOR;
5587  }
5588
5589  public static final class VirtualDpadConfig.Builder extends android.hardware.input.VirtualInputDeviceConfig.Builder<android.hardware.input.VirtualDpadConfig.Builder> {
5590    ctor public VirtualDpadConfig.Builder();
5591    method @NonNull public android.hardware.input.VirtualDpadConfig build();
5592  }
5593
5594  public abstract class VirtualInputDeviceConfig {
5595    ctor protected VirtualInputDeviceConfig(@NonNull android.hardware.input.VirtualInputDeviceConfig.Builder<? extends android.hardware.input.VirtualInputDeviceConfig.Builder<?>>);
5596    ctor protected VirtualInputDeviceConfig(@NonNull android.os.Parcel);
5597    method public int getAssociatedDisplayId();
5598    method @NonNull public String getInputDeviceName();
5599    method public int getProductId();
5600    method public int getVendorId();
5601  }
5602
5603  public abstract static class VirtualInputDeviceConfig.Builder<T extends android.hardware.input.VirtualInputDeviceConfig.Builder<T>> {
5604    ctor public VirtualInputDeviceConfig.Builder();
5605    method @NonNull public T setAssociatedDisplayId(int);
5606    method @NonNull public T setInputDeviceName(@NonNull String);
5607    method @NonNull public T setProductId(int);
5608    method @NonNull public T setVendorId(int);
5609  }
5610
5611  public final class VirtualKeyEvent implements android.os.Parcelable {
5612    method public int describeContents();
5613    method public int getAction();
5614    method public long getEventTimeNanos();
5615    method public int getKeyCode();
5616    method public void writeToParcel(@NonNull android.os.Parcel, int);
5617    field public static final int ACTION_DOWN = 0; // 0x0
5618    field public static final int ACTION_UP = 1; // 0x1
5619    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.input.VirtualKeyEvent> CREATOR;
5620  }
5621
5622  public static final class VirtualKeyEvent.Builder {
5623    ctor public VirtualKeyEvent.Builder();
5624    method @NonNull public android.hardware.input.VirtualKeyEvent build();
5625    method @NonNull public android.hardware.input.VirtualKeyEvent.Builder setAction(int);
5626    method @NonNull public android.hardware.input.VirtualKeyEvent.Builder setEventTimeNanos(long);
5627    method @NonNull public android.hardware.input.VirtualKeyEvent.Builder setKeyCode(int);
5628  }
5629
5630  public class VirtualKeyboard implements java.io.Closeable {
5631    method @RequiresPermission(android.Manifest.permission.CREATE_VIRTUAL_DEVICE) public void close();
5632    method @RequiresPermission(android.Manifest.permission.CREATE_VIRTUAL_DEVICE) public void sendKeyEvent(@NonNull android.hardware.input.VirtualKeyEvent);
5633  }
5634
5635  public final class VirtualKeyboardConfig extends android.hardware.input.VirtualInputDeviceConfig implements android.os.Parcelable {
5636    method public int describeContents();
5637    method @NonNull public String getLanguageTag();
5638    method @NonNull public String getLayoutType();
5639    method public void writeToParcel(@NonNull android.os.Parcel, int);
5640    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.input.VirtualKeyboardConfig> CREATOR;
5641    field public static final String DEFAULT_LANGUAGE_TAG = "en-Latn-US";
5642    field public static final String DEFAULT_LAYOUT_TYPE = "qwerty";
5643  }
5644
5645  public static final class VirtualKeyboardConfig.Builder extends android.hardware.input.VirtualInputDeviceConfig.Builder<android.hardware.input.VirtualKeyboardConfig.Builder> {
5646    ctor public VirtualKeyboardConfig.Builder();
5647    method @NonNull public android.hardware.input.VirtualKeyboardConfig build();
5648    method @NonNull public android.hardware.input.VirtualKeyboardConfig.Builder setLanguageTag(@NonNull String);
5649    method @NonNull public android.hardware.input.VirtualKeyboardConfig.Builder setLayoutType(@NonNull String);
5650  }
5651
5652  public class VirtualMouse implements java.io.Closeable {
5653    method @RequiresPermission(android.Manifest.permission.CREATE_VIRTUAL_DEVICE) public void close();
5654    method @NonNull @RequiresPermission(android.Manifest.permission.CREATE_VIRTUAL_DEVICE) public android.graphics.PointF getCursorPosition();
5655    method @RequiresPermission(android.Manifest.permission.CREATE_VIRTUAL_DEVICE) public void sendButtonEvent(@NonNull android.hardware.input.VirtualMouseButtonEvent);
5656    method @RequiresPermission(android.Manifest.permission.CREATE_VIRTUAL_DEVICE) public void sendRelativeEvent(@NonNull android.hardware.input.VirtualMouseRelativeEvent);
5657    method @RequiresPermission(android.Manifest.permission.CREATE_VIRTUAL_DEVICE) public void sendScrollEvent(@NonNull android.hardware.input.VirtualMouseScrollEvent);
5658  }
5659
5660  public final class VirtualMouseButtonEvent implements android.os.Parcelable {
5661    method public int describeContents();
5662    method public int getAction();
5663    method public int getButtonCode();
5664    method public long getEventTimeNanos();
5665    method public void writeToParcel(@NonNull android.os.Parcel, int);
5666    field public static final int ACTION_BUTTON_PRESS = 11; // 0xb
5667    field public static final int ACTION_BUTTON_RELEASE = 12; // 0xc
5668    field public static final int BUTTON_BACK = 8; // 0x8
5669    field public static final int BUTTON_FORWARD = 16; // 0x10
5670    field public static final int BUTTON_PRIMARY = 1; // 0x1
5671    field public static final int BUTTON_SECONDARY = 2; // 0x2
5672    field public static final int BUTTON_TERTIARY = 4; // 0x4
5673    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.input.VirtualMouseButtonEvent> CREATOR;
5674  }
5675
5676  public static final class VirtualMouseButtonEvent.Builder {
5677    ctor public VirtualMouseButtonEvent.Builder();
5678    method @NonNull public android.hardware.input.VirtualMouseButtonEvent build();
5679    method @NonNull public android.hardware.input.VirtualMouseButtonEvent.Builder setAction(int);
5680    method @NonNull public android.hardware.input.VirtualMouseButtonEvent.Builder setButtonCode(int);
5681    method @NonNull public android.hardware.input.VirtualMouseButtonEvent.Builder setEventTimeNanos(long);
5682  }
5683
5684  public final class VirtualMouseConfig extends android.hardware.input.VirtualInputDeviceConfig implements android.os.Parcelable {
5685    method public int describeContents();
5686    method public void writeToParcel(@NonNull android.os.Parcel, int);
5687    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.input.VirtualMouseConfig> CREATOR;
5688  }
5689
5690  public static final class VirtualMouseConfig.Builder extends android.hardware.input.VirtualInputDeviceConfig.Builder<android.hardware.input.VirtualMouseConfig.Builder> {
5691    ctor public VirtualMouseConfig.Builder();
5692    method @NonNull public android.hardware.input.VirtualMouseConfig build();
5693  }
5694
5695  public final class VirtualMouseRelativeEvent implements android.os.Parcelable {
5696    method public int describeContents();
5697    method public long getEventTimeNanos();
5698    method public float getRelativeX();
5699    method public float getRelativeY();
5700    method public void writeToParcel(@NonNull android.os.Parcel, int);
5701    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.input.VirtualMouseRelativeEvent> CREATOR;
5702  }
5703
5704  public static final class VirtualMouseRelativeEvent.Builder {
5705    ctor public VirtualMouseRelativeEvent.Builder();
5706    method @NonNull public android.hardware.input.VirtualMouseRelativeEvent build();
5707    method @NonNull public android.hardware.input.VirtualMouseRelativeEvent.Builder setEventTimeNanos(long);
5708    method @NonNull public android.hardware.input.VirtualMouseRelativeEvent.Builder setRelativeX(float);
5709    method @NonNull public android.hardware.input.VirtualMouseRelativeEvent.Builder setRelativeY(float);
5710  }
5711
5712  public final class VirtualMouseScrollEvent implements android.os.Parcelable {
5713    method public int describeContents();
5714    method public long getEventTimeNanos();
5715    method public float getXAxisMovement();
5716    method public float getYAxisMovement();
5717    method public void writeToParcel(@NonNull android.os.Parcel, int);
5718    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.input.VirtualMouseScrollEvent> CREATOR;
5719  }
5720
5721  public static final class VirtualMouseScrollEvent.Builder {
5722    ctor public VirtualMouseScrollEvent.Builder();
5723    method @NonNull public android.hardware.input.VirtualMouseScrollEvent build();
5724    method @NonNull public android.hardware.input.VirtualMouseScrollEvent.Builder setEventTimeNanos(long);
5725    method @NonNull public android.hardware.input.VirtualMouseScrollEvent.Builder setXAxisMovement(@FloatRange(from=-1.0F, to=1.0f) float);
5726    method @NonNull public android.hardware.input.VirtualMouseScrollEvent.Builder setYAxisMovement(@FloatRange(from=-1.0F, to=1.0f) float);
5727  }
5728
5729  public class VirtualNavigationTouchpad implements java.io.Closeable {
5730    method @RequiresPermission(android.Manifest.permission.CREATE_VIRTUAL_DEVICE) public void close();
5731    method @RequiresPermission(android.Manifest.permission.CREATE_VIRTUAL_DEVICE) public void sendTouchEvent(@NonNull android.hardware.input.VirtualTouchEvent);
5732  }
5733
5734  public final class VirtualNavigationTouchpadConfig extends android.hardware.input.VirtualInputDeviceConfig implements android.os.Parcelable {
5735    method public int describeContents();
5736    method @IntRange(from=1) public int getHeight();
5737    method @IntRange(from=1) public int getWidth();
5738    method public void writeToParcel(@NonNull android.os.Parcel, int);
5739    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.input.VirtualNavigationTouchpadConfig> CREATOR;
5740  }
5741
5742  public static final class VirtualNavigationTouchpadConfig.Builder extends android.hardware.input.VirtualInputDeviceConfig.Builder<android.hardware.input.VirtualNavigationTouchpadConfig.Builder> {
5743    ctor public VirtualNavigationTouchpadConfig.Builder(@IntRange(from=1) int, @IntRange(from=1) int);
5744    method @NonNull public android.hardware.input.VirtualNavigationTouchpadConfig build();
5745  }
5746
5747  public class VirtualStylus implements java.io.Closeable {
5748    method @RequiresPermission(android.Manifest.permission.CREATE_VIRTUAL_DEVICE) public void close();
5749    method @RequiresPermission(android.Manifest.permission.CREATE_VIRTUAL_DEVICE) public void sendButtonEvent(@NonNull android.hardware.input.VirtualStylusButtonEvent);
5750    method @RequiresPermission(android.Manifest.permission.CREATE_VIRTUAL_DEVICE) public void sendMotionEvent(@NonNull android.hardware.input.VirtualStylusMotionEvent);
5751  }
5752
5753  public final class VirtualStylusButtonEvent implements android.os.Parcelable {
5754    method public int describeContents();
5755    method public int getAction();
5756    method public int getButtonCode();
5757    method public long getEventTimeNanos();
5758    method public void writeToParcel(@NonNull android.os.Parcel, int);
5759    field public static final int ACTION_BUTTON_PRESS = 11; // 0xb
5760    field public static final int ACTION_BUTTON_RELEASE = 12; // 0xc
5761    field public static final int BUTTON_PRIMARY = 32; // 0x20
5762    field public static final int BUTTON_SECONDARY = 64; // 0x40
5763    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.input.VirtualStylusButtonEvent> CREATOR;
5764  }
5765
5766  public static final class VirtualStylusButtonEvent.Builder {
5767    ctor public VirtualStylusButtonEvent.Builder();
5768    method @NonNull public android.hardware.input.VirtualStylusButtonEvent build();
5769    method @NonNull public android.hardware.input.VirtualStylusButtonEvent.Builder setAction(int);
5770    method @NonNull public android.hardware.input.VirtualStylusButtonEvent.Builder setButtonCode(int);
5771    method @NonNull public android.hardware.input.VirtualStylusButtonEvent.Builder setEventTimeNanos(long);
5772  }
5773
5774  public final class VirtualStylusConfig extends android.hardware.input.VirtualInputDeviceConfig implements android.os.Parcelable {
5775    method public int describeContents();
5776    method public int getHeight();
5777    method public int getWidth();
5778    method public void writeToParcel(@NonNull android.os.Parcel, int);
5779    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.input.VirtualStylusConfig> CREATOR;
5780  }
5781
5782  public static final class VirtualStylusConfig.Builder extends android.hardware.input.VirtualInputDeviceConfig.Builder<android.hardware.input.VirtualStylusConfig.Builder> {
5783    ctor public VirtualStylusConfig.Builder(@IntRange(from=1) int, @IntRange(from=1) int);
5784    method @NonNull public android.hardware.input.VirtualStylusConfig build();
5785  }
5786
5787  public final class VirtualStylusMotionEvent implements android.os.Parcelable {
5788    method public int describeContents();
5789    method public int getAction();
5790    method public long getEventTimeNanos();
5791    method public int getPressure();
5792    method public int getTiltX();
5793    method public int getTiltY();
5794    method public int getToolType();
5795    method public int getX();
5796    method public int getY();
5797    method public void writeToParcel(@NonNull android.os.Parcel, int);
5798    field public static final int ACTION_DOWN = 0; // 0x0
5799    field public static final int ACTION_MOVE = 2; // 0x2
5800    field public static final int ACTION_UP = 1; // 0x1
5801    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.input.VirtualStylusMotionEvent> CREATOR;
5802    field public static final int TOOL_TYPE_ERASER = 4; // 0x4
5803    field public static final int TOOL_TYPE_STYLUS = 2; // 0x2
5804  }
5805
5806  public static final class VirtualStylusMotionEvent.Builder {
5807    ctor public VirtualStylusMotionEvent.Builder();
5808    method @NonNull public android.hardware.input.VirtualStylusMotionEvent build();
5809    method @NonNull public android.hardware.input.VirtualStylusMotionEvent.Builder setAction(int);
5810    method @NonNull public android.hardware.input.VirtualStylusMotionEvent.Builder setEventTimeNanos(long);
5811    method @NonNull public android.hardware.input.VirtualStylusMotionEvent.Builder setPressure(@IntRange(from=0x0, to=0xff) int);
5812    method @NonNull public android.hardware.input.VirtualStylusMotionEvent.Builder setTiltX(@IntRange(from=0xffffffa6, to=0x5a) int);
5813    method @NonNull public android.hardware.input.VirtualStylusMotionEvent.Builder setTiltY(@IntRange(from=0xffffffa6, to=0x5a) int);
5814    method @NonNull public android.hardware.input.VirtualStylusMotionEvent.Builder setToolType(int);
5815    method @NonNull public android.hardware.input.VirtualStylusMotionEvent.Builder setX(int);
5816    method @NonNull public android.hardware.input.VirtualStylusMotionEvent.Builder setY(int);
5817  }
5818
5819  public final class VirtualTouchEvent implements android.os.Parcelable {
5820    method public int describeContents();
5821    method public int getAction();
5822    method public long getEventTimeNanos();
5823    method public float getMajorAxisSize();
5824    method public int getPointerId();
5825    method public float getPressure();
5826    method public int getToolType();
5827    method public float getX();
5828    method public float getY();
5829    method public void writeToParcel(@NonNull android.os.Parcel, int);
5830    field public static final int ACTION_CANCEL = 3; // 0x3
5831    field public static final int ACTION_DOWN = 0; // 0x0
5832    field public static final int ACTION_MOVE = 2; // 0x2
5833    field public static final int ACTION_UP = 1; // 0x1
5834    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.input.VirtualTouchEvent> CREATOR;
5835    field public static final int TOOL_TYPE_FINGER = 1; // 0x1
5836    field public static final int TOOL_TYPE_PALM = 5; // 0x5
5837  }
5838
5839  public static final class VirtualTouchEvent.Builder {
5840    ctor public VirtualTouchEvent.Builder();
5841    method @NonNull public android.hardware.input.VirtualTouchEvent build();
5842    method @NonNull public android.hardware.input.VirtualTouchEvent.Builder setAction(int);
5843    method @NonNull public android.hardware.input.VirtualTouchEvent.Builder setEventTimeNanos(long);
5844    method @NonNull public android.hardware.input.VirtualTouchEvent.Builder setMajorAxisSize(@FloatRange(from=0.0f) float);
5845    method @NonNull public android.hardware.input.VirtualTouchEvent.Builder setPointerId(@IntRange(from=0, to=0x10 - 1) int);
5846    method @NonNull public android.hardware.input.VirtualTouchEvent.Builder setPressure(@FloatRange(from=0.0f) float);
5847    method @NonNull public android.hardware.input.VirtualTouchEvent.Builder setToolType(int);
5848    method @NonNull public android.hardware.input.VirtualTouchEvent.Builder setX(float);
5849    method @NonNull public android.hardware.input.VirtualTouchEvent.Builder setY(float);
5850  }
5851
5852  public class VirtualTouchscreen implements java.io.Closeable {
5853    method @RequiresPermission(android.Manifest.permission.CREATE_VIRTUAL_DEVICE) public void close();
5854    method @RequiresPermission(android.Manifest.permission.CREATE_VIRTUAL_DEVICE) public void sendTouchEvent(@NonNull android.hardware.input.VirtualTouchEvent);
5855  }
5856
5857  public final class VirtualTouchscreenConfig extends android.hardware.input.VirtualInputDeviceConfig implements android.os.Parcelable {
5858    method public int describeContents();
5859    method public int getHeight();
5860    method public int getWidth();
5861    method public void writeToParcel(@NonNull android.os.Parcel, int);
5862    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.input.VirtualTouchscreenConfig> CREATOR;
5863  }
5864
5865  public static final class VirtualTouchscreenConfig.Builder extends android.hardware.input.VirtualInputDeviceConfig.Builder<android.hardware.input.VirtualTouchscreenConfig.Builder> {
5866    ctor public VirtualTouchscreenConfig.Builder(@IntRange(from=1) int, @IntRange(from=1) int);
5867    method @NonNull public android.hardware.input.VirtualTouchscreenConfig build();
5868  }
5869
5870}
5871
5872package android.hardware.lights {
5873
5874  public final class LightState implements android.os.Parcelable {
5875    ctor @Deprecated public LightState(@ColorInt int);
5876  }
5877
5878  public abstract class LightsManager {
5879    field @Deprecated public static final int LIGHT_TYPE_MICROPHONE = 8; // 0x8
5880  }
5881
5882  public static final class LightsRequest.Builder {
5883    method @Deprecated @NonNull public android.hardware.lights.LightsRequest.Builder setLight(@NonNull android.hardware.lights.Light, @NonNull android.hardware.lights.LightState);
5884  }
5885
5886}
5887
5888package android.hardware.location {
5889
5890  public class ContextHubClient implements java.io.Closeable {
5891    method public void close();
5892    method @NonNull public android.hardware.location.ContextHubInfo getAttachedHub();
5893    method @IntRange(from=0, to=65535) public int getId();
5894    method @RequiresPermission(android.Manifest.permission.ACCESS_CONTEXT_HUB) public int sendMessageToNanoApp(@NonNull android.hardware.location.NanoAppMessage);
5895    method @NonNull @RequiresPermission(android.Manifest.permission.ACCESS_CONTEXT_HUB) public android.hardware.location.ContextHubTransaction<java.lang.Void> sendReliableMessageToNanoApp(@NonNull android.hardware.location.NanoAppMessage);
5896  }
5897
5898  public class ContextHubClientCallback {
5899    ctor public ContextHubClientCallback();
5900    method public void onClientAuthorizationChanged(@NonNull android.hardware.location.ContextHubClient, long, int);
5901    method public void onHubReset(android.hardware.location.ContextHubClient);
5902    method public void onMessageFromNanoApp(android.hardware.location.ContextHubClient, android.hardware.location.NanoAppMessage);
5903    method public void onNanoAppAborted(android.hardware.location.ContextHubClient, long, int);
5904    method public void onNanoAppDisabled(android.hardware.location.ContextHubClient, long);
5905    method public void onNanoAppEnabled(android.hardware.location.ContextHubClient, long);
5906    method public void onNanoAppLoaded(android.hardware.location.ContextHubClient, long);
5907    method public void onNanoAppUnloaded(android.hardware.location.ContextHubClient, long);
5908  }
5909
5910  public class ContextHubInfo implements android.os.Parcelable {
5911    ctor public ContextHubInfo();
5912    method public int describeContents();
5913    method public byte getChreApiMajorVersion();
5914    method public byte getChreApiMinorVersion();
5915    method public short getChrePatchVersion();
5916    method public long getChrePlatformId();
5917    method public int getId();
5918    method public int getMaxPacketLengthBytes();
5919    method public android.hardware.location.MemoryRegion[] getMemoryRegions();
5920    method public String getName();
5921    method public float getPeakMips();
5922    method public float getPeakPowerDrawMw();
5923    method public int getPlatformVersion();
5924    method public float getSleepPowerDrawMw();
5925    method public int getStaticSwVersion();
5926    method public float getStoppedPowerDrawMw();
5927    method public int[] getSupportedSensors();
5928    method public String getToolchain();
5929    method public int getToolchainVersion();
5930    method public String getVendor();
5931    method public boolean supportsReliableMessages();
5932    method public void writeToParcel(android.os.Parcel, int);
5933    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.location.ContextHubInfo> CREATOR;
5934  }
5935
5936  public class ContextHubIntentEvent {
5937    method @NonNull public static android.hardware.location.ContextHubIntentEvent fromIntent(@NonNull android.content.Intent);
5938    method public int getClientAuthorizationState();
5939    method @NonNull public android.hardware.location.ContextHubInfo getContextHubInfo();
5940    method public int getEventType();
5941    method public int getNanoAppAbortCode();
5942    method public long getNanoAppId();
5943    method @NonNull public android.hardware.location.NanoAppMessage getNanoAppMessage();
5944  }
5945
5946  public final class ContextHubManager {
5947    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);
5948    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);
5949    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);
5950    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);
5951    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);
5952    method @NonNull @RequiresPermission(android.Manifest.permission.ACCESS_CONTEXT_HUB) public android.hardware.location.ContextHubTransaction<java.lang.Void> disableNanoApp(@NonNull android.hardware.location.ContextHubInfo, long);
5953    method @NonNull @RequiresPermission(android.Manifest.permission.ACCESS_CONTEXT_HUB) public android.hardware.location.ContextHubTransaction<java.lang.Void> enableNanoApp(@NonNull android.hardware.location.ContextHubInfo, long);
5954    method @Deprecated @NonNull @RequiresPermission(android.Manifest.permission.ACCESS_CONTEXT_HUB) public int[] findNanoAppOnHub(int, @NonNull android.hardware.location.NanoAppFilter);
5955    method @Deprecated @RequiresPermission(android.Manifest.permission.ACCESS_CONTEXT_HUB) public int[] getContextHubHandles();
5956    method @Deprecated @RequiresPermission(android.Manifest.permission.ACCESS_CONTEXT_HUB) public android.hardware.location.ContextHubInfo getContextHubInfo(int);
5957    method @NonNull @RequiresPermission(android.Manifest.permission.ACCESS_CONTEXT_HUB) public java.util.List<android.hardware.location.ContextHubInfo> getContextHubs();
5958    method @Deprecated @Nullable @RequiresPermission(android.Manifest.permission.ACCESS_CONTEXT_HUB) public android.hardware.location.NanoAppInstanceInfo getNanoAppInstanceInfo(int);
5959    method @Deprecated @RequiresPermission(android.Manifest.permission.ACCESS_CONTEXT_HUB) public int loadNanoApp(int, @NonNull android.hardware.location.NanoApp);
5960    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);
5961    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);
5962    method @Deprecated public int registerCallback(@NonNull android.hardware.location.ContextHubManager.Callback);
5963    method @Deprecated public int registerCallback(android.hardware.location.ContextHubManager.Callback, android.os.Handler);
5964    method @Deprecated @RequiresPermission(android.Manifest.permission.ACCESS_CONTEXT_HUB) public int sendMessage(int, int, @NonNull android.hardware.location.ContextHubMessage);
5965    method @Deprecated @RequiresPermission(android.Manifest.permission.ACCESS_CONTEXT_HUB) public int unloadNanoApp(int);
5966    method @NonNull @RequiresPermission(android.Manifest.permission.ACCESS_CONTEXT_HUB) public android.hardware.location.ContextHubTransaction<java.lang.Void> unloadNanoApp(@NonNull android.hardware.location.ContextHubInfo, long);
5967    method @Deprecated public int unregisterCallback(@NonNull android.hardware.location.ContextHubManager.Callback);
5968    field public static final int AUTHORIZATION_DENIED = 0; // 0x0
5969    field public static final int AUTHORIZATION_DENIED_GRACE_PERIOD = 1; // 0x1
5970    field public static final int AUTHORIZATION_GRANTED = 2; // 0x2
5971    field public static final int EVENT_CLIENT_AUTHORIZATION = 7; // 0x7
5972    field public static final int EVENT_HUB_RESET = 6; // 0x6
5973    field public static final int EVENT_NANOAPP_ABORTED = 4; // 0x4
5974    field public static final int EVENT_NANOAPP_DISABLED = 3; // 0x3
5975    field public static final int EVENT_NANOAPP_ENABLED = 2; // 0x2
5976    field public static final int EVENT_NANOAPP_LOADED = 0; // 0x0
5977    field public static final int EVENT_NANOAPP_MESSAGE = 5; // 0x5
5978    field public static final int EVENT_NANOAPP_UNLOADED = 1; // 0x1
5979    field public static final String EXTRA_CLIENT_AUTHORIZATION_STATE = "android.hardware.location.extra.CLIENT_AUTHORIZATION_STATE";
5980    field public static final String EXTRA_CONTEXT_HUB_INFO = "android.hardware.location.extra.CONTEXT_HUB_INFO";
5981    field public static final String EXTRA_EVENT_TYPE = "android.hardware.location.extra.EVENT_TYPE";
5982    field public static final String EXTRA_MESSAGE = "android.hardware.location.extra.MESSAGE";
5983    field public static final String EXTRA_NANOAPP_ABORT_CODE = "android.hardware.location.extra.NANOAPP_ABORT_CODE";
5984    field public static final String EXTRA_NANOAPP_ID = "android.hardware.location.extra.NANOAPP_ID";
5985  }
5986
5987  @Deprecated public abstract static class ContextHubManager.Callback {
5988    ctor @Deprecated protected ContextHubManager.Callback();
5989    method @Deprecated public abstract void onMessageReceipt(int, int, @NonNull android.hardware.location.ContextHubMessage);
5990  }
5991
5992  @Deprecated public class ContextHubMessage implements android.os.Parcelable {
5993    ctor @Deprecated public ContextHubMessage(int, int, byte[]);
5994    method @Deprecated public int describeContents();
5995    method @Deprecated public byte[] getData();
5996    method @Deprecated public int getMsgType();
5997    method @Deprecated public int getVersion();
5998    method @Deprecated public void setMsgData(byte[]);
5999    method @Deprecated public void setMsgType(int);
6000    method @Deprecated public void setVersion(int);
6001    method @Deprecated public void writeToParcel(android.os.Parcel, int);
6002    field @Deprecated @NonNull public static final android.os.Parcelable.Creator<android.hardware.location.ContextHubMessage> CREATOR;
6003  }
6004
6005  public class ContextHubTransaction<T> {
6006    method public int getType();
6007    method public void setOnCompleteListener(@NonNull android.hardware.location.ContextHubTransaction.OnCompleteListener<T>, @NonNull java.util.concurrent.Executor);
6008    method public void setOnCompleteListener(@NonNull android.hardware.location.ContextHubTransaction.OnCompleteListener<T>);
6009    method public static String typeToString(int, boolean);
6010    method public android.hardware.location.ContextHubTransaction.Response<T> waitForResponse(long, java.util.concurrent.TimeUnit) throws java.lang.InterruptedException, java.util.concurrent.TimeoutException;
6011    field public static final int RESULT_FAILED_AT_HUB = 5; // 0x5
6012    field public static final int RESULT_FAILED_BAD_PARAMS = 2; // 0x2
6013    field public static final int RESULT_FAILED_BUSY = 4; // 0x4
6014    field public static final int RESULT_FAILED_HAL_UNAVAILABLE = 8; // 0x8
6015    field public static final int RESULT_FAILED_NOT_SUPPORTED = 9; // 0x9
6016    field public static final int RESULT_FAILED_SERVICE_INTERNAL_FAILURE = 7; // 0x7
6017    field public static final int RESULT_FAILED_TIMEOUT = 6; // 0x6
6018    field public static final int RESULT_FAILED_UNINITIALIZED = 3; // 0x3
6019    field public static final int RESULT_FAILED_UNKNOWN = 1; // 0x1
6020    field public static final int RESULT_SUCCESS = 0; // 0x0
6021    field public static final int TYPE_DISABLE_NANOAPP = 3; // 0x3
6022    field public static final int TYPE_ENABLE_NANOAPP = 2; // 0x2
6023    field public static final int TYPE_LOAD_NANOAPP = 0; // 0x0
6024    field public static final int TYPE_QUERY_NANOAPPS = 4; // 0x4
6025    field public static final int TYPE_RELIABLE_MESSAGE = 5; // 0x5
6026    field public static final int TYPE_UNLOAD_NANOAPP = 1; // 0x1
6027  }
6028
6029  @java.lang.FunctionalInterface public static interface ContextHubTransaction.OnCompleteListener<L> {
6030    method public void onComplete(android.hardware.location.ContextHubTransaction<L>, android.hardware.location.ContextHubTransaction.Response<L>);
6031  }
6032
6033  public static class ContextHubTransaction.Response<R> {
6034    method public R getContents();
6035    method public int getResult();
6036  }
6037
6038  public final class GeofenceHardware {
6039    method public boolean addGeofence(int, int, android.hardware.location.GeofenceHardwareRequest, android.hardware.location.GeofenceHardwareCallback);
6040    method public int[] getMonitoringTypes();
6041    method public int getStatusOfMonitoringType(int);
6042    method public boolean pauseGeofence(int, int);
6043    method public boolean registerForMonitorStateChangeCallback(int, android.hardware.location.GeofenceHardwareMonitorCallback);
6044    method public boolean removeGeofence(int, int);
6045    method public boolean resumeGeofence(int, int, int);
6046    method public boolean unregisterForMonitorStateChangeCallback(int, android.hardware.location.GeofenceHardwareMonitorCallback);
6047    field public static final int GEOFENCE_ENTERED = 1; // 0x1
6048    field public static final int GEOFENCE_ERROR_ID_EXISTS = 2; // 0x2
6049    field public static final int GEOFENCE_ERROR_ID_UNKNOWN = 3; // 0x3
6050    field public static final int GEOFENCE_ERROR_INSUFFICIENT_MEMORY = 6; // 0x6
6051    field public static final int GEOFENCE_ERROR_INVALID_TRANSITION = 4; // 0x4
6052    field public static final int GEOFENCE_ERROR_TOO_MANY_GEOFENCES = 1; // 0x1
6053    field public static final int GEOFENCE_EXITED = 2; // 0x2
6054    field public static final int GEOFENCE_FAILURE = 5; // 0x5
6055    field public static final int GEOFENCE_SUCCESS = 0; // 0x0
6056    field public static final int GEOFENCE_UNCERTAIN = 4; // 0x4
6057    field public static final int MONITORING_TYPE_FUSED_HARDWARE = 1; // 0x1
6058    field public static final int MONITORING_TYPE_GPS_HARDWARE = 0; // 0x0
6059    field public static final int MONITOR_CURRENTLY_AVAILABLE = 0; // 0x0
6060    field public static final int MONITOR_CURRENTLY_UNAVAILABLE = 1; // 0x1
6061    field public static final int MONITOR_UNSUPPORTED = 2; // 0x2
6062    field public static final int SOURCE_TECHNOLOGY_BLUETOOTH = 16; // 0x10
6063    field public static final int SOURCE_TECHNOLOGY_CELL = 8; // 0x8
6064    field public static final int SOURCE_TECHNOLOGY_GNSS = 1; // 0x1
6065    field public static final int SOURCE_TECHNOLOGY_SENSORS = 4; // 0x4
6066    field public static final int SOURCE_TECHNOLOGY_WIFI = 2; // 0x2
6067  }
6068
6069  public abstract class GeofenceHardwareCallback {
6070    ctor public GeofenceHardwareCallback();
6071    method public void onGeofenceAdd(int, int);
6072    method public void onGeofencePause(int, int);
6073    method public void onGeofenceRemove(int, int);
6074    method public void onGeofenceResume(int, int);
6075    method public void onGeofenceTransition(int, int, android.location.Location, long, int);
6076  }
6077
6078  public abstract class GeofenceHardwareMonitorCallback {
6079    ctor public GeofenceHardwareMonitorCallback();
6080    method @Deprecated public void onMonitoringSystemChange(int, boolean, android.location.Location);
6081    method public void onMonitoringSystemChange(android.hardware.location.GeofenceHardwareMonitorEvent);
6082  }
6083
6084  public class GeofenceHardwareMonitorEvent implements android.os.Parcelable {
6085    ctor public GeofenceHardwareMonitorEvent(int, int, int, android.location.Location);
6086    method public int describeContents();
6087    method public android.location.Location getLocation();
6088    method public int getMonitoringStatus();
6089    method public int getMonitoringType();
6090    method public int getSourceTechnologies();
6091    method public void writeToParcel(android.os.Parcel, int);
6092    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.location.GeofenceHardwareMonitorEvent> CREATOR;
6093  }
6094
6095  public final class GeofenceHardwareRequest {
6096    ctor public GeofenceHardwareRequest();
6097    method public static android.hardware.location.GeofenceHardwareRequest createCircularGeofence(double, double, double);
6098    method public int getLastTransition();
6099    method public double getLatitude();
6100    method public double getLongitude();
6101    method public int getMonitorTransitions();
6102    method public int getNotificationResponsiveness();
6103    method public double getRadius();
6104    method public int getSourceTechnologies();
6105    method public int getUnknownTimer();
6106    method public void setLastTransition(int);
6107    method public void setMonitorTransitions(int);
6108    method public void setNotificationResponsiveness(int);
6109    method public void setSourceTechnologies(int);
6110    method public void setUnknownTimer(int);
6111  }
6112
6113  public class MemoryRegion implements android.os.Parcelable {
6114    ctor public MemoryRegion(android.os.Parcel);
6115    method public int describeContents();
6116    method public int getCapacityBytes();
6117    method public int getFreeCapacityBytes();
6118    method public boolean isExecutable();
6119    method public boolean isReadable();
6120    method public boolean isWritable();
6121    method public void writeToParcel(android.os.Parcel, int);
6122    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.location.MemoryRegion> CREATOR;
6123  }
6124
6125  @Deprecated public class NanoApp implements android.os.Parcelable {
6126    ctor @Deprecated public NanoApp();
6127    ctor @Deprecated public NanoApp(int, byte[]);
6128    ctor @Deprecated public NanoApp(long, byte[]);
6129    method @Deprecated public int describeContents();
6130    method @Deprecated public byte[] getAppBinary();
6131    method @Deprecated public long getAppId();
6132    method @Deprecated public int getAppVersion();
6133    method @Deprecated public String getName();
6134    method @Deprecated public int getNeededExecMemBytes();
6135    method @Deprecated public int getNeededReadMemBytes();
6136    method @Deprecated public int[] getNeededSensors();
6137    method @Deprecated public int getNeededWriteMemBytes();
6138    method @Deprecated public int[] getOutputEvents();
6139    method @Deprecated public String getPublisher();
6140    method @Deprecated public void setAppBinary(byte[]);
6141    method @Deprecated public void setAppId(long);
6142    method @Deprecated public void setAppVersion(int);
6143    method @Deprecated public void setName(String);
6144    method @Deprecated public void setNeededExecMemBytes(int);
6145    method @Deprecated public void setNeededReadMemBytes(int);
6146    method @Deprecated public void setNeededSensors(int[]);
6147    method @Deprecated public void setNeededWriteMemBytes(int);
6148    method @Deprecated public void setOutputEvents(int[]);
6149    method @Deprecated public void setPublisher(String);
6150    method @Deprecated public void writeToParcel(android.os.Parcel, int);
6151    field @Deprecated @NonNull public static final android.os.Parcelable.Creator<android.hardware.location.NanoApp> CREATOR;
6152  }
6153
6154  public final class NanoAppBinary implements android.os.Parcelable {
6155    ctor public NanoAppBinary(byte[]);
6156    method public int describeContents();
6157    method public byte[] getBinary();
6158    method public byte[] getBinaryNoHeader();
6159    method public int getFlags();
6160    method public int getHeaderVersion();
6161    method public long getHwHubType();
6162    method public long getNanoAppId();
6163    method public int getNanoAppVersion();
6164    method public byte getTargetChreApiMajorVersion();
6165    method public byte getTargetChreApiMinorVersion();
6166    method public boolean hasValidHeader();
6167    method public boolean isEncrypted();
6168    method public boolean isSigned();
6169    method public void writeToParcel(android.os.Parcel, int);
6170    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.location.NanoAppBinary> CREATOR;
6171  }
6172
6173  @Deprecated public class NanoAppFilter implements android.os.Parcelable {
6174    ctor @Deprecated public NanoAppFilter(long, int, int, long);
6175    method @Deprecated public int describeContents();
6176    method @Deprecated public boolean testMatch(android.hardware.location.NanoAppInstanceInfo);
6177    method @Deprecated public void writeToParcel(android.os.Parcel, int);
6178    field @Deprecated public static final int APP_ANY = -1; // 0xffffffff
6179    field @Deprecated @NonNull public static final android.os.Parcelable.Creator<android.hardware.location.NanoAppFilter> CREATOR;
6180    field @Deprecated public static final int FLAGS_VERSION_ANY = -1; // 0xffffffff
6181    field @Deprecated public static final int FLAGS_VERSION_GREAT_THAN = 2; // 0x2
6182    field @Deprecated public static final int FLAGS_VERSION_LESS_THAN = 4; // 0x4
6183    field @Deprecated public static final int FLAGS_VERSION_STRICTLY_EQUAL = 8; // 0x8
6184    field @Deprecated public static final int HUB_ANY = -1; // 0xffffffff
6185    field @Deprecated public static final int VENDOR_ANY = -1; // 0xffffffff
6186  }
6187
6188  @Deprecated public class NanoAppInstanceInfo implements android.os.Parcelable {
6189    ctor @Deprecated public NanoAppInstanceInfo();
6190    method @Deprecated public int describeContents();
6191    method @Deprecated public long getAppId();
6192    method @Deprecated public int getAppVersion();
6193    method @Deprecated public int getContexthubId();
6194    method @Deprecated public int getHandle();
6195    method @Deprecated public String getName();
6196    method @Deprecated public int getNeededExecMemBytes();
6197    method @Deprecated public int getNeededReadMemBytes();
6198    method @Deprecated @NonNull public int[] getNeededSensors();
6199    method @Deprecated public int getNeededWriteMemBytes();
6200    method @Deprecated @NonNull public int[] getOutputEvents();
6201    method @Deprecated public String getPublisher();
6202    method @Deprecated public void writeToParcel(android.os.Parcel, int);
6203    field @Deprecated @NonNull public static final android.os.Parcelable.Creator<android.hardware.location.NanoAppInstanceInfo> CREATOR;
6204  }
6205
6206  public final class NanoAppMessage implements android.os.Parcelable {
6207    method public static android.hardware.location.NanoAppMessage createMessageFromNanoApp(long, int, byte[], boolean);
6208    method @NonNull public static android.hardware.location.NanoAppMessage createMessageFromNanoApp(long, int, @NonNull byte[], boolean, boolean, int);
6209    method public static android.hardware.location.NanoAppMessage createMessageToNanoApp(long, int, byte[]);
6210    method public int describeContents();
6211    method public byte[] getMessageBody();
6212    method public int getMessageSequenceNumber();
6213    method public int getMessageType();
6214    method public long getNanoAppId();
6215    method public boolean isBroadcastMessage();
6216    method public boolean isReliable();
6217    method public void writeToParcel(android.os.Parcel, int);
6218    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.location.NanoAppMessage> CREATOR;
6219  }
6220
6221  public final class NanoAppRpcService implements android.os.Parcelable {
6222    ctor public NanoAppRpcService(long, int);
6223    method public int describeContents();
6224    method public long getId();
6225    method public int getVersion();
6226    method public void writeToParcel(@NonNull android.os.Parcel, int);
6227    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.location.NanoAppRpcService> CREATOR;
6228  }
6229
6230  public final class NanoAppState implements android.os.Parcelable {
6231    ctor public NanoAppState(long, int, boolean);
6232    ctor public NanoAppState(long, int, boolean, @NonNull java.util.List<java.lang.String>);
6233    ctor public NanoAppState(long, int, boolean, @NonNull java.util.List<java.lang.String>, @NonNull java.util.List<android.hardware.location.NanoAppRpcService>);
6234    method public int describeContents();
6235    method public long getNanoAppId();
6236    method @NonNull public java.util.List<java.lang.String> getNanoAppPermissions();
6237    method public long getNanoAppVersion();
6238    method @NonNull public java.util.List<android.hardware.location.NanoAppRpcService> getRpcServices();
6239    method public boolean isEnabled();
6240    method public void writeToParcel(android.os.Parcel, int);
6241    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.location.NanoAppState> CREATOR;
6242  }
6243
6244}
6245
6246package android.hardware.radio {
6247
6248  public final class Announcement implements android.os.Parcelable {
6249    method public int describeContents();
6250    method @NonNull public android.hardware.radio.ProgramSelector getSelector();
6251    method public int getType();
6252    method @NonNull public java.util.Map<java.lang.String,java.lang.String> getVendorInfo();
6253    method public void writeToParcel(android.os.Parcel, int);
6254    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.Announcement> CREATOR;
6255    field public static final int TYPE_EMERGENCY = 1; // 0x1
6256    field public static final int TYPE_EVENT = 6; // 0x6
6257    field public static final int TYPE_MISC = 8; // 0x8
6258    field public static final int TYPE_NEWS = 5; // 0x5
6259    field public static final int TYPE_SPORT = 7; // 0x7
6260    field public static final int TYPE_TRAFFIC = 3; // 0x3
6261    field public static final int TYPE_WARNING = 2; // 0x2
6262    field public static final int TYPE_WEATHER = 4; // 0x4
6263  }
6264
6265  public static interface Announcement.OnListUpdatedListener {
6266    method public void onListUpdated(java.util.Collection<android.hardware.radio.Announcement>);
6267  }
6268
6269  public final class ProgramList implements java.lang.AutoCloseable {
6270    method public void addOnCompleteListener(@NonNull java.util.concurrent.Executor, @NonNull android.hardware.radio.ProgramList.OnCompleteListener);
6271    method public void addOnCompleteListener(@NonNull android.hardware.radio.ProgramList.OnCompleteListener);
6272    method public void close();
6273    method @Deprecated @Nullable public android.hardware.radio.RadioManager.ProgramInfo get(@NonNull android.hardware.radio.ProgramSelector.Identifier);
6274    method @NonNull public java.util.List<android.hardware.radio.RadioManager.ProgramInfo> getProgramInfos(@NonNull android.hardware.radio.ProgramSelector.Identifier);
6275    method public void registerListCallback(@NonNull java.util.concurrent.Executor, @NonNull android.hardware.radio.ProgramList.ListCallback);
6276    method public void registerListCallback(@NonNull android.hardware.radio.ProgramList.ListCallback);
6277    method public void removeOnCompleteListener(@NonNull android.hardware.radio.ProgramList.OnCompleteListener);
6278    method @NonNull public java.util.List<android.hardware.radio.RadioManager.ProgramInfo> toList();
6279    method public void unregisterListCallback(@NonNull android.hardware.radio.ProgramList.ListCallback);
6280  }
6281
6282  public static final class ProgramList.Filter implements android.os.Parcelable {
6283    ctor public ProgramList.Filter(@NonNull java.util.Set<java.lang.Integer>, @NonNull java.util.Set<android.hardware.radio.ProgramSelector.Identifier>, boolean, boolean);
6284    method public boolean areCategoriesIncluded();
6285    method public boolean areModificationsExcluded();
6286    method public int describeContents();
6287    method @NonNull public java.util.Set<java.lang.Integer> getIdentifierTypes();
6288    method @NonNull public java.util.Set<android.hardware.radio.ProgramSelector.Identifier> getIdentifiers();
6289    method public void writeToParcel(android.os.Parcel, int);
6290    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.ProgramList.Filter> CREATOR;
6291  }
6292
6293  public abstract static class ProgramList.ListCallback {
6294    ctor public ProgramList.ListCallback();
6295    method public void onItemChanged(@NonNull android.hardware.radio.ProgramSelector.Identifier);
6296    method public void onItemRemoved(@NonNull android.hardware.radio.ProgramSelector.Identifier);
6297  }
6298
6299  public static interface ProgramList.OnCompleteListener {
6300    method public void onComplete();
6301  }
6302
6303  public final class ProgramSelector implements android.os.Parcelable {
6304    ctor public ProgramSelector(int, @NonNull android.hardware.radio.ProgramSelector.Identifier, @Nullable android.hardware.radio.ProgramSelector.Identifier[], @Nullable long[]);
6305    method @NonNull public static android.hardware.radio.ProgramSelector createAmFmSelector(int, int);
6306    method @NonNull public static android.hardware.radio.ProgramSelector createAmFmSelector(int, int, int);
6307    method public int describeContents();
6308    method @NonNull public android.hardware.radio.ProgramSelector.Identifier[] getAllIds(int);
6309    method public long getFirstId(int);
6310    method @NonNull public android.hardware.radio.ProgramSelector.Identifier getPrimaryId();
6311    method @Deprecated public int getProgramType();
6312    method @NonNull public android.hardware.radio.ProgramSelector.Identifier[] getSecondaryIds();
6313    method @Deprecated @NonNull public long[] getVendorIds();
6314    method @NonNull public android.hardware.radio.ProgramSelector withSecondaryPreferred(@NonNull android.hardware.radio.ProgramSelector.Identifier);
6315    method public void writeToParcel(android.os.Parcel, int);
6316    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.ProgramSelector> CREATOR;
6317    field public static final int IDENTIFIER_TYPE_AMFM_FREQUENCY = 1; // 0x1
6318    field public static final int IDENTIFIER_TYPE_DAB_DMB_SID_EXT = 14; // 0xe
6319    field public static final int IDENTIFIER_TYPE_DAB_ENSEMBLE = 6; // 0x6
6320    field public static final int IDENTIFIER_TYPE_DAB_FREQUENCY = 8; // 0x8
6321    field public static final int IDENTIFIER_TYPE_DAB_SCID = 7; // 0x7
6322    field @Deprecated public static final int IDENTIFIER_TYPE_DAB_SIDECC = 5; // 0x5
6323    field @Deprecated public static final int IDENTIFIER_TYPE_DAB_SID_EXT = 5; // 0x5
6324    field public static final int IDENTIFIER_TYPE_DRMO_FREQUENCY = 10; // 0xa
6325    field @Deprecated public static final int IDENTIFIER_TYPE_DRMO_MODULATION = 11; // 0xb
6326    field public static final int IDENTIFIER_TYPE_DRMO_SERVICE_ID = 9; // 0x9
6327    field public static final int IDENTIFIER_TYPE_HD_STATION_ID_EXT = 3; // 0x3
6328    field public static final int IDENTIFIER_TYPE_HD_STATION_LOCATION = 15; // 0xf
6329    field public static final int IDENTIFIER_TYPE_HD_STATION_NAME = 10004; // 0x2714
6330    field @Deprecated public static final int IDENTIFIER_TYPE_HD_SUBCHANNEL = 4; // 0x4
6331    field public static final int IDENTIFIER_TYPE_INVALID = 0; // 0x0
6332    field public static final int IDENTIFIER_TYPE_RDS_PI = 2; // 0x2
6333    field @Deprecated public static final int IDENTIFIER_TYPE_SXM_CHANNEL = 13; // 0xd
6334    field @Deprecated public static final int IDENTIFIER_TYPE_SXM_SERVICE_ID = 12; // 0xc
6335    field public static final int IDENTIFIER_TYPE_VENDOR_END = 1999; // 0x7cf
6336    field @Deprecated public static final int IDENTIFIER_TYPE_VENDOR_PRIMARY_END = 1999; // 0x7cf
6337    field @Deprecated public static final int IDENTIFIER_TYPE_VENDOR_PRIMARY_START = 1000; // 0x3e8
6338    field public static final int IDENTIFIER_TYPE_VENDOR_START = 1000; // 0x3e8
6339    field @Deprecated public static final int PROGRAM_TYPE_AM = 1; // 0x1
6340    field @Deprecated public static final int PROGRAM_TYPE_AM_HD = 3; // 0x3
6341    field @Deprecated public static final int PROGRAM_TYPE_DAB = 5; // 0x5
6342    field @Deprecated public static final int PROGRAM_TYPE_DRMO = 6; // 0x6
6343    field @Deprecated public static final int PROGRAM_TYPE_FM = 2; // 0x2
6344    field @Deprecated public static final int PROGRAM_TYPE_FM_HD = 4; // 0x4
6345    field @Deprecated public static final int PROGRAM_TYPE_INVALID = 0; // 0x0
6346    field @Deprecated public static final int PROGRAM_TYPE_SXM = 7; // 0x7
6347    field @Deprecated public static final int PROGRAM_TYPE_VENDOR_END = 1999; // 0x7cf
6348    field @Deprecated public static final int PROGRAM_TYPE_VENDOR_START = 1000; // 0x3e8
6349    field public static final int SUB_CHANNEL_HD_1 = 1; // 0x1
6350    field public static final int SUB_CHANNEL_HD_2 = 2; // 0x2
6351    field public static final int SUB_CHANNEL_HD_3 = 4; // 0x4
6352    field public static final int SUB_CHANNEL_HD_4 = 8; // 0x8
6353    field public static final int SUB_CHANNEL_HD_5 = 16; // 0x10
6354    field public static final int SUB_CHANNEL_HD_6 = 32; // 0x20
6355    field public static final int SUB_CHANNEL_HD_7 = 64; // 0x40
6356    field public static final int SUB_CHANNEL_HD_8 = 128; // 0x80
6357  }
6358
6359  public static final class ProgramSelector.Identifier implements android.os.Parcelable {
6360    ctor public ProgramSelector.Identifier(int, long);
6361    method public int describeContents();
6362    method public int getType();
6363    method public long getValue();
6364    method public boolean isCategoryType();
6365    method public void writeToParcel(android.os.Parcel, int);
6366    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.ProgramSelector.Identifier> CREATOR;
6367  }
6368
6369  public class RadioManager {
6370    method @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public void addAnnouncementListener(@NonNull java.util.Set<java.lang.Integer>, @NonNull android.hardware.radio.Announcement.OnListUpdatedListener);
6371    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);
6372    method @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public int listModules(java.util.List<android.hardware.radio.RadioManager.ModuleProperties>);
6373    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);
6374    method @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public void removeAnnouncementListener(@NonNull android.hardware.radio.Announcement.OnListUpdatedListener);
6375    field public static final int BAND_AM = 0; // 0x0
6376    field public static final int BAND_AM_HD = 3; // 0x3
6377    field public static final int BAND_FM = 1; // 0x1
6378    field public static final int BAND_FM_HD = 2; // 0x2
6379    field public static final int BAND_INVALID = -1; // 0xffffffff
6380    field public static final int CLASS_AM_FM = 0; // 0x0
6381    field public static final int CLASS_DT = 2; // 0x2
6382    field public static final int CLASS_SAT = 1; // 0x1
6383    field public static final int CONFIG_DAB_DAB_LINKING = 6; // 0x6
6384    field public static final int CONFIG_DAB_DAB_SOFT_LINKING = 8; // 0x8
6385    field public static final int CONFIG_DAB_FM_LINKING = 7; // 0x7
6386    field public static final int CONFIG_DAB_FM_SOFT_LINKING = 9; // 0x9
6387    field @Deprecated public static final int CONFIG_FORCE_ANALOG = 2; // 0x2
6388    field public static final int CONFIG_FORCE_ANALOG_AM = 11; // 0xb
6389    field public static final int CONFIG_FORCE_ANALOG_FM = 10; // 0xa
6390    field public static final int CONFIG_FORCE_DIGITAL = 3; // 0x3
6391    field public static final int CONFIG_FORCE_MONO = 1; // 0x1
6392    field public static final int CONFIG_RDS_AF = 4; // 0x4
6393    field public static final int CONFIG_RDS_REG = 5; // 0x5
6394    field public static final int REGION_ITU_1 = 0; // 0x0
6395    field public static final int REGION_ITU_2 = 1; // 0x1
6396    field public static final int REGION_JAPAN = 3; // 0x3
6397    field public static final int REGION_KOREA = 4; // 0x4
6398    field public static final int REGION_OIRT = 2; // 0x2
6399    field public static final int STATUS_BAD_VALUE = -22; // 0xffffffea
6400    field public static final int STATUS_DEAD_OBJECT = -32; // 0xffffffe0
6401    field public static final int STATUS_ERROR = -2147483648; // 0x80000000
6402    field public static final int STATUS_INVALID_OPERATION = -38; // 0xffffffda
6403    field public static final int STATUS_NO_INIT = -19; // 0xffffffed
6404    field public static final int STATUS_OK = 0; // 0x0
6405    field public static final int STATUS_PERMISSION_DENIED = -1; // 0xffffffff
6406    field public static final int STATUS_TIMED_OUT = -110; // 0xffffff92
6407  }
6408
6409  public static class RadioManager.AmBandConfig extends android.hardware.radio.RadioManager.BandConfig {
6410    method public boolean getStereo();
6411    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.RadioManager.AmBandConfig> CREATOR;
6412  }
6413
6414  public static class RadioManager.AmBandConfig.Builder {
6415    ctor public RadioManager.AmBandConfig.Builder(android.hardware.radio.RadioManager.AmBandDescriptor);
6416    ctor public RadioManager.AmBandConfig.Builder(android.hardware.radio.RadioManager.AmBandConfig);
6417    method public android.hardware.radio.RadioManager.AmBandConfig build();
6418    method public android.hardware.radio.RadioManager.AmBandConfig.Builder setStereo(boolean);
6419  }
6420
6421  public static class RadioManager.AmBandDescriptor extends android.hardware.radio.RadioManager.BandDescriptor {
6422    method public boolean isStereoSupported();
6423    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.RadioManager.AmBandDescriptor> CREATOR;
6424  }
6425
6426  public static class RadioManager.BandConfig implements android.os.Parcelable {
6427    method public int describeContents();
6428    method public int getLowerLimit();
6429    method public int getRegion();
6430    method public int getSpacing();
6431    method public int getType();
6432    method public int getUpperLimit();
6433    method public void writeToParcel(android.os.Parcel, int);
6434    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.RadioManager.BandConfig> CREATOR;
6435  }
6436
6437  public static class RadioManager.BandDescriptor implements android.os.Parcelable {
6438    method public int describeContents();
6439    method public int getLowerLimit();
6440    method public int getRegion();
6441    method public int getSpacing();
6442    method public int getType();
6443    method public int getUpperLimit();
6444    method public boolean isAmBand();
6445    method public boolean isFmBand();
6446    method public void writeToParcel(android.os.Parcel, int);
6447    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.RadioManager.BandDescriptor> CREATOR;
6448  }
6449
6450  public static class RadioManager.FmBandConfig extends android.hardware.radio.RadioManager.BandConfig {
6451    method public boolean getAf();
6452    method public boolean getEa();
6453    method public boolean getRds();
6454    method public boolean getStereo();
6455    method public boolean getTa();
6456    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.RadioManager.FmBandConfig> CREATOR;
6457  }
6458
6459  public static class RadioManager.FmBandConfig.Builder {
6460    ctor public RadioManager.FmBandConfig.Builder(android.hardware.radio.RadioManager.FmBandDescriptor);
6461    ctor public RadioManager.FmBandConfig.Builder(android.hardware.radio.RadioManager.FmBandConfig);
6462    method public android.hardware.radio.RadioManager.FmBandConfig build();
6463    method public android.hardware.radio.RadioManager.FmBandConfig.Builder setAf(boolean);
6464    method public android.hardware.radio.RadioManager.FmBandConfig.Builder setEa(boolean);
6465    method public android.hardware.radio.RadioManager.FmBandConfig.Builder setRds(boolean);
6466    method public android.hardware.radio.RadioManager.FmBandConfig.Builder setStereo(boolean);
6467    method public android.hardware.radio.RadioManager.FmBandConfig.Builder setTa(boolean);
6468  }
6469
6470  public static class RadioManager.FmBandDescriptor extends android.hardware.radio.RadioManager.BandDescriptor {
6471    method public boolean isAfSupported();
6472    method public boolean isEaSupported();
6473    method public boolean isRdsSupported();
6474    method public boolean isStereoSupported();
6475    method public boolean isTaSupported();
6476    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.RadioManager.FmBandDescriptor> CREATOR;
6477  }
6478
6479  public static class RadioManager.ModuleProperties implements android.os.Parcelable {
6480    method public int describeContents();
6481    method public android.hardware.radio.RadioManager.BandDescriptor[] getBands();
6482    method public int getClassId();
6483    method @Nullable public java.util.Map<java.lang.String,java.lang.Integer> getDabFrequencyTable();
6484    method public int getId();
6485    method public String getImplementor();
6486    method public int getNumAudioSources();
6487    method public int getNumTuners();
6488    method public String getProduct();
6489    method public String getSerial();
6490    method @NonNull public String getServiceName();
6491    method @NonNull public java.util.Map<java.lang.String,java.lang.String> getVendorInfo();
6492    method public String getVersion();
6493    method public boolean isBackgroundScanningSupported();
6494    method public boolean isCaptureSupported();
6495    method public boolean isInitializationRequired();
6496    method public boolean isProgramIdentifierSupported(int);
6497    method public boolean isProgramTypeSupported(int);
6498    method public void writeToParcel(android.os.Parcel, int);
6499    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.RadioManager.ModuleProperties> CREATOR;
6500  }
6501
6502  public static class RadioManager.ProgramInfo implements android.os.Parcelable {
6503    method public int describeContents();
6504    method @Deprecated public int getChannel();
6505    method @Nullable public android.hardware.radio.ProgramSelector.Identifier getLogicallyTunedTo();
6506    method public android.hardware.radio.RadioMetadata getMetadata();
6507    method @Nullable public android.hardware.radio.ProgramSelector.Identifier getPhysicallyTunedTo();
6508    method @Nullable public java.util.Collection<android.hardware.radio.ProgramSelector.Identifier> getRelatedContent();
6509    method @NonNull public android.hardware.radio.ProgramSelector getSelector();
6510    method public int getSignalStrength();
6511    method @Deprecated public int getSubChannel();
6512    method @NonNull public java.util.Map<java.lang.String,java.lang.String> getVendorInfo();
6513    method @Deprecated public boolean isDigital();
6514    method public boolean isHdAudioAvailable();
6515    method public boolean isHdSisAvailable();
6516    method public boolean isLive();
6517    method public boolean isMuted();
6518    method public boolean isSignalAcquired();
6519    method public boolean isStereo();
6520    method public boolean isTrafficAnnouncementActive();
6521    method public boolean isTrafficProgram();
6522    method public boolean isTuned();
6523    method public void writeToParcel(android.os.Parcel, int);
6524    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.RadioManager.ProgramInfo> CREATOR;
6525  }
6526
6527  public final class RadioMetadata implements android.os.Parcelable {
6528    method public boolean containsKey(String);
6529    method public int describeContents();
6530    method @Deprecated public android.graphics.Bitmap getBitmap(String);
6531    method public int getBitmapId(@NonNull String);
6532    method public android.hardware.radio.RadioMetadata.Clock getClock(String);
6533    method public int getInt(String);
6534    method public String getString(String);
6535    method @NonNull public String[] getStringArray(@NonNull String);
6536    method public java.util.Set<java.lang.String> keySet();
6537    method public int size();
6538    method public void writeToParcel(android.os.Parcel, int);
6539    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.RadioMetadata> CREATOR;
6540    field public static final String METADATA_KEY_ALBUM = "android.hardware.radio.metadata.ALBUM";
6541    field public static final String METADATA_KEY_ART = "android.hardware.radio.metadata.ART";
6542    field public static final String METADATA_KEY_ARTIST = "android.hardware.radio.metadata.ARTIST";
6543    field public static final String METADATA_KEY_CLOCK = "android.hardware.radio.metadata.CLOCK";
6544    field public static final String METADATA_KEY_COMMENT_ACTUAL_TEXT = "android.hardware.radio.metadata.COMMENT_ACTUAL_TEXT";
6545    field public static final String METADATA_KEY_COMMENT_SHORT_DESCRIPTION = "android.hardware.radio.metadata.COMMENT_SHORT_DESCRIPTION";
6546    field public static final String METADATA_KEY_COMMERCIAL = "android.hardware.radio.metadata.COMMERCIAL";
6547    field public static final String METADATA_KEY_DAB_COMPONENT_NAME = "android.hardware.radio.metadata.DAB_COMPONENT_NAME";
6548    field public static final String METADATA_KEY_DAB_COMPONENT_NAME_SHORT = "android.hardware.radio.metadata.DAB_COMPONENT_NAME_SHORT";
6549    field public static final String METADATA_KEY_DAB_ENSEMBLE_NAME = "android.hardware.radio.metadata.DAB_ENSEMBLE_NAME";
6550    field public static final String METADATA_KEY_DAB_ENSEMBLE_NAME_SHORT = "android.hardware.radio.metadata.DAB_ENSEMBLE_NAME_SHORT";
6551    field public static final String METADATA_KEY_DAB_SERVICE_NAME = "android.hardware.radio.metadata.DAB_SERVICE_NAME";
6552    field public static final String METADATA_KEY_DAB_SERVICE_NAME_SHORT = "android.hardware.radio.metadata.DAB_SERVICE_NAME_SHORT";
6553    field public static final String METADATA_KEY_GENRE = "android.hardware.radio.metadata.GENRE";
6554    field public static final String METADATA_KEY_HD_STATION_NAME_LONG = "android.hardware.radio.metadata.HD_STATION_NAME_LONG";
6555    field public static final String METADATA_KEY_HD_STATION_NAME_SHORT = "android.hardware.radio.metadata.HD_STATION_NAME_SHORT";
6556    field public static final String METADATA_KEY_HD_SUBCHANNELS_AVAILABLE = "android.hardware.radio.metadata.HD_SUBCHANNELS_AVAILABLE";
6557    field public static final String METADATA_KEY_ICON = "android.hardware.radio.metadata.ICON";
6558    field public static final String METADATA_KEY_PROGRAM_NAME = "android.hardware.radio.metadata.PROGRAM_NAME";
6559    field public static final String METADATA_KEY_RBDS_PTY = "android.hardware.radio.metadata.RBDS_PTY";
6560    field public static final String METADATA_KEY_RDS_PI = "android.hardware.radio.metadata.RDS_PI";
6561    field public static final String METADATA_KEY_RDS_PS = "android.hardware.radio.metadata.RDS_PS";
6562    field public static final String METADATA_KEY_RDS_PTY = "android.hardware.radio.metadata.RDS_PTY";
6563    field public static final String METADATA_KEY_RDS_RT = "android.hardware.radio.metadata.RDS_RT";
6564    field public static final String METADATA_KEY_TITLE = "android.hardware.radio.metadata.TITLE";
6565    field public static final String METADATA_KEY_UFIDS = "android.hardware.radio.metadata.UFIDS";
6566  }
6567
6568  public static final class RadioMetadata.Builder {
6569    ctor public RadioMetadata.Builder();
6570    ctor public RadioMetadata.Builder(android.hardware.radio.RadioMetadata);
6571    method public android.hardware.radio.RadioMetadata build();
6572    method public android.hardware.radio.RadioMetadata.Builder putBitmap(String, android.graphics.Bitmap);
6573    method public android.hardware.radio.RadioMetadata.Builder putClock(String, long, int);
6574    method public android.hardware.radio.RadioMetadata.Builder putInt(String, int);
6575    method public android.hardware.radio.RadioMetadata.Builder putString(String, String);
6576    method @NonNull public android.hardware.radio.RadioMetadata.Builder putStringArray(@NonNull String, @NonNull String[]);
6577  }
6578
6579  public static final class RadioMetadata.Clock implements android.os.Parcelable {
6580    ctor public RadioMetadata.Clock(long, int);
6581    method public int describeContents();
6582    method public int getTimezoneOffsetMinutes();
6583    method public long getUtcEpochSeconds();
6584    method public void writeToParcel(android.os.Parcel, int);
6585    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.RadioMetadata.Clock> CREATOR;
6586  }
6587
6588  public abstract class RadioTuner {
6589    ctor public RadioTuner();
6590    method @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public abstract int cancel();
6591    method @Deprecated @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public abstract void cancelAnnouncement();
6592    method @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public abstract void close();
6593    method @Deprecated @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public abstract int getConfiguration(android.hardware.radio.RadioManager.BandConfig[]);
6594    method @Nullable @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public android.hardware.radio.ProgramList getDynamicProgramList(@Nullable android.hardware.radio.ProgramList.Filter);
6595    method @NonNull @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public android.graphics.Bitmap getMetadataImage(int);
6596    method @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public abstract boolean getMute();
6597    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>);
6598    method @Deprecated @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public abstract int getProgramInformation(android.hardware.radio.RadioManager.ProgramInfo[]);
6599    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>);
6600    method @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public abstract boolean hasControl();
6601    method @Deprecated @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public abstract boolean isAnalogForced();
6602    method @Deprecated @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public abstract boolean isAntennaConnected();
6603    method @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public boolean isConfigFlagSet(int);
6604    method @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public boolean isConfigFlagSupported(int);
6605    method @Deprecated @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public abstract int scan(int, boolean);
6606    method @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public int seek(int, boolean);
6607    method @Deprecated @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public abstract void setAnalogForced(boolean);
6608    method @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public void setConfigFlag(int, boolean);
6609    method @Deprecated @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public abstract int setConfiguration(android.hardware.radio.RadioManager.BandConfig);
6610    method @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public abstract int setMute(boolean);
6611    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>);
6612    method @Deprecated @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public abstract boolean startBackgroundScan();
6613    method @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public abstract int step(int, boolean);
6614    method @Deprecated @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public abstract int tune(int, int);
6615    method @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public abstract void tune(@NonNull android.hardware.radio.ProgramSelector);
6616    field public static final int DIRECTION_DOWN = 1; // 0x1
6617    field public static final int DIRECTION_UP = 0; // 0x0
6618    field @Deprecated public static final int ERROR_BACKGROUND_SCAN_FAILED = 6; // 0x6
6619    field @Deprecated public static final int ERROR_BACKGROUND_SCAN_UNAVAILABLE = 5; // 0x5
6620    field @Deprecated public static final int ERROR_CANCELLED = 2; // 0x2
6621    field @Deprecated public static final int ERROR_CONFIG = 4; // 0x4
6622    field @Deprecated public static final int ERROR_HARDWARE_FAILURE = 0; // 0x0
6623    field @Deprecated public static final int ERROR_SCAN_TIMEOUT = 3; // 0x3
6624    field @Deprecated public static final int ERROR_SERVER_DIED = 1; // 0x1
6625    field public static final int TUNER_RESULT_CANCELED = 6; // 0x6
6626    field public static final int TUNER_RESULT_INTERNAL_ERROR = 1; // 0x1
6627    field public static final int TUNER_RESULT_INVALID_ARGUMENTS = 2; // 0x2
6628    field public static final int TUNER_RESULT_INVALID_STATE = 3; // 0x3
6629    field public static final int TUNER_RESULT_NOT_SUPPORTED = 4; // 0x4
6630    field public static final int TUNER_RESULT_OK = 0; // 0x0
6631    field public static final int TUNER_RESULT_TIMEOUT = 5; // 0x5
6632    field public static final int TUNER_RESULT_UNKNOWN_ERROR = 7; // 0x7
6633  }
6634
6635  public abstract static class RadioTuner.Callback {
6636    ctor public RadioTuner.Callback();
6637    method public void onAntennaState(boolean);
6638    method public void onBackgroundScanAvailabilityChange(boolean);
6639    method public void onBackgroundScanComplete();
6640    method public void onConfigFlagUpdated(int, boolean);
6641    method @Deprecated public void onConfigurationChanged(android.hardware.radio.RadioManager.BandConfig);
6642    method public void onControlChanged(boolean);
6643    method public void onEmergencyAnnouncement(boolean);
6644    method @Deprecated public void onError(int);
6645    method @Deprecated public void onMetadataChanged(android.hardware.radio.RadioMetadata);
6646    method public void onParametersUpdated(@NonNull java.util.Map<java.lang.String,java.lang.String>);
6647    method public void onProgramInfoChanged(android.hardware.radio.RadioManager.ProgramInfo);
6648    method public void onProgramListChanged();
6649    method public void onTrafficAnnouncement(boolean);
6650    method public void onTuneFailed(int, @Nullable android.hardware.radio.ProgramSelector);
6651  }
6652
6653}
6654
6655package android.hardware.soundtrigger {
6656
6657  public class SoundTrigger {
6658    field public static final int RECOGNITION_MODE_GENERIC = 8; // 0x8
6659    field public static final int RECOGNITION_MODE_USER_AUTHENTICATION = 4; // 0x4
6660    field public static final int RECOGNITION_MODE_USER_IDENTIFICATION = 2; // 0x2
6661    field public static final int RECOGNITION_MODE_VOICE_TRIGGER = 1; // 0x1
6662    field public static final int STATUS_OK = 0; // 0x0
6663  }
6664
6665  public static final class SoundTrigger.Keyphrase implements android.os.Parcelable {
6666    ctor public SoundTrigger.Keyphrase(int, int, @NonNull java.util.Locale, @NonNull String, @Nullable int[]);
6667    method public int describeContents();
6668    method public int getId();
6669    method @NonNull public java.util.Locale getLocale();
6670    method public int getRecognitionModes();
6671    method @NonNull public String getText();
6672    method @NonNull public int[] getUsers();
6673    method @NonNull public static android.hardware.soundtrigger.SoundTrigger.Keyphrase readFromParcel(@NonNull android.os.Parcel);
6674    method public void writeToParcel(@NonNull android.os.Parcel, int);
6675    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.soundtrigger.SoundTrigger.Keyphrase> CREATOR;
6676  }
6677
6678  public static final class SoundTrigger.KeyphraseRecognitionExtra implements android.os.Parcelable {
6679    method public int describeContents();
6680    method @IntRange(from=0, to=100) public int getCoarseConfidenceLevel();
6681    method public int getKeyphraseId();
6682    method public int getRecognitionModes();
6683    method public void writeToParcel(@NonNull android.os.Parcel, int);
6684    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.soundtrigger.SoundTrigger.KeyphraseRecognitionExtra> CREATOR;
6685  }
6686
6687  public static final class SoundTrigger.KeyphraseSoundModel extends android.hardware.soundtrigger.SoundTrigger.SoundModel implements android.os.Parcelable {
6688    ctor public SoundTrigger.KeyphraseSoundModel(@NonNull java.util.UUID, @NonNull java.util.UUID, @Nullable byte[], @Nullable android.hardware.soundtrigger.SoundTrigger.Keyphrase[], int);
6689    ctor public SoundTrigger.KeyphraseSoundModel(@NonNull java.util.UUID, @NonNull java.util.UUID, @Nullable byte[], @Nullable android.hardware.soundtrigger.SoundTrigger.Keyphrase[]);
6690    method public int describeContents();
6691    method @NonNull public android.hardware.soundtrigger.SoundTrigger.Keyphrase[] getKeyphrases();
6692    method @NonNull public static android.hardware.soundtrigger.SoundTrigger.KeyphraseSoundModel readFromParcel(@NonNull android.os.Parcel);
6693    method public void writeToParcel(@NonNull android.os.Parcel, int);
6694    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.soundtrigger.SoundTrigger.KeyphraseSoundModel> CREATOR;
6695  }
6696
6697  public static final class SoundTrigger.ModelParamRange implements android.os.Parcelable {
6698    method public int describeContents();
6699    method public int getEnd();
6700    method public int getStart();
6701    method public void writeToParcel(@NonNull android.os.Parcel, int);
6702    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.soundtrigger.SoundTrigger.ModelParamRange> CREATOR;
6703  }
6704
6705  public static final class SoundTrigger.ModuleProperties implements android.os.Parcelable {
6706    method public int describeContents();
6707    method public int getAudioCapabilities();
6708    method @NonNull public String getDescription();
6709    method public int getId();
6710    method @NonNull public String getImplementor();
6711    method public int getMaxBufferMillis();
6712    method public int getMaxKeyphrases();
6713    method public int getMaxSoundModels();
6714    method public int getMaxUsers();
6715    method public int getPowerConsumptionMw();
6716    method public int getRecognitionModes();
6717    method @NonNull public String getSupportedModelArch();
6718    method @NonNull public java.util.UUID getUuid();
6719    method public int getVersion();
6720    method public boolean isCaptureTransitionSupported();
6721    method public boolean isConcurrentCaptureSupported();
6722    method public boolean isTriggerReturnedInEvent();
6723    method public void writeToParcel(android.os.Parcel, int);
6724    field public static final int AUDIO_CAPABILITY_ECHO_CANCELLATION = 1; // 0x1
6725    field public static final int AUDIO_CAPABILITY_NOISE_SUPPRESSION = 2; // 0x2
6726    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.soundtrigger.SoundTrigger.ModuleProperties> CREATOR;
6727  }
6728
6729  public static class SoundTrigger.RecognitionEvent {
6730    method @Nullable public android.media.AudioFormat getCaptureFormat();
6731    method public int getCaptureSession();
6732    method public byte[] getData();
6733    method public long getHalEventReceivedMillis();
6734    method public boolean isCaptureAvailable();
6735  }
6736
6737  public static class SoundTrigger.SoundModel {
6738    method @NonNull public byte[] getData();
6739    method public int getType();
6740    method @NonNull public java.util.UUID getUuid();
6741    method @NonNull public java.util.UUID getVendorUuid();
6742    method public int getVersion();
6743    field public static final int TYPE_GENERIC_SOUND = 1; // 0x1
6744    field public static final int TYPE_KEYPHRASE = 0; // 0x0
6745  }
6746
6747}
6748
6749package android.hardware.usb {
6750
6751  public final class DisplayPortAltModeInfo implements android.os.Parcelable {
6752    method public int describeContents();
6753    method public int getCableStatus();
6754    method public int getLinkTrainingStatus();
6755    method public int getNumberOfLanes();
6756    method public int getPartnerSinkStatus();
6757    method public boolean isHotPlugDetectActive();
6758    method public void writeToParcel(@NonNull android.os.Parcel, int);
6759    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.usb.DisplayPortAltModeInfo> CREATOR;
6760    field public static final int DISPLAYPORT_ALT_MODE_STATUS_CAPABLE_DISABLED = 2; // 0x2
6761    field public static final int DISPLAYPORT_ALT_MODE_STATUS_ENABLED = 3; // 0x3
6762    field public static final int DISPLAYPORT_ALT_MODE_STATUS_NOT_CAPABLE = 1; // 0x1
6763    field public static final int DISPLAYPORT_ALT_MODE_STATUS_UNKNOWN = 0; // 0x0
6764    field public static final int LINK_TRAINING_STATUS_FAILURE = 2; // 0x2
6765    field public static final int LINK_TRAINING_STATUS_SUCCESS = 1; // 0x1
6766    field public static final int LINK_TRAINING_STATUS_UNKNOWN = 0; // 0x0
6767  }
6768
6769  public class UsbDeviceConnection {
6770    method public boolean resetDevice();
6771  }
6772
6773  public class UsbManager {
6774    method @RequiresPermission(android.Manifest.permission.MANAGE_USB) public long getCurrentFunctions();
6775    method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_USB) public java.util.List<android.hardware.usb.UsbPort> getPorts();
6776    method @RequiresPermission(android.Manifest.permission.MANAGE_USB) public void grantPermission(android.hardware.usb.UsbDevice, String);
6777    method public static boolean isUvcSupportEnabled();
6778    method @RequiresPermission(android.Manifest.permission.MANAGE_USB) public void registerDisplayPortAltModeInfoListener(@NonNull java.util.concurrent.Executor, @NonNull android.hardware.usb.UsbManager.DisplayPortAltModeInfoListener);
6779    method @RequiresPermission(android.Manifest.permission.MANAGE_USB) public void resetUsbGadget();
6780    method @RequiresPermission(android.Manifest.permission.MANAGE_USB) public void setCurrentFunctions(long);
6781    method @RequiresPermission(android.Manifest.permission.MANAGE_USB) public void unregisterDisplayPortAltModeInfoListener(@NonNull android.hardware.usb.UsbManager.DisplayPortAltModeInfoListener);
6782    field @RequiresPermission(android.Manifest.permission.MANAGE_USB) public static final String ACTION_USB_ACCESSORY_HANDSHAKE = "android.hardware.usb.action.USB_ACCESSORY_HANDSHAKE";
6783    field @RequiresPermission(android.Manifest.permission.MANAGE_USB) public static final String ACTION_USB_PORT_CHANGED = "android.hardware.usb.action.USB_PORT_CHANGED";
6784    field @RequiresPermission(android.Manifest.permission.MANAGE_USB) public static final String ACTION_USB_PORT_COMPLIANCE_CHANGED = "android.hardware.usb.action.USB_PORT_COMPLIANCE_CHANGED";
6785    field public static final String ACTION_USB_STATE = "android.hardware.usb.action.USB_STATE";
6786    field public static final String EXTRA_ACCESSORY_HANDSHAKE_END = "android.hardware.usb.extra.ACCESSORY_HANDSHAKE_END";
6787    field public static final String EXTRA_ACCESSORY_START = "android.hardware.usb.extra.ACCESSORY_START";
6788    field public static final String EXTRA_ACCESSORY_STRING_COUNT = "android.hardware.usb.extra.ACCESSORY_STRING_COUNT";
6789    field public static final String EXTRA_ACCESSORY_UEVENT_TIME = "android.hardware.usb.extra.ACCESSORY_UEVENT_TIME";
6790    field public static final long FUNCTION_ACCESSORY = 2L; // 0x2L
6791    field public static final long FUNCTION_ADB = 1L; // 0x1L
6792    field public static final long FUNCTION_AUDIO_SOURCE = 64L; // 0x40L
6793    field public static final long FUNCTION_MIDI = 8L; // 0x8L
6794    field public static final long FUNCTION_MTP = 4L; // 0x4L
6795    field public static final long FUNCTION_NCM = 1024L; // 0x400L
6796    field public static final long FUNCTION_NONE = 0L; // 0x0L
6797    field public static final long FUNCTION_PTP = 16L; // 0x10L
6798    field public static final long FUNCTION_RNDIS = 32L; // 0x20L
6799    field public static final long FUNCTION_UVC = 128L; // 0x80L
6800    field public static final String USB_CONFIGURED = "configured";
6801    field public static final String USB_CONNECTED = "connected";
6802    field public static final String USB_FUNCTION_NCM = "ncm";
6803    field public static final String USB_FUNCTION_RNDIS = "rndis";
6804  }
6805
6806  public static interface UsbManager.DisplayPortAltModeInfoListener {
6807    method public void onDisplayPortAltModeInfoChanged(@NonNull String, @NonNull android.hardware.usb.DisplayPortAltModeInfo);
6808  }
6809
6810  public final class UsbPort {
6811    method @CheckResult @RequiresPermission(android.Manifest.permission.MANAGE_USB) public int enableLimitPowerTransfer(boolean);
6812    method @CheckResult @RequiresPermission(android.Manifest.permission.MANAGE_USB) public int enableUsbData(boolean);
6813    method @CheckResult @RequiresPermission(android.Manifest.permission.MANAGE_USB) public int enableUsbDataWhileDocked();
6814    method @Nullable @RequiresPermission(android.Manifest.permission.MANAGE_USB) public android.hardware.usb.UsbPortStatus getStatus();
6815    method public boolean isAltModeSupported(int);
6816    method @CheckResult @RequiresPermission(android.Manifest.permission.MANAGE_USB) public void resetUsbPort(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Integer>);
6817    method @RequiresPermission(android.Manifest.permission.MANAGE_USB) public void setRoles(int, int);
6818    method @CheckResult @RequiresPermission(android.Manifest.permission.MANAGE_USB) public boolean supportsComplianceWarnings();
6819    field public static final int ENABLE_LIMIT_POWER_TRANSFER_ERROR_INTERNAL = 1; // 0x1
6820    field public static final int ENABLE_LIMIT_POWER_TRANSFER_ERROR_NOT_SUPPORTED = 2; // 0x2
6821    field public static final int ENABLE_LIMIT_POWER_TRANSFER_ERROR_OTHER = 4; // 0x4
6822    field public static final int ENABLE_LIMIT_POWER_TRANSFER_ERROR_PORT_MISMATCH = 3; // 0x3
6823    field public static final int ENABLE_LIMIT_POWER_TRANSFER_SUCCESS = 0; // 0x0
6824    field public static final int ENABLE_USB_DATA_ERROR_INTERNAL = 1; // 0x1
6825    field public static final int ENABLE_USB_DATA_ERROR_NOT_SUPPORTED = 2; // 0x2
6826    field public static final int ENABLE_USB_DATA_ERROR_OTHER = 4; // 0x4
6827    field public static final int ENABLE_USB_DATA_ERROR_PORT_MISMATCH = 3; // 0x3
6828    field public static final int ENABLE_USB_DATA_SUCCESS = 0; // 0x0
6829    field public static final int ENABLE_USB_DATA_WHILE_DOCKED_ERROR_DATA_ENABLED = 4; // 0x4
6830    field public static final int ENABLE_USB_DATA_WHILE_DOCKED_ERROR_INTERNAL = 1; // 0x1
6831    field public static final int ENABLE_USB_DATA_WHILE_DOCKED_ERROR_NOT_SUPPORTED = 2; // 0x2
6832    field public static final int ENABLE_USB_DATA_WHILE_DOCKED_ERROR_OTHER = 5; // 0x5
6833    field public static final int ENABLE_USB_DATA_WHILE_DOCKED_ERROR_PORT_MISMATCH = 3; // 0x3
6834    field public static final int ENABLE_USB_DATA_WHILE_DOCKED_SUCCESS = 0; // 0x0
6835    field public static final int FLAG_ALT_MODE_TYPE_DISPLAYPORT = 1; // 0x1
6836    field public static final int RESET_USB_PORT_ERROR_INTERNAL = 1; // 0x1
6837    field public static final int RESET_USB_PORT_ERROR_NOT_SUPPORTED = 2; // 0x2
6838    field public static final int RESET_USB_PORT_ERROR_OTHER = 4; // 0x4
6839    field public static final int RESET_USB_PORT_ERROR_PORT_MISMATCH = 3; // 0x3
6840    field public static final int RESET_USB_PORT_SUCCESS = 0; // 0x0
6841  }
6842
6843  public final class UsbPortStatus implements android.os.Parcelable {
6844    method public int describeContents();
6845    method @CheckResult @NonNull public int[] getComplianceWarnings();
6846    method public int getCurrentDataRole();
6847    method public int getCurrentMode();
6848    method public int getCurrentPowerRole();
6849    method @Nullable public android.hardware.usb.DisplayPortAltModeInfo getDisplayPortAltModeInfo();
6850    method public int getPlugState();
6851    method public int getPowerBrickConnectionStatus();
6852    method public int getSupportedRoleCombinations();
6853    method public int getUsbDataStatus();
6854    method public boolean isConnected();
6855    method public boolean isPdCompliant();
6856    method public boolean isPowerTransferLimited();
6857    method public boolean isRoleCombinationSupported(int, int);
6858    method public void writeToParcel(android.os.Parcel, int);
6859    field public static final int COMPLIANCE_WARNING_BC_1_2 = 3; // 0x3
6860    field public static final int COMPLIANCE_WARNING_DEBUG_ACCESSORY = 2; // 0x2
6861    field public static final int COMPLIANCE_WARNING_ENUMERATION_FAIL = 7; // 0x7
6862    field public static final int COMPLIANCE_WARNING_FLAKY_CONNECTION = 8; // 0x8
6863    field public static final int COMPLIANCE_WARNING_INPUT_POWER_LIMITED = 5; // 0x5
6864    field public static final int COMPLIANCE_WARNING_MISSING_DATA_LINES = 6; // 0x6
6865    field public static final int COMPLIANCE_WARNING_MISSING_RP = 4; // 0x4
6866    field public static final int COMPLIANCE_WARNING_OTHER = 1; // 0x1
6867    field public static final int COMPLIANCE_WARNING_UNRELIABLE_IO = 9; // 0x9
6868    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.usb.UsbPortStatus> CREATOR;
6869    field public static final int DATA_ROLE_DEVICE = 2; // 0x2
6870    field public static final int DATA_ROLE_HOST = 1; // 0x1
6871    field public static final int DATA_ROLE_NONE = 0; // 0x0
6872    field public static final int DATA_STATUS_DISABLED_CONTAMINANT = 4; // 0x4
6873    field public static final int DATA_STATUS_DISABLED_DEBUG = 32; // 0x20
6874    field public static final int DATA_STATUS_DISABLED_DOCK = 8; // 0x8
6875    field public static final int DATA_STATUS_DISABLED_DOCK_DEVICE_MODE = 128; // 0x80
6876    field public static final int DATA_STATUS_DISABLED_DOCK_HOST_MODE = 64; // 0x40
6877    field public static final int DATA_STATUS_DISABLED_FORCE = 16; // 0x10
6878    field public static final int DATA_STATUS_DISABLED_OVERHEAT = 2; // 0x2
6879    field public static final int DATA_STATUS_ENABLED = 1; // 0x1
6880    field public static final int DATA_STATUS_UNKNOWN = 0; // 0x0
6881    field public static final int MODE_AUDIO_ACCESSORY = 4; // 0x4
6882    field public static final int MODE_DEBUG_ACCESSORY = 8; // 0x8
6883    field public static final int MODE_DFP = 2; // 0x2
6884    field public static final int MODE_NONE = 0; // 0x0
6885    field public static final int MODE_UFP = 1; // 0x1
6886    field public static final int PLUG_STATE_PLUGGED_ORIENTATION_FLIPPED = 4; // 0x4
6887    field public static final int PLUG_STATE_PLUGGED_ORIENTATION_NORMAL = 3; // 0x3
6888    field public static final int PLUG_STATE_PLUGGED_ORIENTATION_UNKNOWN = 2; // 0x2
6889    field public static final int PLUG_STATE_UNKNOWN = 0; // 0x0
6890    field public static final int PLUG_STATE_UNPLUGGED = 1; // 0x1
6891    field public static final int POWER_BRICK_STATUS_CONNECTED = 1; // 0x1
6892    field public static final int POWER_BRICK_STATUS_DISCONNECTED = 2; // 0x2
6893    field public static final int POWER_BRICK_STATUS_UNKNOWN = 0; // 0x0
6894    field public static final int POWER_ROLE_NONE = 0; // 0x0
6895    field public static final int POWER_ROLE_SINK = 2; // 0x2
6896    field public static final int POWER_ROLE_SOURCE = 1; // 0x1
6897  }
6898
6899}
6900
6901package android.location {
6902
6903  public class Location implements android.os.Parcelable {
6904    method public void makeComplete();
6905    method @Deprecated public void setIsFromMockProvider(boolean);
6906    field @Deprecated public static final String EXTRA_NO_GPS_LOCATION = "noGPSLocation";
6907  }
6908
6909}
6910
6911package android.media {
6912
6913  public final class AudioAttributes implements android.os.Parcelable {
6914    method public int getAllFlags();
6915    method public android.os.Bundle getBundle();
6916    method public int getCapturePreset();
6917    method public int getSystemUsage();
6918    method public static boolean isSystemUsage(int);
6919    field @RequiresPermission(android.Manifest.permission.ACCESS_ULTRASOUND) public static final int CONTENT_TYPE_ULTRASOUND = 1997; // 0x7cd
6920    field public static final int FLAG_BEACON = 8; // 0x8
6921    field public static final int FLAG_BYPASS_INTERRUPTION_POLICY = 64; // 0x40
6922    field public static final int FLAG_BYPASS_MUTE = 128; // 0x80
6923    field public static final int FLAG_HW_HOTWORD = 32; // 0x20
6924    field @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public static final int USAGE_ANNOUNCEMENT = 1003; // 0x3eb
6925    field @RequiresPermission(allOf={android.Manifest.permission.MODIFY_PHONE_STATE, android.Manifest.permission.MODIFY_AUDIO_ROUTING}) public static final int USAGE_CALL_ASSISTANT = 17; // 0x11
6926    field @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public static final int USAGE_EMERGENCY = 1000; // 0x3e8
6927    field @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public static final int USAGE_SAFETY = 1001; // 0x3e9
6928    field @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public static final int USAGE_VEHICLE_STATUS = 1002; // 0x3ea
6929  }
6930
6931  public static class AudioAttributes.Builder {
6932    method public android.media.AudioAttributes.Builder addBundle(@NonNull android.os.Bundle);
6933    method public android.media.AudioAttributes.Builder setCapturePreset(int);
6934    method @NonNull @RequiresPermission(android.Manifest.permission.CAPTURE_AUDIO_HOTWORD) public android.media.AudioAttributes.Builder setHotwordModeEnabled(boolean);
6935    method public android.media.AudioAttributes.Builder setInternalCapturePreset(int);
6936    method @NonNull public android.media.AudioAttributes.Builder setInternalContentType(int);
6937    method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public android.media.AudioAttributes.Builder setSystemUsage(int);
6938  }
6939
6940  public class AudioDescriptor implements android.os.Parcelable {
6941    ctor public AudioDescriptor(int, int, @NonNull byte[]);
6942  }
6943
6944  public final class AudioDeviceAttributes implements android.os.Parcelable {
6945    ctor public AudioDeviceAttributes(@NonNull android.media.AudioDeviceInfo);
6946    ctor public AudioDeviceAttributes(int, int, @NonNull String);
6947    ctor public AudioDeviceAttributes(int, int, @NonNull String, @NonNull String, @NonNull java.util.List<android.media.AudioProfile>, @NonNull java.util.List<android.media.AudioDescriptor>);
6948    method public int describeContents();
6949    method public boolean equalTypeAddress(@Nullable Object);
6950    method @NonNull public String getAddress();
6951    method @NonNull public java.util.List<android.media.AudioDescriptor> getAudioDescriptors();
6952    method @NonNull public java.util.List<android.media.AudioProfile> getAudioProfiles();
6953    method @NonNull public String getName();
6954    method public int getRole();
6955    method public int getType();
6956    method public void writeToParcel(@NonNull android.os.Parcel, int);
6957    field @NonNull public static final android.os.Parcelable.Creator<android.media.AudioDeviceAttributes> CREATOR;
6958    field public static final int ROLE_INPUT = 1; // 0x1
6959    field public static final int ROLE_OUTPUT = 2; // 0x2
6960  }
6961
6962  public class AudioDeviceVolumeManager {
6963    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);
6964    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);
6965  }
6966
6967  public final class AudioFocusInfo implements android.os.Parcelable {
6968    method public int describeContents();
6969    method @NonNull public android.media.AudioAttributes getAttributes();
6970    method @NonNull public String getClientId();
6971    method public int getClientUid();
6972    method public int getFlags();
6973    method public int getGainRequest();
6974    method public int getLossReceived();
6975    method @NonNull public String getPackageName();
6976    method public void writeToParcel(android.os.Parcel, int);
6977    field @NonNull public static final android.os.Parcelable.Creator<android.media.AudioFocusInfo> CREATOR;
6978  }
6979
6980  public final class AudioFocusRequest {
6981    method public boolean locksFocus();
6982  }
6983
6984  public static final class AudioFocusRequest.Builder {
6985    method @NonNull public android.media.AudioFocusRequest.Builder setLocksFocus(boolean);
6986  }
6987
6988  public class AudioManager {
6989    method @Deprecated public int abandonAudioFocus(android.media.AudioManager.OnAudioFocusChangeListener, android.media.AudioAttributes);
6990    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public void addAssistantServicesUids(@NonNull int[]);
6991    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);
6992    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;
6993    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;
6994    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;
6995    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;
6996    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_SETTINGS_PRIVILEGED) public void addOnStreamAliasingChangedListener(@NonNull java.util.concurrent.Executor, @NonNull Runnable);
6997    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public void cancelMuteAwaitConnection(@NonNull android.media.AudioDeviceAttributes) throws java.lang.IllegalStateException;
6998    method public void clearAudioServerStateCallback();
6999    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public boolean clearPreferredDevicesForCapturePreset(int);
7000    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public int dispatchAudioFocusChange(@NonNull android.media.AudioFocusInfo, int, @NonNull android.media.audiopolicy.AudioPolicy);
7001    method @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);
7002    method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public int[] getActiveAssistantServicesUids();
7003    method @IntRange(from=0) public long getAdditionalOutputDeviceDelay(@NonNull android.media.AudioDeviceInfo);
7004    method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public int[] getAssistantServicesUids();
7005    method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public static java.util.List<android.media.audiopolicy.AudioProductStrategy> getAudioProductStrategies();
7006    method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public static java.util.List<android.media.audiopolicy.AudioVolumeGroup> getAudioVolumeGroups();
7007    method @NonNull @RequiresPermission(android.Manifest.permission.CALL_AUDIO_INTERCEPTION) public android.media.AudioRecord getCallDownlinkExtractionAudioRecord(@NonNull android.media.AudioFormat);
7008    method @NonNull @RequiresPermission(android.Manifest.permission.CALL_AUDIO_INTERCEPTION) public android.media.AudioTrack getCallUplinkInjectionAudioTrack(@NonNull android.media.AudioFormat);
7009    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);
7010    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);
7011    method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_SETTINGS_PRIVILEGED) public java.util.List<java.lang.Integer> getIndependentStreamTypes();
7012    method @RequiresPermission("android.permission.QUERY_AUDIO_STATE") public int getLastAudibleStreamVolume(int);
7013    method @IntRange(from=0) @RequiresPermission("android.permission.QUERY_AUDIO_STATE") public int getLastAudibleVolumeForVolumeGroup(int);
7014    method @IntRange(from=0) public long getMaxAdditionalOutputDeviceDelay(@NonNull android.media.AudioDeviceInfo);
7015    method @IntRange(from=0) @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public int getMaxVolumeIndexForAttributes(@NonNull android.media.AudioAttributes);
7016    method @IntRange(from=0) @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public int getMinVolumeIndexForAttributes(@NonNull android.media.AudioAttributes);
7017    method @Nullable @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public android.media.AudioDeviceAttributes getMutingExpectedDevice();
7018    method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public java.util.List<android.media.AudioDeviceAttributes> getNonDefaultDevicesForStrategy(@NonNull android.media.audiopolicy.AudioProductStrategy);
7019    method @Nullable @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public android.media.AudioDeviceAttributes getPreferredDeviceForStrategy(@NonNull android.media.audiopolicy.AudioProductStrategy);
7020    method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public java.util.List<android.media.AudioDeviceAttributes> getPreferredDevicesForCapturePreset(int);
7021    method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public java.util.List<android.media.AudioDeviceAttributes> getPreferredDevicesForStrategy(@NonNull android.media.audiopolicy.AudioProductStrategy);
7022    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_SETTINGS_PRIVILEGED) public int getStreamTypeAlias(int);
7023    method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public int[] getSupportedSystemUsages();
7024    method @IntRange(from=0) @RequiresPermission(anyOf={android.Manifest.permission.MODIFY_AUDIO_SETTINGS_PRIVILEGED, android.Manifest.permission.MODIFY_AUDIO_ROUTING}) public int getVolumeGroupMaxVolumeIndex(int);
7025    method @IntRange(from=0) @RequiresPermission(anyOf={android.Manifest.permission.MODIFY_AUDIO_SETTINGS_PRIVILEGED, android.Manifest.permission.MODIFY_AUDIO_ROUTING}) public int getVolumeGroupMinVolumeIndex(int);
7026    method @IntRange(from=0) @RequiresPermission(anyOf={android.Manifest.permission.MODIFY_AUDIO_SETTINGS_PRIVILEGED, android.Manifest.permission.MODIFY_AUDIO_ROUTING}) public int getVolumeGroupVolumeIndex(int);
7027    method @IntRange(from=0) @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public int getVolumeIndexForAttributes(@NonNull android.media.AudioAttributes);
7028    method public boolean isAudioServerRunning();
7029    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public boolean isBluetoothVariableLatencyEnabled();
7030    method public boolean isHdmiSystemAudioSupported();
7031    method @RequiresPermission(android.Manifest.permission.CAPTURE_AUDIO_HOTWORD) public boolean isHotwordStreamSupported(boolean);
7032    method @RequiresPermission(android.Manifest.permission.CALL_AUDIO_INTERCEPTION) public boolean isPstnCallAudioInterceptable();
7033    method @RequiresPermission(android.Manifest.permission.ACCESS_ULTRASOUND) public boolean isUltrasoundSupported();
7034    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;
7035    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public int registerAudioPolicy(@NonNull android.media.audiopolicy.AudioPolicy);
7036    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public void registerMuteAwaitConnectionCallback(@NonNull java.util.concurrent.Executor, @NonNull android.media.AudioManager.MuteAwaitConnectionCallback);
7037    method public void registerVolumeGroupCallback(@NonNull java.util.concurrent.Executor, @NonNull android.media.AudioManager.VolumeGroupCallback);
7038    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public void removeAssistantServicesUids(@NonNull int[]);
7039    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public boolean removeDeviceAsNonDefaultForStrategy(@NonNull android.media.audiopolicy.AudioProductStrategy, @NonNull android.media.AudioDeviceAttributes);
7040    method @RequiresPermission(anyOf={android.Manifest.permission.MODIFY_AUDIO_ROUTING, "android.permission.QUERY_AUDIO_STATE"}) public void removeOnDevicesForAttributesChangedListener(@NonNull android.media.AudioManager.OnDevicesForAttributesChangedListener);
7041    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public void removeOnNonDefaultDevicesForStrategyChangedListener(@NonNull android.media.AudioManager.OnNonDefaultDevicesForStrategyChangedListener);
7042    method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public void removeOnPreferredDeviceForStrategyChangedListener(@NonNull android.media.AudioManager.OnPreferredDeviceForStrategyChangedListener);
7043    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public void removeOnPreferredDevicesForCapturePresetChangedListener(@NonNull android.media.AudioManager.OnPreferredDevicesForCapturePresetChangedListener);
7044    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public void removeOnPreferredDevicesForStrategyChangedListener(@NonNull android.media.AudioManager.OnPreferredDevicesForStrategyChangedListener);
7045    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_SETTINGS_PRIVILEGED) public void removeOnStreamAliasingChangedListener(@NonNull Runnable);
7046    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public boolean removePreferredDeviceForStrategy(@NonNull android.media.audiopolicy.AudioProductStrategy);
7047    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;
7048    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;
7049    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public int requestAudioFocus(@NonNull android.media.AudioFocusRequest, @Nullable android.media.audiopolicy.AudioPolicy);
7050    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public void setActiveAssistantServiceUids(@NonNull int[]);
7051    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public boolean setAdditionalOutputDeviceDelay(@NonNull android.media.AudioDeviceInfo, @IntRange(from=0) long);
7052    method public void setAudioServerStateCallback(@NonNull java.util.concurrent.Executor, @NonNull android.media.AudioManager.AudioServerStateCallback);
7053    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public void setBluetoothVariableLatencyEnabled(boolean);
7054    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public boolean setDeviceAsNonDefaultForStrategy(@NonNull android.media.audiopolicy.AudioProductStrategy, @NonNull android.media.AudioDeviceAttributes);
7055    method @RequiresPermission(anyOf={android.Manifest.permission.MODIFY_AUDIO_ROUTING, android.Manifest.permission.MODIFY_AUDIO_SETTINGS_PRIVILEGED}) public void setDeviceVolumeBehavior(@NonNull android.media.AudioDeviceAttributes, int);
7056    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public void setFocusRequestResult(@NonNull android.media.AudioFocusInfo, int, @NonNull android.media.audiopolicy.AudioPolicy);
7057    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public boolean setPreferredDeviceForCapturePreset(int, @NonNull android.media.AudioDeviceAttributes);
7058    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public boolean setPreferredDeviceForStrategy(@NonNull android.media.audiopolicy.AudioProductStrategy, @NonNull android.media.AudioDeviceAttributes);
7059    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public boolean setPreferredDevicesForStrategy(@NonNull android.media.audiopolicy.AudioProductStrategy, @NonNull java.util.List<android.media.AudioDeviceAttributes>);
7060    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public void setSupportedSystemUsages(@NonNull int[]);
7061    method @RequiresPermission(anyOf={android.Manifest.permission.MODIFY_AUDIO_SETTINGS_PRIVILEGED, android.Manifest.permission.MODIFY_AUDIO_ROUTING}) public void setVolumeGroupVolumeIndex(int, int, int);
7062    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public void setVolumeIndexForAttributes(@NonNull android.media.AudioAttributes, int, int);
7063    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public boolean supportsBluetoothVariableLatency();
7064    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public void unregisterAudioPolicy(@NonNull android.media.audiopolicy.AudioPolicy);
7065    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public void unregisterAudioPolicyAsync(@NonNull android.media.audiopolicy.AudioPolicy);
7066    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public void unregisterMuteAwaitConnectionCallback(@NonNull android.media.AudioManager.MuteAwaitConnectionCallback);
7067    method public void unregisterVolumeGroupCallback(@NonNull android.media.AudioManager.VolumeGroupCallback);
7068    field public static final String ACTION_VOLUME_CHANGED = "android.media.VOLUME_CHANGED_ACTION";
7069    field public static final int AUDIOFOCUS_FLAG_DELAY_OK = 1; // 0x1
7070    field public static final int AUDIOFOCUS_FLAG_LOCK = 4; // 0x4
7071    field public static final int AUDIOFOCUS_FLAG_PAUSES_ON_DUCKABLE_LOSS = 2; // 0x2
7072    field public static final int DEVICE_VOLUME_BEHAVIOR_ABSOLUTE = 3; // 0x3
7073    field public static final int DEVICE_VOLUME_BEHAVIOR_ABSOLUTE_ADJUST_ONLY = 5; // 0x5
7074    field public static final int DEVICE_VOLUME_BEHAVIOR_ABSOLUTE_MULTI_MODE = 4; // 0x4
7075    field public static final int DEVICE_VOLUME_BEHAVIOR_FIXED = 2; // 0x2
7076    field public static final int DEVICE_VOLUME_BEHAVIOR_FULL = 1; // 0x1
7077    field public static final int DEVICE_VOLUME_BEHAVIOR_VARIABLE = 0; // 0x0
7078    field public static final String EXTRA_VOLUME_STREAM_TYPE = "android.media.EXTRA_VOLUME_STREAM_TYPE";
7079    field public static final String EXTRA_VOLUME_STREAM_VALUE = "android.media.EXTRA_VOLUME_STREAM_VALUE";
7080    field public static final int FLAG_BLUETOOTH_ABS_VOLUME = 64; // 0x40
7081    field @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public static final int STREAM_ASSISTANT = 11; // 0xb
7082    field public static final int STREAM_BLUETOOTH_SCO = 6; // 0x6
7083    field public static final int SUCCESS = 0; // 0x0
7084  }
7085
7086  public abstract static class AudioManager.AudioServerStateCallback {
7087    ctor public AudioManager.AudioServerStateCallback();
7088    method public void onAudioServerDown();
7089    method public void onAudioServerUp();
7090  }
7091
7092  public abstract static class AudioManager.MuteAwaitConnectionCallback {
7093    ctor public AudioManager.MuteAwaitConnectionCallback();
7094    method public void onMutedUntilConnection(@NonNull android.media.AudioDeviceAttributes, @NonNull int[]);
7095    method public void onUnmutedEvent(int, @NonNull android.media.AudioDeviceAttributes, @NonNull int[]);
7096    field public static final int EVENT_CANCEL = 3; // 0x3
7097    field public static final int EVENT_CONNECTION = 1; // 0x1
7098    field public static final int EVENT_TIMEOUT = 2; // 0x2
7099  }
7100
7101  public static interface AudioManager.OnDevicesForAttributesChangedListener {
7102    method public void onDevicesForAttributesChanged(@NonNull android.media.AudioAttributes, @NonNull java.util.List<android.media.AudioDeviceAttributes>);
7103  }
7104
7105  public static interface AudioManager.OnNonDefaultDevicesForStrategyChangedListener {
7106    method public void onNonDefaultDevicesForStrategyChanged(@NonNull android.media.audiopolicy.AudioProductStrategy, @NonNull java.util.List<android.media.AudioDeviceAttributes>);
7107  }
7108
7109  @Deprecated public static interface AudioManager.OnPreferredDeviceForStrategyChangedListener {
7110    method @Deprecated public void onPreferredDeviceForStrategyChanged(@NonNull android.media.audiopolicy.AudioProductStrategy, @Nullable android.media.AudioDeviceAttributes);
7111  }
7112
7113  public static interface AudioManager.OnPreferredDevicesForCapturePresetChangedListener {
7114    method public void onPreferredDevicesForCapturePresetChanged(int, @NonNull java.util.List<android.media.AudioDeviceAttributes>);
7115  }
7116
7117  public static interface AudioManager.OnPreferredDevicesForStrategyChangedListener {
7118    method public void onPreferredDevicesForStrategyChanged(@NonNull android.media.audiopolicy.AudioProductStrategy, @NonNull java.util.List<android.media.AudioDeviceAttributes>);
7119  }
7120
7121  public abstract static class AudioManager.VolumeGroupCallback {
7122    ctor public AudioManager.VolumeGroupCallback();
7123    method public void onAudioVolumeGroupChanged(int, int);
7124  }
7125
7126  public final class AudioPlaybackConfiguration implements android.os.Parcelable {
7127    method public int getChannelMask();
7128    method public int getClientPid();
7129    method public int getClientUid();
7130    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public int getMutedBy();
7131    method public int getPlayerInterfaceId();
7132    method public android.media.PlayerProxy getPlayerProxy();
7133    method public int getPlayerState();
7134    method public int getPlayerType();
7135    method @IntRange(from=0) public int getSampleRate();
7136    method @IntRange(from=0) public int getSessionId();
7137    method public boolean isActive();
7138    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public boolean isMuted();
7139    method public boolean isSpatialized();
7140    field @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public static final int MUTED_BY_APP_OPS = 8; // 0x8
7141    field @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public static final int MUTED_BY_CLIENT_VOLUME = 16; // 0x10
7142    field @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public static final int MUTED_BY_MASTER = 1; // 0x1
7143    field @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public static final int MUTED_BY_STREAM_MUTED = 4; // 0x4
7144    field @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public static final int MUTED_BY_STREAM_VOLUME = 2; // 0x2
7145    field @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public static final int MUTED_BY_VOLUME_SHAPER = 32; // 0x20
7146    field public static final int PLAYER_STATE_IDLE = 1; // 0x1
7147    field public static final int PLAYER_STATE_PAUSED = 3; // 0x3
7148    field public static final int PLAYER_STATE_RELEASED = 0; // 0x0
7149    field public static final int PLAYER_STATE_STARTED = 2; // 0x2
7150    field public static final int PLAYER_STATE_STOPPED = 4; // 0x4
7151    field public static final int PLAYER_STATE_UNKNOWN = -1; // 0xffffffff
7152    field public static final int PLAYER_TYPE_AAUDIO = 13; // 0xd
7153    field public static final int PLAYER_TYPE_JAM_AUDIOTRACK = 1; // 0x1
7154    field public static final int PLAYER_TYPE_JAM_MEDIAPLAYER = 2; // 0x2
7155    field public static final int PLAYER_TYPE_JAM_SOUNDPOOL = 3; // 0x3
7156    field public static final int PLAYER_TYPE_SLES_AUDIOPLAYER_BUFFERQUEUE = 11; // 0xb
7157    field public static final int PLAYER_TYPE_SLES_AUDIOPLAYER_URI_FD = 12; // 0xc
7158    field public static final int PLAYER_TYPE_UNKNOWN = -1; // 0xffffffff
7159  }
7160
7161  public class AudioProfile implements android.os.Parcelable {
7162    ctor public AudioProfile(int, @NonNull int[], @NonNull int[], @NonNull int[], int);
7163  }
7164
7165  public class AudioRecord implements android.media.AudioRecordingMonitor android.media.AudioRouting android.media.MicrophoneDirection {
7166    ctor @RequiresPermission(android.Manifest.permission.RECORD_AUDIO) public AudioRecord(android.media.AudioAttributes, android.media.AudioFormat, int, int) throws java.lang.IllegalArgumentException;
7167    method public static long getMaxSharedAudioHistoryMillis();
7168    method public boolean isHotwordLookbackStream();
7169    method public boolean isHotwordStream();
7170    method @NonNull @RequiresPermission(android.Manifest.permission.CAPTURE_AUDIO_HOTWORD) public android.media.MediaSyncEvent shareAudioHistory(@NonNull String, @IntRange(from=0) long);
7171  }
7172
7173  public static class AudioRecord.Builder {
7174    method public android.media.AudioRecord.Builder setAudioAttributes(@NonNull android.media.AudioAttributes) throws java.lang.IllegalArgumentException;
7175    method @NonNull @RequiresPermission(android.Manifest.permission.CAPTURE_AUDIO_HOTWORD) public android.media.AudioRecord.Builder setMaxSharedAudioHistoryMillis(long) throws java.lang.IllegalArgumentException;
7176    method @NonNull @RequiresPermission(android.Manifest.permission.CAPTURE_AUDIO_HOTWORD) public android.media.AudioRecord.Builder setRequestHotwordLookbackStream(boolean);
7177    method @NonNull @RequiresPermission(android.Manifest.permission.CAPTURE_AUDIO_HOTWORD) public android.media.AudioRecord.Builder setRequestHotwordStream(boolean);
7178    method public android.media.AudioRecord.Builder setSessionId(int) throws java.lang.IllegalArgumentException;
7179    method @NonNull public android.media.AudioRecord.Builder setSharedAudioEvent(@NonNull android.media.MediaSyncEvent) throws java.lang.IllegalArgumentException;
7180  }
7181
7182  public final class AudioRecordingConfiguration implements android.os.Parcelable {
7183    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public int getClientUid();
7184  }
7185
7186  public class AudioTrack implements android.media.AudioRouting android.media.VolumeAutomation {
7187    field @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public static final int ENCAPSULATION_MODE_HANDLE = 2; // 0x2
7188  }
7189
7190  public static class AudioTrack.Builder {
7191    method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public android.media.AudioTrack.Builder setTunerConfiguration(@NonNull android.media.AudioTrack.TunerConfiguration);
7192  }
7193
7194  public static class AudioTrack.TunerConfiguration {
7195    ctor @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public AudioTrack.TunerConfiguration(@IntRange(from=0) int, @IntRange(from=1) int);
7196    method @IntRange(from=1) @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public int getContentId();
7197    method @IntRange(from=1) @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public int getSyncId();
7198    field public static final int CONTENT_ID_NONE = 0; // 0x0
7199  }
7200
7201  public final class FadeManagerConfiguration implements android.os.Parcelable {
7202    method public int describeContents();
7203    method @NonNull public java.util.List<android.media.AudioAttributes> getAudioAttributesWithVolumeShaperConfigs();
7204    method @IntRange(from=1) public static long getDefaultFadeInDurationMillis();
7205    method @IntRange(from=1) public static long getDefaultFadeOutDurationMillis();
7206    method @IntRange(from=0) public long getFadeInDelayForOffenders();
7207    method @IntRange(from=0) public long getFadeInDurationForAudioAttributes(@NonNull android.media.AudioAttributes);
7208    method @IntRange(from=0) public long getFadeInDurationForUsage(int);
7209    method @Nullable public android.media.VolumeShaper.Configuration getFadeInVolumeShaperConfigForAudioAttributes(@NonNull android.media.AudioAttributes);
7210    method @Nullable public android.media.VolumeShaper.Configuration getFadeInVolumeShaperConfigForUsage(int);
7211    method @IntRange(from=0) public long getFadeOutDurationForAudioAttributes(@NonNull android.media.AudioAttributes);
7212    method @IntRange(from=0) public long getFadeOutDurationForUsage(int);
7213    method @Nullable public android.media.VolumeShaper.Configuration getFadeOutVolumeShaperConfigForAudioAttributes(@NonNull android.media.AudioAttributes);
7214    method @Nullable public android.media.VolumeShaper.Configuration getFadeOutVolumeShaperConfigForUsage(int);
7215    method public int getFadeState();
7216    method @NonNull public java.util.List<java.lang.Integer> getFadeableUsages();
7217    method @NonNull public java.util.List<android.media.AudioAttributes> getUnfadeableAudioAttributes();
7218    method @NonNull public java.util.List<java.lang.Integer> getUnfadeableContentTypes();
7219    method @NonNull public java.util.List<java.lang.Integer> getUnfadeablePlayerTypes();
7220    method @NonNull public java.util.List<java.lang.Integer> getUnfadeableUids();
7221    method public boolean isAudioAttributesUnfadeable(@NonNull android.media.AudioAttributes);
7222    method public boolean isContentTypeUnfadeable(int);
7223    method public boolean isFadeEnabled();
7224    method public boolean isPlayerTypeUnfadeable(int);
7225    method public boolean isUidUnfadeable(int);
7226    method public boolean isUsageFadeable(int);
7227    method public void writeToParcel(@NonNull android.os.Parcel, int);
7228    field @NonNull public static final android.os.Parcelable.Creator<android.media.FadeManagerConfiguration> CREATOR;
7229    field public static final long DURATION_NOT_SET = 0L; // 0x0L
7230    field public static final int FADE_STATE_DISABLED = 0; // 0x0
7231    field public static final int FADE_STATE_ENABLED_DEFAULT = 1; // 0x1
7232    field public static final String TAG = "FadeManagerConfiguration";
7233    field public static final int VOLUME_SHAPER_SYSTEM_FADE_ID = 2; // 0x2
7234  }
7235
7236  public static final class FadeManagerConfiguration.Builder {
7237    ctor public FadeManagerConfiguration.Builder();
7238    ctor public FadeManagerConfiguration.Builder(@IntRange(from=1) long, @IntRange(from=1) long);
7239    ctor public FadeManagerConfiguration.Builder(@NonNull android.media.FadeManagerConfiguration);
7240    method @NonNull public android.media.FadeManagerConfiguration.Builder addFadeableUsage(int);
7241    method @NonNull public android.media.FadeManagerConfiguration.Builder addUnfadeableAudioAttributes(@NonNull android.media.AudioAttributes);
7242    method @NonNull public android.media.FadeManagerConfiguration.Builder addUnfadeableContentType(int);
7243    method @NonNull public android.media.FadeManagerConfiguration.Builder addUnfadeableUid(int);
7244    method @NonNull public android.media.FadeManagerConfiguration build();
7245    method @NonNull public android.media.FadeManagerConfiguration.Builder clearFadeableUsages();
7246    method @NonNull public android.media.FadeManagerConfiguration.Builder clearUnfadeableAudioAttributes();
7247    method @NonNull public android.media.FadeManagerConfiguration.Builder clearUnfadeableContentTypes();
7248    method @NonNull public android.media.FadeManagerConfiguration.Builder clearUnfadeableUids();
7249    method @NonNull public android.media.FadeManagerConfiguration.Builder setFadeInDelayForOffenders(@IntRange(from=0) long);
7250    method @NonNull public android.media.FadeManagerConfiguration.Builder setFadeInDurationForAudioAttributes(@NonNull android.media.AudioAttributes, @IntRange(from=0) long);
7251    method @NonNull public android.media.FadeManagerConfiguration.Builder setFadeInDurationForUsage(int, @IntRange(from=0) long);
7252    method @NonNull public android.media.FadeManagerConfiguration.Builder setFadeInVolumeShaperConfigForAudioAttributes(@NonNull android.media.AudioAttributes, @Nullable android.media.VolumeShaper.Configuration);
7253    method @NonNull public android.media.FadeManagerConfiguration.Builder setFadeInVolumeShaperConfigForUsage(int, @Nullable android.media.VolumeShaper.Configuration);
7254    method @NonNull public android.media.FadeManagerConfiguration.Builder setFadeOutDurationForAudioAttributes(@NonNull android.media.AudioAttributes, @IntRange(from=0) long);
7255    method @NonNull public android.media.FadeManagerConfiguration.Builder setFadeOutDurationForUsage(int, @IntRange(from=0) long);
7256    method @NonNull public android.media.FadeManagerConfiguration.Builder setFadeOutVolumeShaperConfigForAudioAttributes(@NonNull android.media.AudioAttributes, @Nullable android.media.VolumeShaper.Configuration);
7257    method @NonNull public android.media.FadeManagerConfiguration.Builder setFadeOutVolumeShaperConfigForUsage(int, @Nullable android.media.VolumeShaper.Configuration);
7258    method @NonNull public android.media.FadeManagerConfiguration.Builder setFadeState(int);
7259    method @NonNull public android.media.FadeManagerConfiguration.Builder setFadeableUsages(@NonNull java.util.List<java.lang.Integer>);
7260    method @NonNull public android.media.FadeManagerConfiguration.Builder setUnfadeableAudioAttributes(@NonNull java.util.List<android.media.AudioAttributes>);
7261    method @NonNull public android.media.FadeManagerConfiguration.Builder setUnfadeableContentTypes(@NonNull java.util.List<java.lang.Integer>);
7262    method @NonNull public android.media.FadeManagerConfiguration.Builder setUnfadeableUids(@NonNull java.util.List<java.lang.Integer>);
7263  }
7264
7265  public class HwAudioSource {
7266    method public boolean isPlaying();
7267    method public void start();
7268    method public void stop();
7269  }
7270
7271  public static final class HwAudioSource.Builder {
7272    ctor public HwAudioSource.Builder();
7273    method @NonNull public android.media.HwAudioSource build();
7274    method @NonNull public android.media.HwAudioSource.Builder setAudioAttributes(@NonNull android.media.AudioAttributes);
7275    method @NonNull public android.media.HwAudioSource.Builder setAudioDeviceInfo(@NonNull android.media.AudioDeviceInfo);
7276  }
7277
7278  public final class MediaCodec {
7279    method @NonNull @RequiresPermission(android.Manifest.permission.MEDIA_RESOURCE_OVERRIDE_PID) public static android.media.MediaCodec createByCodecNameForClient(@NonNull String, int, int) throws java.io.IOException;
7280  }
7281
7282  public class MediaPlayer implements android.media.AudioRouting android.media.VolumeAutomation {
7283    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);
7284  }
7285
7286  public static interface MediaPlayer.OnRtpRxNoticeListener {
7287    method public void onRtpRxNotice(@NonNull android.media.MediaPlayer, int, @NonNull int[]);
7288  }
7289
7290  public final class MediaRecorder.AudioSource {
7291    field @RequiresPermission(android.Manifest.permission.CAPTURE_AUDIO_OUTPUT) public static final int ECHO_REFERENCE = 1997; // 0x7cd
7292    field @RequiresPermission(android.Manifest.permission.CAPTURE_AUDIO_HOTWORD) public static final int HOTWORD = 1999; // 0x7cf
7293    field @RequiresPermission(android.Manifest.permission.CAPTURE_AUDIO_OUTPUT) public static final int RADIO_TUNER = 1998; // 0x7ce
7294    field @RequiresPermission(android.Manifest.permission.ACCESS_ULTRASOUND) public static final int ULTRASOUND = 2000; // 0x7d0
7295  }
7296
7297  public final class MediaRouter2 {
7298    method @NonNull public java.util.List<android.media.MediaRoute2Info> getAllRoutes();
7299    method @Nullable public String getClientPackageName();
7300    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);
7301    method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void startScan();
7302    method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void stopScan();
7303    method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void transfer(@NonNull android.media.MediaRouter2.RoutingController, @NonNull android.media.MediaRoute2Info);
7304  }
7305
7306  public abstract static class MediaRouter2.RouteCallback {
7307    method public void onPreferredFeaturesChanged(@NonNull java.util.List<java.lang.String>);
7308  }
7309
7310  public class MediaSyncEvent implements android.os.Parcelable {
7311    field public static final int SYNC_EVENT_SHARE_AUDIO_HISTORY = 100; // 0x64
7312  }
7313
7314  public final class NearbyDevice implements android.os.Parcelable {
7315    ctor public NearbyDevice(@NonNull String, int);
7316    method public int describeContents();
7317    method @NonNull public String getMediaRoute2Id();
7318    method public int getRangeZone();
7319    method public void writeToParcel(@NonNull android.os.Parcel, int);
7320    field @NonNull public static final android.os.Parcelable.Creator<android.media.NearbyDevice> CREATOR;
7321    field public static final int RANGE_CLOSE = 3; // 0x3
7322    field public static final int RANGE_FAR = 1; // 0x1
7323    field public static final int RANGE_LONG = 2; // 0x2
7324    field public static final int RANGE_UNKNOWN = 0; // 0x0
7325    field public static final int RANGE_WITHIN_REACH = 4; // 0x4
7326  }
7327
7328  public interface NearbyMediaDevicesProvider {
7329    method public void registerNearbyDevicesCallback(@NonNull java.util.function.Consumer<java.util.List<android.media.NearbyDevice>>);
7330    method public void unregisterNearbyDevicesCallback(@NonNull java.util.function.Consumer<java.util.List<android.media.NearbyDevice>>);
7331  }
7332
7333  public class PlayerProxy {
7334    method public void pause();
7335    method public void setPan(float);
7336    method public void setStartDelayMs(int);
7337    method public void setVolume(float);
7338    method public void start();
7339    method public void stop();
7340  }
7341
7342  public class RingtoneManager {
7343    method @RequiresPermission(android.Manifest.permission.WRITE_SETTINGS) public static void ensureDefaultRingtones(@NonNull android.content.Context);
7344  }
7345
7346  public final class RouteDiscoveryPreference implements android.os.Parcelable {
7347    field public static final android.media.RouteDiscoveryPreference EMPTY;
7348  }
7349
7350  public class Spatializer {
7351    method @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public void addCompatibleAudioDevice(@NonNull android.media.AudioDeviceAttributes);
7352    method @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public void addOnHeadTrackingModeChangedListener(@NonNull java.util.concurrent.Executor, @NonNull android.media.Spatializer.OnHeadTrackingModeChangedListener);
7353    method @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public void clearOnHeadToSoundstagePoseUpdatedListener();
7354    method @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public void clearOnSpatializerOutputChangedListener();
7355    method @NonNull @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public java.util.List<android.media.AudioDeviceAttributes> getCompatibleAudioDevices();
7356    method @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public int getDesiredHeadTrackingMode();
7357    method @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public void getEffectParameter(int, @NonNull byte[]);
7358    method @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public int getHeadTrackingMode();
7359    method @IntRange(from=0) @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public int getOutput();
7360    method @NonNull @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public java.util.List<java.lang.Integer> getSupportedHeadTrackingModes();
7361    method @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public boolean hasHeadTracker(@NonNull android.media.AudioDeviceAttributes);
7362    method @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public boolean isAvailableForDevice(@NonNull android.media.AudioDeviceAttributes);
7363    method @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public boolean isHeadTrackerEnabled(@NonNull android.media.AudioDeviceAttributes);
7364    method @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public void recenterHeadTracker();
7365    method @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public void removeCompatibleAudioDevice(@NonNull android.media.AudioDeviceAttributes);
7366    method @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public void removeOnHeadTrackingModeChangedListener(@NonNull android.media.Spatializer.OnHeadTrackingModeChangedListener);
7367    method @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public void setDesiredHeadTrackingMode(int);
7368    method @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public void setEffectParameter(int, @NonNull byte[]);
7369    method @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public void setEnabled(boolean);
7370    method @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public void setGlobalTransform(@NonNull float[]);
7371    method @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public void setHeadTrackerEnabled(boolean, @NonNull android.media.AudioDeviceAttributes);
7372    method @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public void setOnHeadToSoundstagePoseUpdatedListener(@NonNull java.util.concurrent.Executor, @NonNull android.media.Spatializer.OnHeadToSoundstagePoseUpdatedListener);
7373    method @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public void setOnSpatializerOutputChangedListener(@NonNull java.util.concurrent.Executor, @NonNull android.media.Spatializer.OnSpatializerOutputChangedListener);
7374    field @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public static final int HEAD_TRACKING_MODE_DISABLED = -1; // 0xffffffff
7375    field @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public static final int HEAD_TRACKING_MODE_OTHER = 0; // 0x0
7376    field @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public static final int HEAD_TRACKING_MODE_RELATIVE_DEVICE = 2; // 0x2
7377    field @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public static final int HEAD_TRACKING_MODE_RELATIVE_WORLD = 1; // 0x1
7378    field @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public static final int HEAD_TRACKING_MODE_UNSUPPORTED = -2; // 0xfffffffe
7379  }
7380
7381  public static interface Spatializer.OnHeadToSoundstagePoseUpdatedListener {
7382    method public void onHeadToSoundstagePoseUpdated(@NonNull android.media.Spatializer, @NonNull float[]);
7383  }
7384
7385  public static interface Spatializer.OnHeadTrackingModeChangedListener {
7386    method public void onDesiredHeadTrackingModeChanged(@NonNull android.media.Spatializer, int);
7387    method public void onHeadTrackingModeChanged(@NonNull android.media.Spatializer, int);
7388  }
7389
7390  public static interface Spatializer.OnSpatializerOutputChangedListener {
7391    method public void onSpatializerOutputChanged(@NonNull android.media.Spatializer, @IntRange(from=0) int);
7392  }
7393
7394  public final class VolumeInfo implements android.os.Parcelable {
7395    method public int describeContents();
7396    method @NonNull public static android.media.VolumeInfo getDefaultVolumeInfo();
7397    method public int getMaxVolumeIndex();
7398    method public int getMinVolumeIndex();
7399    method public int getStreamType();
7400    method @NonNull public android.media.audiopolicy.AudioVolumeGroup getVolumeGroup();
7401    method public int getVolumeIndex();
7402    method public boolean hasMuteCommand();
7403    method public boolean hasStreamType();
7404    method public boolean hasVolumeGroup();
7405    method public boolean isMuted();
7406    method public void writeToParcel(@NonNull android.os.Parcel, int);
7407    field @NonNull public static final android.os.Parcelable.Creator<android.media.VolumeInfo> CREATOR;
7408    field public static final int INDEX_NOT_SET = -100; // 0xffffff9c
7409  }
7410
7411  public static final class VolumeInfo.Builder {
7412    ctor public VolumeInfo.Builder(int);
7413    ctor public VolumeInfo.Builder(@NonNull android.media.audiopolicy.AudioVolumeGroup);
7414    ctor public VolumeInfo.Builder(@NonNull android.media.VolumeInfo);
7415    method @NonNull public android.media.VolumeInfo build();
7416    method @NonNull public android.media.VolumeInfo.Builder setMaxVolumeIndex(int);
7417    method @NonNull public android.media.VolumeInfo.Builder setMinVolumeIndex(int);
7418    method @NonNull public android.media.VolumeInfo.Builder setMuted(boolean);
7419    method @NonNull public android.media.VolumeInfo.Builder setVolumeIndex(int);
7420  }
7421
7422}
7423
7424package android.media.audiofx {
7425
7426  public class AudioEffect {
7427    ctor @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public AudioEffect(@NonNull java.util.UUID, @NonNull android.media.AudioDeviceAttributes);
7428    method @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public static boolean isEffectSupportedForDevice(@NonNull java.util.UUID, @NonNull android.media.AudioDeviceAttributes);
7429  }
7430
7431}
7432
7433package android.media.audiopolicy {
7434
7435  public class AudioMix implements android.os.Parcelable {
7436    method public int describeContents();
7437    method public int getMixState();
7438    method public void writeToParcel(@NonNull android.os.Parcel, int);
7439    field @NonNull public static final android.os.Parcelable.Creator<android.media.audiopolicy.AudioMix> CREATOR;
7440    field public static final int MIX_STATE_DISABLED = -1; // 0xffffffff
7441    field public static final int MIX_STATE_IDLE = 0; // 0x0
7442    field public static final int MIX_STATE_MIXING = 1; // 0x1
7443    field public static final int ROUTE_FLAG_LOOP_BACK = 2; // 0x2
7444    field public static final int ROUTE_FLAG_RENDER = 1; // 0x1
7445  }
7446
7447  public static class AudioMix.Builder {
7448    ctor public AudioMix.Builder(@NonNull android.media.audiopolicy.AudioMixingRule) throws java.lang.IllegalArgumentException;
7449    method public android.media.audiopolicy.AudioMix build() throws java.lang.IllegalArgumentException;
7450    method public android.media.audiopolicy.AudioMix.Builder setDevice(@NonNull android.media.AudioDeviceInfo) throws java.lang.IllegalArgumentException;
7451    method public android.media.audiopolicy.AudioMix.Builder setFormat(@NonNull android.media.AudioFormat) throws java.lang.IllegalArgumentException;
7452    method public android.media.audiopolicy.AudioMix.Builder setRouteFlags(int) throws java.lang.IllegalArgumentException;
7453  }
7454
7455  public class AudioMixingRule implements android.os.Parcelable {
7456    method public int describeContents();
7457    method public int getTargetMixRole();
7458    method public void writeToParcel(@NonNull android.os.Parcel, int);
7459    field @NonNull public static final android.os.Parcelable.Creator<android.media.audiopolicy.AudioMixingRule> CREATOR;
7460    field public static final int MIX_ROLE_INJECTOR = 1; // 0x1
7461    field public static final int MIX_ROLE_PLAYERS = 0; // 0x0
7462    field public static final int RULE_MATCH_ATTRIBUTE_CAPTURE_PRESET = 2; // 0x2
7463    field public static final int RULE_MATCH_ATTRIBUTE_USAGE = 1; // 0x1
7464    field public static final int RULE_MATCH_AUDIO_SESSION_ID = 16; // 0x10
7465    field public static final int RULE_MATCH_UID = 4; // 0x4
7466    field public static final int RULE_MATCH_USERID = 8; // 0x8
7467  }
7468
7469  public static class AudioMixingRule.Builder {
7470    ctor public AudioMixingRule.Builder();
7471    method public android.media.audiopolicy.AudioMixingRule.Builder addMixRule(int, Object) throws java.lang.IllegalArgumentException;
7472    method public android.media.audiopolicy.AudioMixingRule.Builder addRule(android.media.AudioAttributes, int) throws java.lang.IllegalArgumentException;
7473    method @NonNull public android.media.audiopolicy.AudioMixingRule.Builder allowPrivilegedPlaybackCapture(boolean);
7474    method public android.media.audiopolicy.AudioMixingRule build();
7475    method public android.media.audiopolicy.AudioMixingRule.Builder excludeMixRule(int, Object) throws java.lang.IllegalArgumentException;
7476    method public android.media.audiopolicy.AudioMixingRule.Builder excludeRule(android.media.AudioAttributes, int) throws java.lang.IllegalArgumentException;
7477    method @NonNull public android.media.audiopolicy.AudioMixingRule.Builder setTargetMixRole(int);
7478  }
7479
7480  public class AudioPolicy {
7481    method public int attachMixes(@NonNull java.util.List<android.media.audiopolicy.AudioMix>);
7482    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_SETTINGS_PRIVILEGED) public int clearFadeManagerConfigurationForFocusLoss();
7483    method public android.media.AudioRecord createAudioRecordSink(android.media.audiopolicy.AudioMix) throws java.lang.IllegalArgumentException;
7484    method public android.media.AudioTrack createAudioTrackSource(android.media.audiopolicy.AudioMix) throws java.lang.IllegalArgumentException;
7485    method public int detachMixes(@NonNull java.util.List<android.media.audiopolicy.AudioMix>);
7486    method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_SETTINGS_PRIVILEGED) public android.media.FadeManagerConfiguration getFadeManagerConfigurationForFocusLoss();
7487    method public int getFocusDuckingBehavior();
7488    method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public java.util.List<android.media.AudioFocusInfo> getFocusStack();
7489    method public int getStatus();
7490    method public boolean removeUidDeviceAffinity(int);
7491    method public boolean removeUserIdDeviceAffinity(int);
7492    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public boolean sendFocusLoss(@NonNull android.media.AudioFocusInfo) throws java.lang.IllegalStateException;
7493    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_SETTINGS_PRIVILEGED) public int setFadeManagerConfigurationForFocusLoss(@NonNull android.media.FadeManagerConfiguration);
7494    method public int setFocusDuckingBehavior(int) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException;
7495    method public void setRegistration(String);
7496    method public boolean setUidDeviceAffinity(int, @NonNull java.util.List<android.media.AudioDeviceInfo>);
7497    method public boolean setUserIdDeviceAffinity(int, @NonNull java.util.List<android.media.AudioDeviceInfo>);
7498    method public String toLogFriendlyString();
7499    method @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>>);
7500    field public static final int FOCUS_POLICY_DUCKING_DEFAULT = 0; // 0x0
7501    field public static final int FOCUS_POLICY_DUCKING_IN_APP = 0; // 0x0
7502    field public static final int FOCUS_POLICY_DUCKING_IN_POLICY = 1; // 0x1
7503    field public static final int POLICY_STATUS_REGISTERED = 2; // 0x2
7504    field public static final int POLICY_STATUS_UNREGISTERED = 1; // 0x1
7505  }
7506
7507  public abstract static class AudioPolicy.AudioPolicyFocusListener {
7508    ctor public AudioPolicy.AudioPolicyFocusListener();
7509    method public void onAudioFocusAbandon(android.media.AudioFocusInfo);
7510    method public void onAudioFocusGrant(android.media.AudioFocusInfo, int);
7511    method public void onAudioFocusLoss(android.media.AudioFocusInfo, boolean);
7512    method public void onAudioFocusRequest(android.media.AudioFocusInfo, int);
7513  }
7514
7515  public abstract static class AudioPolicy.AudioPolicyStatusListener {
7516    ctor public AudioPolicy.AudioPolicyStatusListener();
7517    method public void onMixStateUpdate(android.media.audiopolicy.AudioMix);
7518    method public void onStatusChange();
7519  }
7520
7521  public abstract static class AudioPolicy.AudioPolicyVolumeCallback {
7522    ctor public AudioPolicy.AudioPolicyVolumeCallback();
7523    method public void onVolumeAdjustment(int);
7524  }
7525
7526  public static class AudioPolicy.Builder {
7527    ctor public AudioPolicy.Builder(android.content.Context);
7528    method @NonNull public android.media.audiopolicy.AudioPolicy.Builder addMix(@NonNull android.media.audiopolicy.AudioMix) throws java.lang.IllegalArgumentException;
7529    method @NonNull public android.media.audiopolicy.AudioPolicy build();
7530    method public void setAudioPolicyFocusListener(android.media.audiopolicy.AudioPolicy.AudioPolicyFocusListener);
7531    method public void setAudioPolicyStatusListener(android.media.audiopolicy.AudioPolicy.AudioPolicyStatusListener);
7532    method @NonNull public android.media.audiopolicy.AudioPolicy.Builder setAudioPolicyVolumeCallback(@NonNull android.media.audiopolicy.AudioPolicy.AudioPolicyVolumeCallback);
7533    method @NonNull public android.media.audiopolicy.AudioPolicy.Builder setIsAudioFocusPolicy(boolean);
7534    method @NonNull public android.media.audiopolicy.AudioPolicy.Builder setLooper(@NonNull android.os.Looper) throws java.lang.IllegalArgumentException;
7535  }
7536
7537  public final class AudioProductStrategy implements android.os.Parcelable {
7538    method @NonNull public static android.media.audiopolicy.AudioProductStrategy createInvalidAudioProductStrategy(int);
7539    method public int describeContents();
7540    method @NonNull public android.media.AudioAttributes getAudioAttributes();
7541    method public int getId();
7542    method @NonNull public String getName();
7543    method public boolean supportsAudioAttributes(@NonNull android.media.AudioAttributes);
7544    method public void writeToParcel(@NonNull android.os.Parcel, int);
7545    field @NonNull public static final android.os.Parcelable.Creator<android.media.audiopolicy.AudioProductStrategy> CREATOR;
7546  }
7547
7548  public final class AudioVolumeGroup implements android.os.Parcelable {
7549    method public int describeContents();
7550    method @NonNull public java.util.List<android.media.AudioAttributes> getAudioAttributes();
7551    method public int getId();
7552    method @NonNull public int[] getLegacyStreamTypes();
7553    method @NonNull public String name();
7554    method public void writeToParcel(@NonNull android.os.Parcel, int);
7555    field public static final android.os.Parcelable.Creator<android.media.audiopolicy.AudioVolumeGroup> CREATOR;
7556    field public static final int DEFAULT_VOLUME_GROUP = -1; // 0xffffffff
7557  }
7558
7559}
7560
7561package android.media.musicrecognition {
7562
7563  public class MusicRecognitionManager {
7564    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);
7565    field public static final int RECOGNITION_FAILED_AUDIO_UNAVAILABLE = 7; // 0x7
7566    field public static final int RECOGNITION_FAILED_NOT_FOUND = 1; // 0x1
7567    field public static final int RECOGNITION_FAILED_NO_CONNECTIVITY = 2; // 0x2
7568    field public static final int RECOGNITION_FAILED_SERVICE_KILLED = 5; // 0x5
7569    field public static final int RECOGNITION_FAILED_SERVICE_UNAVAILABLE = 3; // 0x3
7570    field public static final int RECOGNITION_FAILED_TIMEOUT = 6; // 0x6
7571    field public static final int RECOGNITION_FAILED_UNKNOWN = -1; // 0xffffffff
7572  }
7573
7574  public static interface MusicRecognitionManager.RecognitionCallback {
7575    method public void onAudioStreamClosed();
7576    method public void onRecognitionFailed(@NonNull android.media.musicrecognition.RecognitionRequest, int);
7577    method public void onRecognitionSucceeded(@NonNull android.media.musicrecognition.RecognitionRequest, @NonNull android.media.MediaMetadata, @Nullable android.os.Bundle);
7578  }
7579
7580  public abstract class MusicRecognitionService extends android.app.Service {
7581    ctor public MusicRecognitionService();
7582    method @Nullable public android.os.IBinder onBind(@NonNull android.content.Intent);
7583    method public abstract void onRecognize(@NonNull android.os.ParcelFileDescriptor, @NonNull android.media.AudioFormat, @NonNull android.media.musicrecognition.MusicRecognitionService.Callback);
7584  }
7585
7586  public static interface MusicRecognitionService.Callback {
7587    method public void onRecognitionFailed(int);
7588    method public void onRecognitionSucceeded(@NonNull android.media.MediaMetadata, @Nullable android.os.Bundle);
7589  }
7590
7591  public final class RecognitionRequest implements android.os.Parcelable {
7592    method public int describeContents();
7593    method @NonNull public android.media.AudioAttributes getAudioAttributes();
7594    method @NonNull public android.media.AudioFormat getAudioFormat();
7595    method public int getCaptureSession();
7596    method public int getIgnoreBeginningFrames();
7597    method public int getMaxAudioLengthSeconds();
7598    method public void writeToParcel(@NonNull android.os.Parcel, int);
7599    field @NonNull public static final android.os.Parcelable.Creator<android.media.musicrecognition.RecognitionRequest> CREATOR;
7600  }
7601
7602  public static final class RecognitionRequest.Builder {
7603    ctor public RecognitionRequest.Builder();
7604    method @NonNull public android.media.musicrecognition.RecognitionRequest build();
7605    method @NonNull public android.media.musicrecognition.RecognitionRequest.Builder setAudioAttributes(@NonNull android.media.AudioAttributes);
7606    method @NonNull public android.media.musicrecognition.RecognitionRequest.Builder setAudioFormat(@NonNull android.media.AudioFormat);
7607    method @NonNull public android.media.musicrecognition.RecognitionRequest.Builder setCaptureSession(int);
7608    method @NonNull public android.media.musicrecognition.RecognitionRequest.Builder setIgnoreBeginningFrames(int);
7609    method @NonNull public android.media.musicrecognition.RecognitionRequest.Builder setMaxAudioLengthSeconds(int);
7610  }
7611
7612}
7613
7614package android.media.session {
7615
7616  public final class MediaSessionManager {
7617    method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void addOnMediaKeyEventDispatchedListener(@NonNull java.util.concurrent.Executor, @NonNull android.media.session.MediaSessionManager.OnMediaKeyEventDispatchedListener);
7618    method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void removeOnMediaKeyEventDispatchedListener(@NonNull android.media.session.MediaSessionManager.OnMediaKeyEventDispatchedListener);
7619    method @RequiresPermission(android.Manifest.permission.SET_MEDIA_KEY_LISTENER) public void setOnMediaKeyListener(android.media.session.MediaSessionManager.OnMediaKeyListener, @Nullable android.os.Handler);
7620    method @RequiresPermission(android.Manifest.permission.SET_VOLUME_KEY_LONG_PRESS_LISTENER) public void setOnVolumeKeyLongPressListener(android.media.session.MediaSessionManager.OnVolumeKeyLongPressListener, @Nullable android.os.Handler);
7621  }
7622
7623  public static interface MediaSessionManager.OnMediaKeyEventDispatchedListener {
7624    method public void onMediaKeyEventDispatched(@NonNull android.view.KeyEvent, @NonNull String, @Nullable android.media.session.MediaSession.Token);
7625  }
7626
7627  public static interface MediaSessionManager.OnMediaKeyListener {
7628    method public boolean onMediaKey(android.view.KeyEvent);
7629  }
7630
7631  public static interface MediaSessionManager.OnVolumeKeyLongPressListener {
7632    method public void onVolumeKeyLongPress(android.view.KeyEvent);
7633  }
7634
7635}
7636
7637package android.media.soundtrigger {
7638
7639  public abstract class SoundTriggerDetectionService extends android.app.Service {
7640    ctor public SoundTriggerDetectionService();
7641    method public final android.os.IBinder onBind(android.content.Intent);
7642    method @MainThread public void onConnected(@NonNull java.util.UUID, @Nullable android.os.Bundle);
7643    method @MainThread public void onDisconnected(@NonNull java.util.UUID, @Nullable android.os.Bundle);
7644    method @MainThread public void onError(@NonNull java.util.UUID, @Nullable android.os.Bundle, int, int);
7645    method @MainThread public void onGenericRecognitionEvent(@NonNull java.util.UUID, @Nullable android.os.Bundle, int, @NonNull android.hardware.soundtrigger.SoundTrigger.RecognitionEvent);
7646    method @MainThread public abstract void onStopOperation(@NonNull java.util.UUID, @Nullable android.os.Bundle, int);
7647    method public final void operationFinished(@Nullable java.util.UUID, int);
7648  }
7649
7650  @Deprecated public final class SoundTriggerDetector {
7651    method @Deprecated @RequiresPermission(android.Manifest.permission.MANAGE_SOUND_TRIGGER) public boolean startRecognition(int);
7652    method @Deprecated @RequiresPermission(android.Manifest.permission.MANAGE_SOUND_TRIGGER) public boolean stopRecognition();
7653    field @Deprecated public static final int RECOGNITION_FLAG_ALLOW_MULTIPLE_TRIGGERS = 2; // 0x2
7654    field @Deprecated public static final int RECOGNITION_FLAG_CAPTURE_TRIGGER_AUDIO = 1; // 0x1
7655    field @Deprecated public static final int RECOGNITION_FLAG_ENABLE_AUDIO_ECHO_CANCELLATION = 4; // 0x4
7656    field @Deprecated public static final int RECOGNITION_FLAG_ENABLE_AUDIO_NOISE_SUPPRESSION = 8; // 0x8
7657    field @Deprecated public static final int RECOGNITION_FLAG_RUN_IN_BATTERY_SAVER = 16; // 0x10
7658  }
7659
7660  @Deprecated public abstract static class SoundTriggerDetector.Callback {
7661    ctor @Deprecated public SoundTriggerDetector.Callback();
7662    method @Deprecated public abstract void onAvailabilityChanged(int);
7663    method @Deprecated public abstract void onDetected(@NonNull android.media.soundtrigger.SoundTriggerDetector.EventPayload);
7664    method @Deprecated public abstract void onError();
7665    method @Deprecated public abstract void onRecognitionPaused();
7666    method @Deprecated public abstract void onRecognitionResumed();
7667  }
7668
7669  @Deprecated public static class SoundTriggerDetector.EventPayload {
7670    method @Deprecated @Nullable public android.media.AudioFormat getCaptureAudioFormat();
7671    method @Deprecated @Nullable public byte[] getTriggerAudio();
7672  }
7673
7674  public final class SoundTriggerManager {
7675    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);
7676    method @Deprecated @RequiresPermission(android.Manifest.permission.MANAGE_SOUND_TRIGGER) public void deleteModel(java.util.UUID);
7677    method public int getDetectionServiceOperationsTimeout();
7678    method @Deprecated @Nullable @RequiresPermission(android.Manifest.permission.MANAGE_SOUND_TRIGGER) public android.media.soundtrigger.SoundTriggerManager.Model getModel(java.util.UUID);
7679    method @Nullable @RequiresPermission(android.Manifest.permission.MANAGE_SOUND_TRIGGER) public android.hardware.soundtrigger.SoundTrigger.ModuleProperties getModuleProperties();
7680    method @RequiresPermission(android.Manifest.permission.MANAGE_SOUND_TRIGGER) public int getParameter(@NonNull java.util.UUID, int);
7681    method @Nullable @RequiresPermission(android.Manifest.permission.MANAGE_SOUND_TRIGGER) public android.hardware.soundtrigger.SoundTrigger.ModelParamRange queryParameter(@Nullable java.util.UUID, int);
7682    method @RequiresPermission(android.Manifest.permission.MANAGE_SOUND_TRIGGER) public int setParameter(@Nullable java.util.UUID, int, int);
7683    method @Deprecated @RequiresPermission(android.Manifest.permission.MANAGE_SOUND_TRIGGER) public void updateModel(android.media.soundtrigger.SoundTriggerManager.Model);
7684  }
7685
7686  public static class SoundTriggerManager.Model {
7687    method @NonNull public static android.media.soundtrigger.SoundTriggerManager.Model create(@NonNull java.util.UUID, @NonNull java.util.UUID, @Nullable byte[], int);
7688    method @NonNull public static android.media.soundtrigger.SoundTriggerManager.Model create(@NonNull java.util.UUID, @NonNull java.util.UUID, @Nullable byte[]);
7689    method @Nullable public byte[] getModelData();
7690    method @NonNull public java.util.UUID getModelUuid();
7691    method @NonNull public java.util.UUID getVendorUuid();
7692    method public int getVersion();
7693  }
7694
7695}
7696
7697package android.media.tv {
7698
7699  public final class DvbDeviceInfo implements android.os.Parcelable {
7700    ctor public DvbDeviceInfo(int, int);
7701    method public int describeContents();
7702    method @IntRange(from=0) public int getAdapterId();
7703    method @IntRange(from=0) public int getDeviceId();
7704    method public void writeToParcel(@NonNull android.os.Parcel, int);
7705    field @NonNull public static final android.os.Parcelable.Creator<android.media.tv.DvbDeviceInfo> CREATOR;
7706  }
7707
7708  public final class TunedInfo implements android.os.Parcelable {
7709    method public int describeContents();
7710    method public int getAppTag();
7711    method public int getAppType();
7712    method @Nullable public android.net.Uri getChannelUri();
7713    method @NonNull public String getInputId();
7714    method public boolean isMainSession();
7715    method public boolean isRecordingSession();
7716    method public boolean isVisible();
7717    method public void writeToParcel(@NonNull android.os.Parcel, int);
7718    field public static final int APP_TAG_SELF = 0; // 0x0
7719    field public static final int APP_TYPE_NON_SYSTEM = 3; // 0x3
7720    field public static final int APP_TYPE_SELF = 1; // 0x1
7721    field public static final int APP_TYPE_SYSTEM = 2; // 0x2
7722    field @NonNull public static final android.os.Parcelable.Creator<android.media.tv.TunedInfo> CREATOR;
7723  }
7724
7725  public final class TvContentRatingSystemInfo implements android.os.Parcelable {
7726    method public static android.media.tv.TvContentRatingSystemInfo createTvContentRatingSystemInfo(int, android.content.pm.ApplicationInfo);
7727    method public int describeContents();
7728    method public android.net.Uri getXmlUri();
7729    method public boolean isSystemDefined();
7730    method public void writeToParcel(android.os.Parcel, int);
7731  }
7732
7733  public final class TvContract {
7734    method public static android.net.Uri buildChannelsUriForInput(@Nullable String, boolean);
7735    method public static android.net.Uri buildChannelsUriForInput(@Nullable String, @Nullable String, boolean);
7736    field public static final String ACTION_CHANNEL_BROWSABLE_REQUESTED = "android.media.tv.action.CHANNEL_BROWSABLE_REQUESTED";
7737    field public static final String EXTRA_BLOCKED_PACKAGES = "android.media.tv.extra.BLOCKED_PACKAGES";
7738    field public static final String EXTRA_COLUMN_NAME = "android.media.tv.extra.COLUMN_NAME";
7739    field public static final String EXTRA_DATA_TYPE = "android.media.tv.extra.DATA_TYPE";
7740    field public static final String EXTRA_DEFAULT_VALUE = "android.media.tv.extra.DEFAULT_VALUE";
7741    field public static final String EXTRA_EXISTING_COLUMN_NAMES = "android.media.tv.extra.EXISTING_COLUMN_NAMES";
7742    field public static final String EXTRA_PACKAGE_NAME = "android.media.tv.extra.PACKAGE_NAME";
7743    field public static final String EXTRA_RESULT_CODE = "android.media.tv.extra.RESULT_CODE";
7744    field public static final String METHOD_ADD_COLUMN = "add_column";
7745    field public static final String METHOD_BLOCK_PACKAGE = "block_package";
7746    field public static final String METHOD_GET_BLOCKED_PACKAGES = "get_blocked_packages";
7747    field public static final String METHOD_GET_COLUMNS = "get_columns";
7748    field public static final String METHOD_UNBLOCK_PACKAGE = "unblock_package";
7749    field public static final int RESULT_ERROR_INVALID_ARGUMENT = 2; // 0x2
7750    field public static final int RESULT_ERROR_IO = 1; // 0x1
7751    field public static final int RESULT_OK = 0; // 0x0
7752  }
7753
7754  public static final class TvContract.WatchedPrograms implements android.media.tv.TvContract.BaseTvColumns {
7755    field public static final String COLUMN_CHANNEL_ID = "channel_id";
7756    field public static final String COLUMN_DESCRIPTION = "description";
7757    field public static final String COLUMN_END_TIME_UTC_MILLIS = "end_time_utc_millis";
7758    field public static final String COLUMN_INTERNAL_SESSION_TOKEN = "session_token";
7759    field public static final String COLUMN_INTERNAL_TUNE_PARAMS = "tune_params";
7760    field public static final String COLUMN_START_TIME_UTC_MILLIS = "start_time_utc_millis";
7761    field public static final String COLUMN_TITLE = "title";
7762    field public static final String COLUMN_WATCH_END_TIME_UTC_MILLIS = "watch_end_time_utc_millis";
7763    field public static final String COLUMN_WATCH_START_TIME_UTC_MILLIS = "watch_start_time_utc_millis";
7764    field public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/watched_program";
7765    field public static final String CONTENT_TYPE = "vnd.android.cursor.dir/watched_program";
7766    field public static final android.net.Uri CONTENT_URI;
7767  }
7768
7769  public final class TvInputHardwareInfo implements android.os.Parcelable {
7770    method public int describeContents();
7771    method public String getAudioAddress();
7772    method public int getAudioType();
7773    method public int getCableConnectionStatus();
7774    method public int getDeviceId();
7775    method public int getHdmiPortId();
7776    method public int getType();
7777    method public void readFromParcel(android.os.Parcel);
7778    method public void writeToParcel(android.os.Parcel, int);
7779    field public static final int CABLE_CONNECTION_STATUS_CONNECTED = 1; // 0x1
7780    field public static final int CABLE_CONNECTION_STATUS_DISCONNECTED = 2; // 0x2
7781    field public static final int CABLE_CONNECTION_STATUS_UNKNOWN = 0; // 0x0
7782    field @NonNull public static final android.os.Parcelable.Creator<android.media.tv.TvInputHardwareInfo> CREATOR;
7783    field public static final int TV_INPUT_TYPE_COMPONENT = 6; // 0x6
7784    field public static final int TV_INPUT_TYPE_COMPOSITE = 3; // 0x3
7785    field public static final int TV_INPUT_TYPE_DISPLAY_PORT = 10; // 0xa
7786    field public static final int TV_INPUT_TYPE_DVI = 8; // 0x8
7787    field public static final int TV_INPUT_TYPE_HDMI = 9; // 0x9
7788    field public static final int TV_INPUT_TYPE_OTHER_HARDWARE = 1; // 0x1
7789    field public static final int TV_INPUT_TYPE_SCART = 5; // 0x5
7790    field public static final int TV_INPUT_TYPE_SVIDEO = 4; // 0x4
7791    field public static final int TV_INPUT_TYPE_TUNER = 2; // 0x2
7792    field public static final int TV_INPUT_TYPE_VGA = 7; // 0x7
7793  }
7794
7795  public static final class TvInputHardwareInfo.Builder {
7796    ctor public TvInputHardwareInfo.Builder();
7797    method public android.media.tv.TvInputHardwareInfo.Builder audioAddress(String);
7798    method public android.media.tv.TvInputHardwareInfo.Builder audioType(int);
7799    method public android.media.tv.TvInputHardwareInfo build();
7800    method public android.media.tv.TvInputHardwareInfo.Builder cableConnectionStatus(int);
7801    method public android.media.tv.TvInputHardwareInfo.Builder deviceId(int);
7802    method public android.media.tv.TvInputHardwareInfo.Builder hdmiPortId(int);
7803    method public android.media.tv.TvInputHardwareInfo.Builder type(int);
7804  }
7805
7806  public final class TvInputInfo implements android.os.Parcelable {
7807    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;
7808    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;
7809    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;
7810    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;
7811    method public android.hardware.hdmi.HdmiDeviceInfo getHdmiDeviceInfo();
7812    method public boolean isConnectedToHdmiSwitch();
7813    method public boolean isHardwareInput();
7814    method public android.graphics.drawable.Drawable loadIcon(@NonNull android.content.Context, int);
7815  }
7816
7817  public static final class TvInputInfo.Builder {
7818    method public android.media.tv.TvInputInfo.Builder setHdmiDeviceInfo(android.hardware.hdmi.HdmiDeviceInfo);
7819    method public android.media.tv.TvInputInfo.Builder setIcon(android.graphics.drawable.Icon);
7820    method public android.media.tv.TvInputInfo.Builder setIcon(android.graphics.drawable.Icon, int);
7821    method public android.media.tv.TvInputInfo.Builder setLabel(CharSequence);
7822    method public android.media.tv.TvInputInfo.Builder setLabel(@StringRes int);
7823    method public android.media.tv.TvInputInfo.Builder setParentId(String);
7824    method public android.media.tv.TvInputInfo.Builder setTvInputHardwareInfo(android.media.tv.TvInputHardwareInfo);
7825  }
7826
7827  public static final class TvInputInfo.TvInputSettings {
7828    method public static java.util.Map<java.lang.String,java.lang.String> getCustomLabels(android.content.Context, int);
7829    method public static java.util.Set<java.lang.String> getHiddenTvInputIds(android.content.Context, int);
7830    method public static void putCustomLabels(android.content.Context, java.util.Map<java.lang.String,java.lang.String>, int);
7831    method public static void putHiddenTvInputs(android.content.Context, java.util.Set<java.lang.String>, int);
7832  }
7833
7834  public final class TvInputManager {
7835    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);
7836    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);
7837    method @RequiresPermission(android.Manifest.permission.MODIFY_PARENTAL_CONTROLS) public void addBlockedRating(@NonNull android.media.tv.TvContentRating);
7838    method @RequiresPermission(android.Manifest.permission.CAPTURE_TV_INPUT) public boolean captureFrame(String, android.view.Surface, android.media.tv.TvStreamConfig);
7839    method @NonNull @RequiresPermission(android.Manifest.permission.TIS_EXTENSION_INTERFACE) public java.util.List<java.lang.String> getAvailableExtensionInterfaceNames(@NonNull String);
7840    method @RequiresPermission(android.Manifest.permission.CAPTURE_TV_INPUT) public java.util.List<android.media.tv.TvStreamConfig> getAvailableTvStreamConfigList(String);
7841    method @RequiresPermission("android.permission.TUNER_RESOURCE_ACCESS") public int getClientPid(@NonNull String);
7842    method @RequiresPermission("android.permission.TUNER_RESOURCE_ACCESS") public int getClientPriority(int, @NonNull String);
7843    method @RequiresPermission("android.permission.TUNER_RESOURCE_ACCESS") public int getClientPriority(int);
7844    method @NonNull @RequiresPermission(android.Manifest.permission.ACCESS_TUNED_INFO) public java.util.List<android.media.tv.TunedInfo> getCurrentTunedInfos();
7845    method @NonNull @RequiresPermission("android.permission.DVB_DEVICE") public java.util.List<android.media.tv.DvbDeviceInfo> getDvbDeviceList();
7846    method @Nullable @RequiresPermission(android.Manifest.permission.TIS_EXTENSION_INTERFACE) public android.os.IBinder getExtensionInterface(@NonNull String, @NonNull String);
7847    method @RequiresPermission(android.Manifest.permission.TV_INPUT_HARDWARE) public java.util.List<android.media.tv.TvInputHardwareInfo> getHardwareList();
7848    method @RequiresPermission(android.Manifest.permission.READ_CONTENT_RATING_SYSTEMS) public java.util.List<android.media.tv.TvContentRatingSystemInfo> getTvContentRatingSystemList();
7849    method @RequiresPermission(android.Manifest.permission.CAPTURE_TV_INPUT) public boolean isSingleSessionActive();
7850    method @RequiresPermission(android.Manifest.permission.NOTIFY_TV_INPUTS) public void notifyPreviewProgramAddedToWatchNext(String, long, long);
7851    method @RequiresPermission(android.Manifest.permission.NOTIFY_TV_INPUTS) public void notifyPreviewProgramBrowsableDisabled(String, long);
7852    method @RequiresPermission(android.Manifest.permission.NOTIFY_TV_INPUTS) public void notifyWatchNextProgramBrowsableDisabled(String, long);
7853    method @Nullable @RequiresPermission("android.permission.DVB_DEVICE") public android.os.ParcelFileDescriptor openDvbDevice(@NonNull android.media.tv.DvbDeviceInfo, int);
7854    method @RequiresPermission(android.Manifest.permission.TV_INPUT_HARDWARE) public void releaseTvInputHardware(int, android.media.tv.TvInputManager.Hardware);
7855    method @RequiresPermission(android.Manifest.permission.MODIFY_PARENTAL_CONTROLS) public void removeBlockedRating(@NonNull android.media.tv.TvContentRating);
7856    method @RequiresPermission(android.Manifest.permission.MODIFY_PARENTAL_CONTROLS) public void setParentalControlsEnabled(boolean);
7857  }
7858
7859  public static final class TvInputManager.Hardware {
7860    method public void overrideAudioSink(int, String, int, int, int);
7861    method public void overrideAudioSink(@NonNull android.media.AudioDeviceInfo, @IntRange(from=0) int, int, int);
7862    method public void setStreamVolume(float);
7863    method public boolean setSurface(android.view.Surface, android.media.tv.TvStreamConfig);
7864  }
7865
7866  public abstract static class TvInputManager.HardwareCallback {
7867    ctor public TvInputManager.HardwareCallback();
7868    method public abstract void onReleased();
7869    method public abstract void onStreamConfigChanged(android.media.tv.TvStreamConfig[]);
7870  }
7871
7872  public abstract static class TvInputManager.TvInputCallback {
7873    method @RequiresPermission(android.Manifest.permission.ACCESS_TUNED_INFO) public void onCurrentTunedInfosUpdated(@NonNull java.util.List<android.media.tv.TunedInfo>);
7874  }
7875
7876  public abstract class TvInputService extends android.app.Service {
7877    method @Nullable public android.os.IBinder createExtension();
7878    method @NonNull public java.util.List<java.lang.String> getAvailableExtensionInterfaceNames();
7879    method @Nullable public android.os.IBinder getExtensionInterface(@NonNull String);
7880    method @Nullable public String getExtensionInterfacePermission(@NonNull String);
7881    method @Nullable public android.media.tv.TvInputInfo onHardwareAdded(android.media.tv.TvInputHardwareInfo);
7882    method @Nullable public String onHardwareRemoved(android.media.tv.TvInputHardwareInfo);
7883    method @Nullable public android.media.tv.TvInputInfo onHdmiDeviceAdded(android.hardware.hdmi.HdmiDeviceInfo);
7884    method @Nullable public String onHdmiDeviceRemoved(android.hardware.hdmi.HdmiDeviceInfo);
7885    method public void onHdmiDeviceUpdated(@NonNull android.hardware.hdmi.HdmiDeviceInfo);
7886  }
7887
7888  public abstract static class TvInputService.RecordingSession {
7889    method public void notifySessionEvent(@NonNull String, android.os.Bundle);
7890  }
7891
7892  public abstract static class TvInputService.Session implements android.view.KeyEvent.Callback {
7893    method public void notifySessionEvent(@NonNull String, android.os.Bundle);
7894    method public void onSetMain(boolean);
7895  }
7896
7897  public abstract static class TvRecordingClient.RecordingCallback {
7898    method public void onEvent(String, String, android.os.Bundle);
7899  }
7900
7901  public class TvStreamConfig implements android.os.Parcelable {
7902    method public int describeContents();
7903    method public int getGeneration();
7904    method public int getMaxHeight();
7905    method public int getMaxWidth();
7906    method public int getStreamId();
7907    method public int getType();
7908    method public void writeToParcel(android.os.Parcel, int);
7909    field @NonNull public static final android.os.Parcelable.Creator<android.media.tv.TvStreamConfig> CREATOR;
7910    field public static final int STREAM_TYPE_BUFFER_PRODUCER = 2; // 0x2
7911    field public static final int STREAM_TYPE_INDEPENDENT_VIDEO_SOURCE = 1; // 0x1
7912  }
7913
7914  public static final class TvStreamConfig.Builder {
7915    ctor public TvStreamConfig.Builder();
7916    method public android.media.tv.TvStreamConfig build();
7917    method public android.media.tv.TvStreamConfig.Builder generation(int);
7918    method public android.media.tv.TvStreamConfig.Builder maxHeight(int);
7919    method public android.media.tv.TvStreamConfig.Builder maxWidth(int);
7920    method public android.media.tv.TvStreamConfig.Builder streamId(int);
7921    method public android.media.tv.TvStreamConfig.Builder type(int);
7922  }
7923
7924  public class TvView extends android.view.ViewGroup {
7925    method @RequiresPermission("android.permission.CHANGE_HDMI_CEC_ACTIVE_SOURCE") public void setMain();
7926    method @RequiresPermission(android.Manifest.permission.MODIFY_PARENTAL_CONTROLS) public void unblockContent(android.media.tv.TvContentRating);
7927  }
7928
7929  public abstract static class TvView.TvInputCallback {
7930    method public void onEvent(String, String, android.os.Bundle);
7931  }
7932
7933}
7934
7935package android.media.tv.tuner {
7936
7937  public class DemuxCapabilities {
7938    method public int getAudioFilterCount();
7939    method public int getDemuxCount();
7940    method public int getFilterCapabilities();
7941    method @NonNull public int[] getFilterTypeCapabilityList();
7942    method @NonNull @Size(5) public int[] getLinkCapabilities();
7943    method public int getPcrFilterCount();
7944    method public int getPesFilterCount();
7945    method public int getPlaybackCount();
7946    method public int getRecordCount();
7947    method public int getSectionFilterCount();
7948    method public long getSectionFilterLength();
7949    method public int getTsFilterCount();
7950    method public int getVideoFilterCount();
7951    method public boolean isTimeFilterSupported();
7952  }
7953
7954  public class DemuxInfo {
7955    ctor public DemuxInfo(int);
7956    method public int getFilterTypes();
7957    method public void setFilterTypes(int);
7958  }
7959
7960  public class Descrambler implements java.lang.AutoCloseable {
7961    method public int addPid(int, int, @Nullable android.media.tv.tuner.filter.Filter);
7962    method public void close();
7963    method public static boolean isValidKeyToken(@NonNull byte[]);
7964    method public int removePid(int, int, @Nullable android.media.tv.tuner.filter.Filter);
7965    method public int setKeyToken(@NonNull byte[]);
7966    field public static final int PID_TYPE_MMTP = 2; // 0x2
7967    field public static final int PID_TYPE_T = 1; // 0x1
7968  }
7969
7970  public class Lnb implements java.lang.AutoCloseable {
7971    method public void addCallback(@NonNull java.util.concurrent.Executor, @NonNull android.media.tv.tuner.LnbCallback);
7972    method public void close();
7973    method public boolean removeCallback(@NonNull android.media.tv.tuner.LnbCallback);
7974    method public int sendDiseqcMessage(@NonNull byte[]);
7975    method public int setSatellitePosition(int);
7976    method public int setTone(int);
7977    method public int setVoltage(int);
7978    field public static final int EVENT_TYPE_DISEQC_RX_OVERFLOW = 0; // 0x0
7979    field public static final int EVENT_TYPE_DISEQC_RX_PARITY_ERROR = 2; // 0x2
7980    field public static final int EVENT_TYPE_DISEQC_RX_TIMEOUT = 1; // 0x1
7981    field public static final int EVENT_TYPE_LNB_OVERLOAD = 3; // 0x3
7982    field public static final int POSITION_A = 1; // 0x1
7983    field public static final int POSITION_B = 2; // 0x2
7984    field public static final int POSITION_UNDEFINED = 0; // 0x0
7985    field public static final int TONE_CONTINUOUS = 1; // 0x1
7986    field public static final int TONE_NONE = 0; // 0x0
7987    field public static final int VOLTAGE_11V = 2; // 0x2
7988    field public static final int VOLTAGE_12V = 3; // 0x3
7989    field public static final int VOLTAGE_13V = 4; // 0x4
7990    field public static final int VOLTAGE_14V = 5; // 0x5
7991    field public static final int VOLTAGE_15V = 6; // 0x6
7992    field public static final int VOLTAGE_18V = 7; // 0x7
7993    field public static final int VOLTAGE_19V = 8; // 0x8
7994    field public static final int VOLTAGE_5V = 1; // 0x1
7995    field public static final int VOLTAGE_NONE = 0; // 0x0
7996  }
7997
7998  public interface LnbCallback {
7999    method public void onDiseqcMessage(@NonNull byte[]);
8000    method public void onEvent(int);
8001  }
8002
8003  public class Tuner implements java.lang.AutoCloseable {
8004    ctor @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public Tuner(@NonNull android.content.Context, @Nullable String, int);
8005    method public int applyFrontend(@NonNull android.media.tv.tuner.frontend.FrontendInfo);
8006    method public int cancelScanning();
8007    method public int cancelTuning();
8008    method public void clearOnTuneEventListener();
8009    method public void clearResourceLostListener();
8010    method public void close();
8011    method public void closeFrontend();
8012    method public int configureDemux(@Nullable android.media.tv.tuner.DemuxInfo);
8013    method public int connectCiCam(int);
8014    method public int connectFrontendToCiCam(int);
8015    method public int disconnectCiCam();
8016    method public int disconnectFrontendToCiCam(int);
8017    method public int getAvSyncHwId(@NonNull android.media.tv.tuner.filter.Filter);
8018    method public long getAvSyncTime(int);
8019    method @Nullable public java.util.List<android.media.tv.tuner.frontend.FrontendInfo> getAvailableFrontendInfos();
8020    method @Nullable public android.media.tv.tuner.DemuxInfo getCurrentDemuxInfo();
8021    method @Nullable public String getCurrentFrontendHardwareInfo();
8022    method @Nullable public android.media.tv.tuner.DemuxCapabilities getDemuxCapabilities();
8023    method @Nullable public android.media.tv.tuner.frontend.FrontendInfo getFrontendInfo();
8024    method @Nullable public android.media.tv.tuner.frontend.FrontendStatus getFrontendStatus(@NonNull int[]);
8025    method @NonNull public java.util.List<android.media.tv.tuner.frontend.FrontendStatusReadiness> getFrontendStatusReadiness(@NonNull int[]);
8026    method @IntRange(from=0xffffffff) public int getMaxNumberOfFrontends(int);
8027    method @RequiresPermission("android.permission.TUNER_RESOURCE_ACCESS") public boolean hasUnusedFrontend(int);
8028    method public boolean isLnaSupported();
8029    method public boolean isLowestPriority(int);
8030    method @Nullable @RequiresPermission(android.Manifest.permission.ACCESS_TV_DESCRAMBLER) public android.media.tv.tuner.Descrambler openDescrambler();
8031    method @Nullable public android.media.tv.tuner.dvr.DvrPlayback openDvrPlayback(long, @NonNull java.util.concurrent.Executor, @NonNull android.media.tv.tuner.dvr.OnPlaybackStatusChangedListener);
8032    method @Nullable public android.media.tv.tuner.dvr.DvrRecorder openDvrRecorder(long, @NonNull java.util.concurrent.Executor, @NonNull android.media.tv.tuner.dvr.OnRecordStatusChangedListener);
8033    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);
8034    method @Nullable public android.media.tv.tuner.Lnb openLnb(@NonNull java.util.concurrent.Executor, @NonNull android.media.tv.tuner.LnbCallback);
8035    method @Nullable public android.media.tv.tuner.Lnb openLnbByName(@NonNull String, @NonNull java.util.concurrent.Executor, @NonNull android.media.tv.tuner.LnbCallback);
8036    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);
8037    method @Nullable public android.media.tv.tuner.filter.TimeFilter openTimeFilter();
8038    method public int removeOutputPid(@IntRange(from=0) int);
8039    method public int scan(@NonNull android.media.tv.tuner.frontend.FrontendSettings, int, @NonNull java.util.concurrent.Executor, @NonNull android.media.tv.tuner.frontend.ScanCallback);
8040    method public int setLnaEnabled(boolean);
8041    method public int setMaxNumberOfFrontends(int, @IntRange(from=0) int);
8042    method public void setOnTuneEventListener(@NonNull java.util.concurrent.Executor, @NonNull android.media.tv.tuner.frontend.OnTuneEventListener);
8043    method public void setResourceLostListener(@NonNull java.util.concurrent.Executor, @NonNull android.media.tv.tuner.Tuner.OnResourceLostListener);
8044    method public void shareFrontendFromTuner(@NonNull android.media.tv.tuner.Tuner);
8045    method public int transferOwner(@NonNull android.media.tv.tuner.Tuner);
8046    method public int tune(@NonNull android.media.tv.tuner.frontend.FrontendSettings);
8047    method @RequiresPermission("android.permission.TUNER_RESOURCE_ACCESS") public void updateResourcePriority(int, int);
8048    field public static final int INVALID_AV_SYNC_ID = -1; // 0xffffffff
8049    field public static final int INVALID_FILTER_ID = -1; // 0xffffffff
8050    field public static final long INVALID_FILTER_ID_LONG = -1L; // 0xffffffffffffffffL
8051    field public static final int INVALID_FIRST_MACROBLOCK_IN_SLICE = -1; // 0xffffffff
8052    field public static final int INVALID_FRONTEND_ID = -1; // 0xffffffff
8053    field public static final int INVALID_FRONTEND_SETTING_FREQUENCY = -1; // 0xffffffff
8054    field public static final int INVALID_LTS_ID = -1; // 0xffffffff
8055    field public static final int INVALID_MMTP_RECORD_EVENT_MPT_SEQUENCE_NUM = -1; // 0xffffffff
8056    field public static final int INVALID_STREAM_ID = 65535; // 0xffff
8057    field public static final long INVALID_TIMESTAMP = -1L; // 0xffffffffffffffffL
8058    field public static final int INVALID_TS_PID = 65535; // 0xffff
8059    field public static final int RESULT_INVALID_ARGUMENT = 4; // 0x4
8060    field public static final int RESULT_INVALID_STATE = 3; // 0x3
8061    field public static final int RESULT_NOT_INITIALIZED = 2; // 0x2
8062    field public static final int RESULT_OUT_OF_MEMORY = 5; // 0x5
8063    field public static final int RESULT_SUCCESS = 0; // 0x0
8064    field public static final int RESULT_UNAVAILABLE = 1; // 0x1
8065    field public static final int RESULT_UNKNOWN_ERROR = 6; // 0x6
8066    field public static final int SCAN_TYPE_AUTO = 1; // 0x1
8067    field public static final int SCAN_TYPE_BLIND = 2; // 0x2
8068    field public static final int SCAN_TYPE_UNDEFINED = 0; // 0x0
8069    field @NonNull public static final byte[] VOID_KEYTOKEN;
8070  }
8071
8072  public static interface Tuner.OnResourceLostListener {
8073    method public void onResourceLost(@NonNull android.media.tv.tuner.Tuner);
8074  }
8075
8076  public final class TunerVersionChecker {
8077    method public static int getTunerVersion();
8078    field public static final int TUNER_VERSION_1_0 = 65536; // 0x10000
8079    field public static final int TUNER_VERSION_1_1 = 65537; // 0x10001
8080    field public static final int TUNER_VERSION_2_0 = 131072; // 0x20000
8081    field public static final int TUNER_VERSION_3_0 = 196608; // 0x30000
8082    field public static final int TUNER_VERSION_UNKNOWN = 0; // 0x0
8083  }
8084
8085}
8086
8087package android.media.tv.tuner.dvr {
8088
8089  public class DvrPlayback implements java.lang.AutoCloseable {
8090    method @Deprecated public int attachFilter(@NonNull android.media.tv.tuner.filter.Filter);
8091    method public void close();
8092    method public int configure(@NonNull android.media.tv.tuner.dvr.DvrSettings);
8093    method @Deprecated public int detachFilter(@NonNull android.media.tv.tuner.filter.Filter);
8094    method public int flush();
8095    method public long read(long);
8096    method public long read(@NonNull byte[], long, long);
8097    method public long seek(long);
8098    method public void setFileDescriptor(@NonNull android.os.ParcelFileDescriptor);
8099    method public int setPlaybackBufferStatusCheckIntervalHint(long);
8100    method public int start();
8101    method public int stop();
8102    field public static final int PLAYBACK_STATUS_ALMOST_EMPTY = 2; // 0x2
8103    field public static final int PLAYBACK_STATUS_ALMOST_FULL = 4; // 0x4
8104    field public static final int PLAYBACK_STATUS_EMPTY = 1; // 0x1
8105    field public static final int PLAYBACK_STATUS_FULL = 8; // 0x8
8106  }
8107
8108  public class DvrRecorder implements java.lang.AutoCloseable {
8109    method public int attachFilter(@NonNull android.media.tv.tuner.filter.Filter);
8110    method public void close();
8111    method public int configure(@NonNull android.media.tv.tuner.dvr.DvrSettings);
8112    method public int detachFilter(@NonNull android.media.tv.tuner.filter.Filter);
8113    method public int flush();
8114    method public void setFileDescriptor(@NonNull android.os.ParcelFileDescriptor);
8115    method public int setRecordBufferStatusCheckIntervalHint(long);
8116    method public int start();
8117    method public int stop();
8118    method public long write(long);
8119    method public long write(@NonNull byte[], long, long);
8120  }
8121
8122  public class DvrSettings {
8123    method @NonNull public static android.media.tv.tuner.dvr.DvrSettings.Builder builder();
8124    method public int getDataFormat();
8125    method public long getHighThreshold();
8126    method public long getLowThreshold();
8127    method public long getPacketSize();
8128    method public int getStatusMask();
8129    field public static final int DATA_FORMAT_ES = 2; // 0x2
8130    field public static final int DATA_FORMAT_PES = 1; // 0x1
8131    field public static final int DATA_FORMAT_SHV_TLV = 3; // 0x3
8132    field public static final int DATA_FORMAT_TS = 0; // 0x0
8133  }
8134
8135  public static final class DvrSettings.Builder {
8136    ctor public DvrSettings.Builder();
8137    method @NonNull public android.media.tv.tuner.dvr.DvrSettings build();
8138    method @NonNull public android.media.tv.tuner.dvr.DvrSettings.Builder setDataFormat(int);
8139    method @NonNull public android.media.tv.tuner.dvr.DvrSettings.Builder setHighThreshold(long);
8140    method @NonNull public android.media.tv.tuner.dvr.DvrSettings.Builder setLowThreshold(long);
8141    method @NonNull public android.media.tv.tuner.dvr.DvrSettings.Builder setPacketSize(long);
8142    method @NonNull public android.media.tv.tuner.dvr.DvrSettings.Builder setStatusMask(int);
8143  }
8144
8145  public interface OnPlaybackStatusChangedListener {
8146    method public void onPlaybackStatusChanged(int);
8147  }
8148
8149  public interface OnRecordStatusChangedListener {
8150    method public void onRecordStatusChanged(int);
8151  }
8152
8153}
8154
8155package android.media.tv.tuner.filter {
8156
8157  public final class AlpFilterConfiguration extends android.media.tv.tuner.filter.FilterConfiguration {
8158    method @NonNull public static android.media.tv.tuner.filter.AlpFilterConfiguration.Builder builder();
8159    method public int getLengthType();
8160    method public int getPacketType();
8161    method public int getType();
8162    field public static final int LENGTH_TYPE_UNDEFINED = 0; // 0x0
8163    field public static final int LENGTH_TYPE_WITHOUT_ADDITIONAL_HEADER = 1; // 0x1
8164    field public static final int LENGTH_TYPE_WITH_ADDITIONAL_HEADER = 2; // 0x2
8165    field public static final int PACKET_TYPE_COMPRESSED = 2; // 0x2
8166    field public static final int PACKET_TYPE_EXTENSION = 6; // 0x6
8167    field public static final int PACKET_TYPE_IPV4 = 0; // 0x0
8168    field public static final int PACKET_TYPE_MPEG2_TS = 7; // 0x7
8169    field public static final int PACKET_TYPE_SIGNALING = 4; // 0x4
8170  }
8171
8172  public static final class AlpFilterConfiguration.Builder {
8173    method @NonNull public android.media.tv.tuner.filter.AlpFilterConfiguration build();
8174    method @NonNull public android.media.tv.tuner.filter.AlpFilterConfiguration.Builder setLengthType(int);
8175    method @NonNull public android.media.tv.tuner.filter.AlpFilterConfiguration.Builder setPacketType(int);
8176    method @NonNull public android.media.tv.tuner.filter.AlpFilterConfiguration.Builder setSettings(@Nullable android.media.tv.tuner.filter.Settings);
8177  }
8178
8179  public class AudioDescriptor {
8180    method public byte getAdFade();
8181    method public byte getAdGainCenter();
8182    method public byte getAdGainFront();
8183    method public byte getAdGainSurround();
8184    method public byte getAdPan();
8185    method public char getAdVersionTextTag();
8186  }
8187
8188  public class AvSettings extends android.media.tv.tuner.filter.Settings {
8189    method @NonNull public static android.media.tv.tuner.filter.AvSettings.Builder builder(int, boolean);
8190    method public int getAudioStreamType();
8191    method public int getVideoStreamType();
8192    method public boolean isPassthrough();
8193    method public boolean useSecureMemory();
8194    field public static final int AUDIO_STREAM_TYPE_AAC = 6; // 0x6
8195    field public static final int AUDIO_STREAM_TYPE_AAC_ADTS = 16; // 0x10
8196    field public static final int AUDIO_STREAM_TYPE_AAC_HE_ADTS = 18; // 0x12
8197    field public static final int AUDIO_STREAM_TYPE_AAC_HE_LATM = 19; // 0x13
8198    field public static final int AUDIO_STREAM_TYPE_AAC_LATM = 17; // 0x11
8199    field public static final int AUDIO_STREAM_TYPE_AC3 = 7; // 0x7
8200    field public static final int AUDIO_STREAM_TYPE_AC4 = 9; // 0x9
8201    field public static final int AUDIO_STREAM_TYPE_DRA = 15; // 0xf
8202    field public static final int AUDIO_STREAM_TYPE_DTS = 10; // 0xa
8203    field public static final int AUDIO_STREAM_TYPE_DTS_HD = 11; // 0xb
8204    field public static final int AUDIO_STREAM_TYPE_EAC3 = 8; // 0x8
8205    field public static final int AUDIO_STREAM_TYPE_MP3 = 2; // 0x2
8206    field public static final int AUDIO_STREAM_TYPE_MPEG1 = 3; // 0x3
8207    field public static final int AUDIO_STREAM_TYPE_MPEG2 = 4; // 0x4
8208    field public static final int AUDIO_STREAM_TYPE_MPEGH = 5; // 0x5
8209    field public static final int AUDIO_STREAM_TYPE_OPUS = 13; // 0xd
8210    field public static final int AUDIO_STREAM_TYPE_PCM = 1; // 0x1
8211    field public static final int AUDIO_STREAM_TYPE_UNDEFINED = 0; // 0x0
8212    field public static final int AUDIO_STREAM_TYPE_VORBIS = 14; // 0xe
8213    field public static final int AUDIO_STREAM_TYPE_WMA = 12; // 0xc
8214    field public static final int VIDEO_STREAM_TYPE_AV1 = 10; // 0xa
8215    field public static final int VIDEO_STREAM_TYPE_AVC = 5; // 0x5
8216    field public static final int VIDEO_STREAM_TYPE_AVS = 11; // 0xb
8217    field public static final int VIDEO_STREAM_TYPE_AVS2 = 12; // 0xc
8218    field public static final int VIDEO_STREAM_TYPE_HEVC = 6; // 0x6
8219    field public static final int VIDEO_STREAM_TYPE_MPEG1 = 2; // 0x2
8220    field public static final int VIDEO_STREAM_TYPE_MPEG2 = 3; // 0x3
8221    field public static final int VIDEO_STREAM_TYPE_MPEG4P2 = 4; // 0x4
8222    field public static final int VIDEO_STREAM_TYPE_RESERVED = 1; // 0x1
8223    field public static final int VIDEO_STREAM_TYPE_UNDEFINED = 0; // 0x0
8224    field public static final int VIDEO_STREAM_TYPE_VC1 = 7; // 0x7
8225    field public static final int VIDEO_STREAM_TYPE_VP8 = 8; // 0x8
8226    field public static final int VIDEO_STREAM_TYPE_VP9 = 9; // 0x9
8227    field public static final int VIDEO_STREAM_TYPE_VVC = 13; // 0xd
8228  }
8229
8230  public static class AvSettings.Builder {
8231    method @NonNull public android.media.tv.tuner.filter.AvSettings build();
8232    method @NonNull public android.media.tv.tuner.filter.AvSettings.Builder setAudioStreamType(int);
8233    method @NonNull public android.media.tv.tuner.filter.AvSettings.Builder setPassthrough(boolean);
8234    method @NonNull public android.media.tv.tuner.filter.AvSettings.Builder setUseSecureMemory(boolean);
8235    method @NonNull public android.media.tv.tuner.filter.AvSettings.Builder setVideoStreamType(int);
8236  }
8237
8238  public class DownloadEvent extends android.media.tv.tuner.filter.FilterEvent {
8239    method public int getDataLength();
8240    method public int getDownloadId();
8241    method public int getItemFragmentIndex();
8242    method public int getItemId();
8243    method public int getLastItemFragmentIndex();
8244    method @IntRange(from=0) public int getMpuSequenceNumber();
8245  }
8246
8247  public class DownloadSettings extends android.media.tv.tuner.filter.Settings {
8248    method @NonNull public static android.media.tv.tuner.filter.DownloadSettings.Builder builder(int);
8249    method public int getDownloadId();
8250    method public boolean useDownloadId();
8251  }
8252
8253  public static class DownloadSettings.Builder {
8254    method @NonNull public android.media.tv.tuner.filter.DownloadSettings build();
8255    method @NonNull public android.media.tv.tuner.filter.DownloadSettings.Builder setDownloadId(int);
8256    method @NonNull public android.media.tv.tuner.filter.DownloadSettings.Builder setUseDownloadId(boolean);
8257  }
8258
8259  public class Filter implements java.lang.AutoCloseable {
8260    method @Nullable public String acquireSharedFilterToken();
8261    method public void close();
8262    method public int configure(@NonNull android.media.tv.tuner.filter.FilterConfiguration);
8263    method public int delayCallbackForDurationMillis(long);
8264    method public int delayCallbackUntilBytesAccumulated(int);
8265    method public int flush();
8266    method public void freeSharedFilterToken(@NonNull String);
8267    method @Deprecated public int getId();
8268    method public long getIdLong();
8269    method public int read(@NonNull byte[], long, long);
8270    method public int setDataSource(@Nullable android.media.tv.tuner.filter.Filter);
8271    method public int setMonitorEventMask(int);
8272    method public int start();
8273    method public int stop();
8274    field public static final int MONITOR_EVENT_IP_CID_CHANGE = 2; // 0x2
8275    field public static final int MONITOR_EVENT_SCRAMBLING_STATUS = 1; // 0x1
8276    field public static final int SCRAMBLING_STATUS_NOT_SCRAMBLED = 2; // 0x2
8277    field public static final int SCRAMBLING_STATUS_SCRAMBLED = 4; // 0x4
8278    field public static final int SCRAMBLING_STATUS_UNKNOWN = 1; // 0x1
8279    field public static final int STATUS_DATA_READY = 1; // 0x1
8280    field public static final int STATUS_HIGH_WATER = 4; // 0x4
8281    field public static final int STATUS_LOW_WATER = 2; // 0x2
8282    field public static final int STATUS_NO_DATA = 16; // 0x10
8283    field public static final int STATUS_OVERFLOW = 8; // 0x8
8284    field public static final int SUBTYPE_AUDIO = 3; // 0x3
8285    field public static final int SUBTYPE_DOWNLOAD = 5; // 0x5
8286    field public static final int SUBTYPE_IP = 13; // 0xd
8287    field public static final int SUBTYPE_IP_PAYLOAD = 12; // 0xc
8288    field public static final int SUBTYPE_MMTP = 10; // 0xa
8289    field public static final int SUBTYPE_NTP = 11; // 0xb
8290    field public static final int SUBTYPE_PAYLOAD_THROUGH = 14; // 0xe
8291    field public static final int SUBTYPE_PCR = 8; // 0x8
8292    field public static final int SUBTYPE_PES = 2; // 0x2
8293    field public static final int SUBTYPE_PTP = 16; // 0x10
8294    field public static final int SUBTYPE_RECORD = 6; // 0x6
8295    field public static final int SUBTYPE_SECTION = 1; // 0x1
8296    field public static final int SUBTYPE_TEMI = 9; // 0x9
8297    field public static final int SUBTYPE_TLV = 15; // 0xf
8298    field public static final int SUBTYPE_TS = 7; // 0x7
8299    field public static final int SUBTYPE_UNDEFINED = 0; // 0x0
8300    field public static final int SUBTYPE_VIDEO = 4; // 0x4
8301    field public static final int TYPE_ALP = 16; // 0x10
8302    field public static final int TYPE_IP = 4; // 0x4
8303    field public static final int TYPE_MMTP = 2; // 0x2
8304    field public static final int TYPE_TLV = 8; // 0x8
8305    field public static final int TYPE_TS = 1; // 0x1
8306    field public static final int TYPE_UNDEFINED = 0; // 0x0
8307  }
8308
8309  public interface FilterCallback {
8310    method public void onFilterEvent(@NonNull android.media.tv.tuner.filter.Filter, @NonNull android.media.tv.tuner.filter.FilterEvent[]);
8311    method public void onFilterStatusChanged(@NonNull android.media.tv.tuner.filter.Filter, int);
8312  }
8313
8314  public abstract class FilterConfiguration {
8315    method @Nullable public android.media.tv.tuner.filter.Settings getSettings();
8316    method public abstract int getType();
8317  }
8318
8319  public abstract class FilterEvent {
8320    ctor public FilterEvent();
8321  }
8322
8323  public final class IpCidChangeEvent extends android.media.tv.tuner.filter.FilterEvent {
8324    method public int getIpCid();
8325  }
8326
8327  public final class IpFilterConfiguration extends android.media.tv.tuner.filter.FilterConfiguration {
8328    method @NonNull public static android.media.tv.tuner.filter.IpFilterConfiguration.Builder builder();
8329    method @NonNull @Size(min=4, max=16) public byte[] getDstIpAddress();
8330    method public int getDstPort();
8331    method @IntRange(from=0, to=61439) public int getIpFilterContextId();
8332    method @NonNull @Size(min=4, max=16) public byte[] getSrcIpAddress();
8333    method public int getSrcPort();
8334    method public int getType();
8335    method public boolean isPassthrough();
8336    field public static final int INVALID_IP_FILTER_CONTEXT_ID = -1; // 0xffffffff
8337  }
8338
8339  public static final class IpFilterConfiguration.Builder {
8340    method @NonNull public android.media.tv.tuner.filter.IpFilterConfiguration build();
8341    method @NonNull public android.media.tv.tuner.filter.IpFilterConfiguration.Builder setDstIpAddress(@NonNull byte[]);
8342    method @NonNull public android.media.tv.tuner.filter.IpFilterConfiguration.Builder setDstPort(int);
8343    method @NonNull public android.media.tv.tuner.filter.IpFilterConfiguration.Builder setIpFilterContextId(int);
8344    method @NonNull public android.media.tv.tuner.filter.IpFilterConfiguration.Builder setPassthrough(boolean);
8345    method @NonNull public android.media.tv.tuner.filter.IpFilterConfiguration.Builder setSettings(@Nullable android.media.tv.tuner.filter.Settings);
8346    method @NonNull public android.media.tv.tuner.filter.IpFilterConfiguration.Builder setSrcIpAddress(@NonNull byte[]);
8347    method @NonNull public android.media.tv.tuner.filter.IpFilterConfiguration.Builder setSrcPort(int);
8348  }
8349
8350  public class IpPayloadEvent extends android.media.tv.tuner.filter.FilterEvent {
8351    method public int getDataLength();
8352  }
8353
8354  public class MediaEvent extends android.media.tv.tuner.filter.FilterEvent {
8355    method protected void finalize();
8356    method public long getAudioHandle();
8357    method @NonNull public java.util.List<android.media.AudioPresentation> getAudioPresentations();
8358    method public long getAvDataId();
8359    method public long getDataLength();
8360    method public long getDts();
8361    method @Nullable public android.media.tv.tuner.filter.AudioDescriptor getExtraMetaData();
8362    method @Nullable public android.media.MediaCodec.LinearBlock getLinearBlock();
8363    method @IntRange(from=0) public int getMpuSequenceNumber();
8364    method public long getOffset();
8365    method public long getPts();
8366    method public int getScIndexMask();
8367    method public int getStreamId();
8368    method public boolean isDtsPresent();
8369    method public boolean isPrivateData();
8370    method public boolean isPtsPresent();
8371    method public boolean isSecureMemory();
8372    method public void release();
8373  }
8374
8375  public final class MmtpFilterConfiguration extends android.media.tv.tuner.filter.FilterConfiguration {
8376    method @NonNull public static android.media.tv.tuner.filter.MmtpFilterConfiguration.Builder builder();
8377    method public int getMmtpPacketId();
8378    method public int getType();
8379  }
8380
8381  public static final class MmtpFilterConfiguration.Builder {
8382    method @NonNull public android.media.tv.tuner.filter.MmtpFilterConfiguration build();
8383    method @NonNull public android.media.tv.tuner.filter.MmtpFilterConfiguration.Builder setMmtpPacketId(int);
8384    method @NonNull public android.media.tv.tuner.filter.MmtpFilterConfiguration.Builder setSettings(@Nullable android.media.tv.tuner.filter.Settings);
8385  }
8386
8387  public class MmtpRecordEvent extends android.media.tv.tuner.filter.FilterEvent {
8388    method public long getDataLength();
8389    method public int getFirstMacroblockInSlice();
8390    method @IntRange(from=0) public int getMpuSequenceNumber();
8391    method public long getPts();
8392    method public int getScHevcIndexMask();
8393    method public int getTsIndexMask();
8394  }
8395
8396  public class PesEvent extends android.media.tv.tuner.filter.FilterEvent {
8397    method public int getDataLength();
8398    method @IntRange(from=0) public int getMpuSequenceNumber();
8399    method public int getStreamId();
8400  }
8401
8402  public class PesSettings extends android.media.tv.tuner.filter.Settings {
8403    method @NonNull public static android.media.tv.tuner.filter.PesSettings.Builder builder(int);
8404    method public int getStreamId();
8405    method public boolean isRaw();
8406  }
8407
8408  public static class PesSettings.Builder {
8409    method @NonNull public android.media.tv.tuner.filter.PesSettings build();
8410    method @NonNull public android.media.tv.tuner.filter.PesSettings.Builder setRaw(boolean);
8411    method @NonNull public android.media.tv.tuner.filter.PesSettings.Builder setStreamId(int);
8412  }
8413
8414  public class RecordSettings extends android.media.tv.tuner.filter.Settings {
8415    method @NonNull public static android.media.tv.tuner.filter.RecordSettings.Builder builder(int);
8416    method public int getScIndexMask();
8417    method public int getScIndexType();
8418    method public int getTsIndexMask();
8419    field public static final int INDEX_TYPE_NONE = 0; // 0x0
8420    field public static final int INDEX_TYPE_SC = 1; // 0x1
8421    field public static final int INDEX_TYPE_SC_AVC = 3; // 0x3
8422    field public static final int INDEX_TYPE_SC_HEVC = 2; // 0x2
8423    field public static final int INDEX_TYPE_SC_VVC = 4; // 0x4
8424    field public static final int MPT_INDEX_AUDIO = 262144; // 0x40000
8425    field public static final int MPT_INDEX_MPT = 65536; // 0x10000
8426    field public static final int MPT_INDEX_TIMESTAMP_TARGET_AUDIO = 1048576; // 0x100000
8427    field public static final int MPT_INDEX_TIMESTAMP_TARGET_VIDEO = 524288; // 0x80000
8428    field public static final int MPT_INDEX_VIDEO = 131072; // 0x20000
8429    field public static final int SC_HEVC_INDEX_AUD = 2; // 0x2
8430    field public static final int SC_HEVC_INDEX_SLICE_BLA_N_LP = 16; // 0x10
8431    field public static final int SC_HEVC_INDEX_SLICE_BLA_W_RADL = 8; // 0x8
8432    field public static final int SC_HEVC_INDEX_SLICE_CE_BLA_W_LP = 4; // 0x4
8433    field public static final int SC_HEVC_INDEX_SLICE_IDR_N_LP = 64; // 0x40
8434    field public static final int SC_HEVC_INDEX_SLICE_IDR_W_RADL = 32; // 0x20
8435    field public static final int SC_HEVC_INDEX_SLICE_TRAIL_CRA = 128; // 0x80
8436    field public static final int SC_HEVC_INDEX_SPS = 1; // 0x1
8437    field public static final int SC_INDEX_B_FRAME = 4; // 0x4
8438    field public static final int SC_INDEX_B_SLICE = 64; // 0x40
8439    field public static final int SC_INDEX_I_FRAME = 1; // 0x1
8440    field public static final int SC_INDEX_I_SLICE = 16; // 0x10
8441    field public static final int SC_INDEX_P_FRAME = 2; // 0x2
8442    field public static final int SC_INDEX_P_SLICE = 32; // 0x20
8443    field public static final int SC_INDEX_SEQUENCE = 8; // 0x8
8444    field public static final int SC_INDEX_SI_SLICE = 128; // 0x80
8445    field public static final int SC_INDEX_SP_SLICE = 256; // 0x100
8446    field public static final int SC_VVC_INDEX_AUD = 64; // 0x40
8447    field public static final int SC_VVC_INDEX_SLICE_CRA = 4; // 0x4
8448    field public static final int SC_VVC_INDEX_SLICE_GDR = 8; // 0x8
8449    field public static final int SC_VVC_INDEX_SLICE_IDR_N_LP = 2; // 0x2
8450    field public static final int SC_VVC_INDEX_SLICE_IDR_W_RADL = 1; // 0x1
8451    field public static final int SC_VVC_INDEX_SPS = 32; // 0x20
8452    field public static final int SC_VVC_INDEX_VPS = 16; // 0x10
8453    field public static final int TS_INDEX_ADAPTATION_EXTENSION_FLAG = 4096; // 0x1000
8454    field public static final int TS_INDEX_CHANGE_TO_EVEN_SCRAMBLED = 8; // 0x8
8455    field public static final int TS_INDEX_CHANGE_TO_NOT_SCRAMBLED = 4; // 0x4
8456    field public static final int TS_INDEX_CHANGE_TO_ODD_SCRAMBLED = 16; // 0x10
8457    field public static final int TS_INDEX_DISCONTINUITY_INDICATOR = 32; // 0x20
8458    field public static final int TS_INDEX_FIRST_PACKET = 1; // 0x1
8459    field public static final int TS_INDEX_INVALID = 0; // 0x0
8460    field public static final int TS_INDEX_OPCR_FLAG = 512; // 0x200
8461    field public static final int TS_INDEX_PAYLOAD_UNIT_START_INDICATOR = 2; // 0x2
8462    field public static final int TS_INDEX_PCR_FLAG = 256; // 0x100
8463    field public static final int TS_INDEX_PRIORITY_INDICATOR = 128; // 0x80
8464    field public static final int TS_INDEX_PRIVATE_DATA = 2048; // 0x800
8465    field public static final int TS_INDEX_RANDOM_ACCESS_INDICATOR = 64; // 0x40
8466    field public static final int TS_INDEX_SPLICING_POINT_FLAG = 1024; // 0x400
8467  }
8468
8469  public static class RecordSettings.Builder {
8470    method @NonNull public android.media.tv.tuner.filter.RecordSettings build();
8471    method @NonNull public android.media.tv.tuner.filter.RecordSettings.Builder setScIndexMask(int);
8472    method @NonNull public android.media.tv.tuner.filter.RecordSettings.Builder setScIndexType(int);
8473    method @NonNull public android.media.tv.tuner.filter.RecordSettings.Builder setTsIndexMask(int);
8474  }
8475
8476  public final class RestartEvent extends android.media.tv.tuner.filter.FilterEvent {
8477    method public int getStartId();
8478    field public static final int NEW_FILTER_FIRST_START_ID = 0; // 0x0
8479  }
8480
8481  public final class ScramblingStatusEvent extends android.media.tv.tuner.filter.FilterEvent {
8482    method public int getScramblingStatus();
8483  }
8484
8485  public class SectionEvent extends android.media.tv.tuner.filter.FilterEvent {
8486    method @Deprecated public int getDataLength();
8487    method public long getDataLengthLong();
8488    method public int getSectionNumber();
8489    method public int getTableId();
8490    method public int getVersion();
8491  }
8492
8493  public abstract class SectionSettings extends android.media.tv.tuner.filter.Settings {
8494    method public int getLengthFieldBitWidth();
8495    method public boolean isCrcEnabled();
8496    method public boolean isRaw();
8497    method public boolean isRepeat();
8498  }
8499
8500  public abstract static class SectionSettings.Builder<T extends android.media.tv.tuner.filter.SectionSettings.Builder<T>> {
8501    method @NonNull public T setBitWidthOfLengthField(@IntRange(from=0) int);
8502    method @NonNull public T setCrcEnabled(boolean);
8503    method @NonNull public T setRaw(boolean);
8504    method @NonNull public T setRepeat(boolean);
8505  }
8506
8507  public class SectionSettingsWithSectionBits extends android.media.tv.tuner.filter.SectionSettings {
8508    method @NonNull public static android.media.tv.tuner.filter.SectionSettingsWithSectionBits.Builder builder(int);
8509    method @NonNull public byte[] getFilterBytes();
8510    method @NonNull public byte[] getMask();
8511    method @NonNull public byte[] getMode();
8512  }
8513
8514  public static class SectionSettingsWithSectionBits.Builder extends android.media.tv.tuner.filter.SectionSettings.Builder<android.media.tv.tuner.filter.SectionSettingsWithSectionBits.Builder> {
8515    method @NonNull public android.media.tv.tuner.filter.SectionSettingsWithSectionBits build();
8516    method @NonNull public android.media.tv.tuner.filter.SectionSettingsWithSectionBits.Builder setFilter(@NonNull byte[]);
8517    method @NonNull public android.media.tv.tuner.filter.SectionSettingsWithSectionBits.Builder setMask(@NonNull byte[]);
8518    method @NonNull public android.media.tv.tuner.filter.SectionSettingsWithSectionBits.Builder setMode(@NonNull byte[]);
8519  }
8520
8521  public class SectionSettingsWithTableInfo extends android.media.tv.tuner.filter.SectionSettings {
8522    method @NonNull public static android.media.tv.tuner.filter.SectionSettingsWithTableInfo.Builder builder(int);
8523    method public int getTableId();
8524    method public int getVersion();
8525    field public static final int INVALID_TABLE_INFO_VERSION = -1; // 0xffffffff
8526  }
8527
8528  public static class SectionSettingsWithTableInfo.Builder extends android.media.tv.tuner.filter.SectionSettings.Builder<android.media.tv.tuner.filter.SectionSettingsWithTableInfo.Builder> {
8529    method @NonNull public android.media.tv.tuner.filter.SectionSettingsWithTableInfo build();
8530    method @NonNull public android.media.tv.tuner.filter.SectionSettingsWithTableInfo.Builder setTableId(int);
8531    method @NonNull public android.media.tv.tuner.filter.SectionSettingsWithTableInfo.Builder setVersion(int);
8532  }
8533
8534  public abstract class Settings {
8535    method public int getType();
8536  }
8537
8538  public final class SharedFilter implements java.lang.AutoCloseable {
8539    method public void close();
8540    method public int flush();
8541    method public int read(@NonNull byte[], long, long);
8542    method public int start();
8543    method public int stop();
8544    field public static final int STATUS_INACCESSIBLE = 128; // 0x80
8545  }
8546
8547  public interface SharedFilterCallback {
8548    method public void onFilterEvent(@NonNull android.media.tv.tuner.filter.SharedFilter, @NonNull android.media.tv.tuner.filter.FilterEvent[]);
8549    method public void onFilterStatusChanged(@NonNull android.media.tv.tuner.filter.SharedFilter, int);
8550  }
8551
8552  public class TemiEvent extends android.media.tv.tuner.filter.FilterEvent {
8553    method @NonNull public byte[] getDescriptorData();
8554    method public byte getDescriptorTag();
8555    method public long getPts();
8556  }
8557
8558  public class TimeFilter implements java.lang.AutoCloseable {
8559    method public int clearTimestamp();
8560    method public void close();
8561    method public long getSourceTime();
8562    method public long getTimeStamp();
8563    method public int setCurrentTimestamp(long);
8564  }
8565
8566  public final class TlvFilterConfiguration extends android.media.tv.tuner.filter.FilterConfiguration {
8567    method @NonNull public static android.media.tv.tuner.filter.TlvFilterConfiguration.Builder builder();
8568    method public int getPacketType();
8569    method public int getType();
8570    method public boolean isCompressedIpPacket();
8571    method public boolean isPassthrough();
8572    field public static final int PACKET_TYPE_COMPRESSED = 3; // 0x3
8573    field public static final int PACKET_TYPE_IPV4 = 1; // 0x1
8574    field public static final int PACKET_TYPE_IPV6 = 2; // 0x2
8575    field public static final int PACKET_TYPE_NULL = 255; // 0xff
8576    field public static final int PACKET_TYPE_SIGNALING = 254; // 0xfe
8577  }
8578
8579  public static final class TlvFilterConfiguration.Builder {
8580    method @NonNull public android.media.tv.tuner.filter.TlvFilterConfiguration build();
8581    method @NonNull public android.media.tv.tuner.filter.TlvFilterConfiguration.Builder setCompressedIpPacket(boolean);
8582    method @NonNull public android.media.tv.tuner.filter.TlvFilterConfiguration.Builder setPacketType(int);
8583    method @NonNull public android.media.tv.tuner.filter.TlvFilterConfiguration.Builder setPassthrough(boolean);
8584    method @NonNull public android.media.tv.tuner.filter.TlvFilterConfiguration.Builder setSettings(@Nullable android.media.tv.tuner.filter.Settings);
8585  }
8586
8587  public final class TsFilterConfiguration extends android.media.tv.tuner.filter.FilterConfiguration {
8588    method @NonNull public static android.media.tv.tuner.filter.TsFilterConfiguration.Builder builder();
8589    method public int getTpid();
8590    method public int getType();
8591  }
8592
8593  public static final class TsFilterConfiguration.Builder {
8594    method @NonNull public android.media.tv.tuner.filter.TsFilterConfiguration build();
8595    method @NonNull public android.media.tv.tuner.filter.TsFilterConfiguration.Builder setSettings(@Nullable android.media.tv.tuner.filter.Settings);
8596    method @NonNull public android.media.tv.tuner.filter.TsFilterConfiguration.Builder setTpid(int);
8597  }
8598
8599  public class TsRecordEvent extends android.media.tv.tuner.filter.FilterEvent {
8600    method public long getDataLength();
8601    method public int getFirstMacroblockInSlice();
8602    method public int getPacketId();
8603    method public long getPts();
8604    method public int getScIndexMask();
8605    method public int getTsIndexMask();
8606  }
8607
8608}
8609
8610package android.media.tv.tuner.frontend {
8611
8612  public class AnalogFrontendCapabilities extends android.media.tv.tuner.frontend.FrontendCapabilities {
8613    method public int getSifStandardCapability();
8614    method public int getSignalTypeCapability();
8615  }
8616
8617  public class AnalogFrontendSettings extends android.media.tv.tuner.frontend.FrontendSettings {
8618    method @NonNull public static android.media.tv.tuner.frontend.AnalogFrontendSettings.Builder builder();
8619    method public int getAftFlag();
8620    method public int getSifStandard();
8621    method public int getSignalType();
8622    method public int getType();
8623    field public static final int AFT_FLAG_FALSE = 2; // 0x2
8624    field public static final int AFT_FLAG_TRUE = 1; // 0x1
8625    field public static final int AFT_FLAG_UNDEFINED = 0; // 0x0
8626    field public static final int SIF_AUTO = 1; // 0x1
8627    field public static final int SIF_BG = 2; // 0x2
8628    field public static final int SIF_BG_A2 = 4; // 0x4
8629    field public static final int SIF_BG_NICAM = 8; // 0x8
8630    field public static final int SIF_DK = 32; // 0x20
8631    field public static final int SIF_DK1_A2 = 64; // 0x40
8632    field public static final int SIF_DK2_A2 = 128; // 0x80
8633    field public static final int SIF_DK3_A2 = 256; // 0x100
8634    field public static final int SIF_DK_NICAM = 512; // 0x200
8635    field public static final int SIF_I = 16; // 0x10
8636    field public static final int SIF_I_NICAM = 32768; // 0x8000
8637    field public static final int SIF_L = 1024; // 0x400
8638    field public static final int SIF_L_NICAM = 65536; // 0x10000
8639    field public static final int SIF_L_PRIME = 131072; // 0x20000
8640    field public static final int SIF_M = 2048; // 0x800
8641    field public static final int SIF_M_A2 = 8192; // 0x2000
8642    field public static final int SIF_M_BTSC = 4096; // 0x1000
8643    field public static final int SIF_M_EIAJ = 16384; // 0x4000
8644    field public static final int SIF_UNDEFINED = 0; // 0x0
8645    field public static final int SIGNAL_TYPE_AUTO = 1; // 0x1
8646    field public static final int SIGNAL_TYPE_NTSC = 32; // 0x20
8647    field public static final int SIGNAL_TYPE_NTSC_443 = 64; // 0x40
8648    field public static final int SIGNAL_TYPE_PAL = 2; // 0x2
8649    field public static final int SIGNAL_TYPE_PAL_60 = 16; // 0x10
8650    field public static final int SIGNAL_TYPE_PAL_M = 4; // 0x4
8651    field public static final int SIGNAL_TYPE_PAL_N = 8; // 0x8
8652    field public static final int SIGNAL_TYPE_SECAM = 128; // 0x80
8653    field public static final int SIGNAL_TYPE_UNDEFINED = 0; // 0x0
8654  }
8655
8656  public static class AnalogFrontendSettings.Builder {
8657    method @NonNull public android.media.tv.tuner.frontend.AnalogFrontendSettings build();
8658    method @NonNull public android.media.tv.tuner.frontend.AnalogFrontendSettings.Builder setAftFlag(int);
8659    method @Deprecated @IntRange(from=1) @NonNull public android.media.tv.tuner.frontend.AnalogFrontendSettings.Builder setFrequency(int);
8660    method @IntRange(from=1) @NonNull public android.media.tv.tuner.frontend.AnalogFrontendSettings.Builder setFrequencyLong(long);
8661    method @NonNull public android.media.tv.tuner.frontend.AnalogFrontendSettings.Builder setSifStandard(int);
8662    method @NonNull public android.media.tv.tuner.frontend.AnalogFrontendSettings.Builder setSignalType(int);
8663  }
8664
8665  public class Atsc3FrontendCapabilities extends android.media.tv.tuner.frontend.FrontendCapabilities {
8666    method public int getBandwidthCapability();
8667    method public int getDemodOutputFormatCapability();
8668    method public int getFecCapability();
8669    method public int getModulationCapability();
8670    method public int getPlpCodeRateCapability();
8671    method public int getTimeInterleaveModeCapability();
8672  }
8673
8674  public class Atsc3FrontendSettings extends android.media.tv.tuner.frontend.FrontendSettings {
8675    method @NonNull public static android.media.tv.tuner.frontend.Atsc3FrontendSettings.Builder builder();
8676    method public int getBandwidth();
8677    method public int getDemodOutputFormat();
8678    method @NonNull public android.media.tv.tuner.frontend.Atsc3PlpSettings[] getPlpSettings();
8679    method public int getType();
8680    field public static final int BANDWIDTH_AUTO = 1; // 0x1
8681    field public static final int BANDWIDTH_BANDWIDTH_6MHZ = 2; // 0x2
8682    field public static final int BANDWIDTH_BANDWIDTH_7MHZ = 4; // 0x4
8683    field public static final int BANDWIDTH_BANDWIDTH_8MHZ = 8; // 0x8
8684    field public static final int BANDWIDTH_UNDEFINED = 0; // 0x0
8685    field public static final int CODERATE_10_15 = 512; // 0x200
8686    field public static final int CODERATE_11_15 = 1024; // 0x400
8687    field public static final int CODERATE_12_15 = 2048; // 0x800
8688    field public static final int CODERATE_13_15 = 4096; // 0x1000
8689    field public static final int CODERATE_2_15 = 2; // 0x2
8690    field public static final int CODERATE_3_15 = 4; // 0x4
8691    field public static final int CODERATE_4_15 = 8; // 0x8
8692    field public static final int CODERATE_5_15 = 16; // 0x10
8693    field public static final int CODERATE_6_15 = 32; // 0x20
8694    field public static final int CODERATE_7_15 = 64; // 0x40
8695    field public static final int CODERATE_8_15 = 128; // 0x80
8696    field public static final int CODERATE_9_15 = 256; // 0x100
8697    field public static final int CODERATE_AUTO = 1; // 0x1
8698    field public static final int CODERATE_UNDEFINED = 0; // 0x0
8699    field public static final int DEMOD_OUTPUT_FORMAT_ATSC3_LINKLAYER_PACKET = 1; // 0x1
8700    field public static final int DEMOD_OUTPUT_FORMAT_BASEBAND_PACKET = 2; // 0x2
8701    field public static final int DEMOD_OUTPUT_FORMAT_UNDEFINED = 0; // 0x0
8702    field public static final int FEC_AUTO = 1; // 0x1
8703    field public static final int FEC_BCH_LDPC_16K = 2; // 0x2
8704    field public static final int FEC_BCH_LDPC_64K = 4; // 0x4
8705    field public static final int FEC_CRC_LDPC_16K = 8; // 0x8
8706    field public static final int FEC_CRC_LDPC_64K = 16; // 0x10
8707    field public static final int FEC_LDPC_16K = 32; // 0x20
8708    field public static final int FEC_LDPC_64K = 64; // 0x40
8709    field public static final int FEC_UNDEFINED = 0; // 0x0
8710    field public static final int MODULATION_AUTO = 1; // 0x1
8711    field public static final int MODULATION_MOD_1024QAM = 32; // 0x20
8712    field public static final int MODULATION_MOD_16QAM = 4; // 0x4
8713    field public static final int MODULATION_MOD_256QAM = 16; // 0x10
8714    field public static final int MODULATION_MOD_4096QAM = 64; // 0x40
8715    field public static final int MODULATION_MOD_64QAM = 8; // 0x8
8716    field public static final int MODULATION_MOD_QPSK = 2; // 0x2
8717    field public static final int MODULATION_UNDEFINED = 0; // 0x0
8718    field public static final int TIME_INTERLEAVE_MODE_AUTO = 1; // 0x1
8719    field public static final int TIME_INTERLEAVE_MODE_CTI = 2; // 0x2
8720    field public static final int TIME_INTERLEAVE_MODE_HTI = 4; // 0x4
8721    field public static final int TIME_INTERLEAVE_MODE_UNDEFINED = 0; // 0x0
8722  }
8723
8724  public static class Atsc3FrontendSettings.Builder {
8725    method @NonNull public android.media.tv.tuner.frontend.Atsc3FrontendSettings build();
8726    method @NonNull public android.media.tv.tuner.frontend.Atsc3FrontendSettings.Builder setBandwidth(int);
8727    method @NonNull public android.media.tv.tuner.frontend.Atsc3FrontendSettings.Builder setDemodOutputFormat(int);
8728    method @Deprecated @IntRange(from=1) @NonNull public android.media.tv.tuner.frontend.Atsc3FrontendSettings.Builder setFrequency(int);
8729    method @IntRange(from=1) @NonNull public android.media.tv.tuner.frontend.Atsc3FrontendSettings.Builder setFrequencyLong(long);
8730    method @NonNull public android.media.tv.tuner.frontend.Atsc3FrontendSettings.Builder setPlpSettings(@NonNull android.media.tv.tuner.frontend.Atsc3PlpSettings[]);
8731  }
8732
8733  public class Atsc3PlpInfo {
8734    method public boolean getLlsFlag();
8735    method public int getPlpId();
8736  }
8737
8738  public class Atsc3PlpSettings {
8739    method @NonNull public static android.media.tv.tuner.frontend.Atsc3PlpSettings.Builder builder();
8740    method public int getCodeRate();
8741    method public int getFec();
8742    method public int getInterleaveMode();
8743    method public int getModulation();
8744    method public int getPlpId();
8745  }
8746
8747  public static class Atsc3PlpSettings.Builder {
8748    method @NonNull public android.media.tv.tuner.frontend.Atsc3PlpSettings build();
8749    method @NonNull public android.media.tv.tuner.frontend.Atsc3PlpSettings.Builder setCodeRate(int);
8750    method @NonNull public android.media.tv.tuner.frontend.Atsc3PlpSettings.Builder setFec(int);
8751    method @NonNull public android.media.tv.tuner.frontend.Atsc3PlpSettings.Builder setInterleaveMode(int);
8752    method @NonNull public android.media.tv.tuner.frontend.Atsc3PlpSettings.Builder setModulation(int);
8753    method @NonNull public android.media.tv.tuner.frontend.Atsc3PlpSettings.Builder setPlpId(int);
8754  }
8755
8756  public class AtscFrontendCapabilities extends android.media.tv.tuner.frontend.FrontendCapabilities {
8757    method public int getModulationCapability();
8758  }
8759
8760  public class AtscFrontendSettings extends android.media.tv.tuner.frontend.FrontendSettings {
8761    method @NonNull public static android.media.tv.tuner.frontend.AtscFrontendSettings.Builder builder();
8762    method public int getModulation();
8763    method public int getType();
8764    field public static final int MODULATION_AUTO = 1; // 0x1
8765    field public static final int MODULATION_MOD_16VSB = 8; // 0x8
8766    field public static final int MODULATION_MOD_8VSB = 4; // 0x4
8767    field public static final int MODULATION_UNDEFINED = 0; // 0x0
8768  }
8769
8770  public static class AtscFrontendSettings.Builder {
8771    method @NonNull public android.media.tv.tuner.frontend.AtscFrontendSettings build();
8772    method @Deprecated @IntRange(from=1) @NonNull public android.media.tv.tuner.frontend.AtscFrontendSettings.Builder setFrequency(int);
8773    method @IntRange(from=1) @NonNull public android.media.tv.tuner.frontend.AtscFrontendSettings.Builder setFrequencyLong(long);
8774    method @NonNull public android.media.tv.tuner.frontend.AtscFrontendSettings.Builder setModulation(int);
8775  }
8776
8777  public final class DtmbFrontendCapabilities extends android.media.tv.tuner.frontend.FrontendCapabilities {
8778    method public int getBandwidthCapability();
8779    method public int getCodeRateCapability();
8780    method public int getGuardIntervalCapability();
8781    method public int getModulationCapability();
8782    method public int getTimeInterleaveModeCapability();
8783    method public int getTransmissionModeCapability();
8784  }
8785
8786  public final class DtmbFrontendSettings extends android.media.tv.tuner.frontend.FrontendSettings {
8787    method @NonNull public static android.media.tv.tuner.frontend.DtmbFrontendSettings.Builder builder();
8788    method public int getBandwidth();
8789    method public int getCodeRate();
8790    method public int getGuardInterval();
8791    method public int getModulation();
8792    method public int getTimeInterleaveMode();
8793    method public int getTransmissionMode();
8794    method public int getType();
8795    field public static final int BANDWIDTH_6MHZ = 4; // 0x4
8796    field public static final int BANDWIDTH_8MHZ = 2; // 0x2
8797    field public static final int BANDWIDTH_AUTO = 1; // 0x1
8798    field public static final int BANDWIDTH_UNDEFINED = 0; // 0x0
8799    field public static final int CODERATE_2_5 = 2; // 0x2
8800    field public static final int CODERATE_3_5 = 4; // 0x4
8801    field public static final int CODERATE_4_5 = 8; // 0x8
8802    field public static final int CODERATE_AUTO = 1; // 0x1
8803    field public static final int CODERATE_UNDEFINED = 0; // 0x0
8804    field public static final int GUARD_INTERVAL_AUTO = 1; // 0x1
8805    field public static final int GUARD_INTERVAL_PN_420_CONST = 16; // 0x10
8806    field public static final int GUARD_INTERVAL_PN_420_VARIOUS = 2; // 0x2
8807    field public static final int GUARD_INTERVAL_PN_595_CONST = 4; // 0x4
8808    field public static final int GUARD_INTERVAL_PN_945_CONST = 32; // 0x20
8809    field public static final int GUARD_INTERVAL_PN_945_VARIOUS = 8; // 0x8
8810    field public static final int GUARD_INTERVAL_PN_RESERVED = 64; // 0x40
8811    field public static final int GUARD_INTERVAL_UNDEFINED = 0; // 0x0
8812    field public static final int MODULATION_CONSTELLATION_16QAM = 8; // 0x8
8813    field public static final int MODULATION_CONSTELLATION_32QAM = 16; // 0x10
8814    field public static final int MODULATION_CONSTELLATION_4QAM = 2; // 0x2
8815    field public static final int MODULATION_CONSTELLATION_4QAM_NR = 4; // 0x4
8816    field public static final int MODULATION_CONSTELLATION_64QAM = 32; // 0x20
8817    field public static final int MODULATION_CONSTELLATION_AUTO = 1; // 0x1
8818    field public static final int MODULATION_CONSTELLATION_UNDEFINED = 0; // 0x0
8819    field public static final int TIME_INTERLEAVE_MODE_AUTO = 1; // 0x1
8820    field public static final int TIME_INTERLEAVE_MODE_TIMER_INT_240 = 2; // 0x2
8821    field public static final int TIME_INTERLEAVE_MODE_TIMER_INT_720 = 4; // 0x4
8822    field public static final int TIME_INTERLEAVE_MODE_UNDEFINED = 0; // 0x0
8823    field public static final int TRANSMISSION_MODE_AUTO = 1; // 0x1
8824    field public static final int TRANSMISSION_MODE_C1 = 2; // 0x2
8825    field public static final int TRANSMISSION_MODE_C3780 = 4; // 0x4
8826    field public static final int TRANSMISSION_MODE_UNDEFINED = 0; // 0x0
8827  }
8828
8829  public static final class DtmbFrontendSettings.Builder {
8830    method @NonNull public android.media.tv.tuner.frontend.DtmbFrontendSettings build();
8831    method @NonNull public android.media.tv.tuner.frontend.DtmbFrontendSettings.Builder setBandwidth(int);
8832    method @NonNull public android.media.tv.tuner.frontend.DtmbFrontendSettings.Builder setCodeRate(int);
8833    method @Deprecated @IntRange(from=1) @NonNull public android.media.tv.tuner.frontend.DtmbFrontendSettings.Builder setFrequency(int);
8834    method @IntRange(from=1) @NonNull public android.media.tv.tuner.frontend.DtmbFrontendSettings.Builder setFrequencyLong(long);
8835    method @NonNull public android.media.tv.tuner.frontend.DtmbFrontendSettings.Builder setGuardInterval(int);
8836    method @NonNull public android.media.tv.tuner.frontend.DtmbFrontendSettings.Builder setModulation(int);
8837    method @NonNull public android.media.tv.tuner.frontend.DtmbFrontendSettings.Builder setTimeInterleaveMode(int);
8838    method @NonNull public android.media.tv.tuner.frontend.DtmbFrontendSettings.Builder setTransmissionMode(int);
8839  }
8840
8841  public class DvbcFrontendCapabilities extends android.media.tv.tuner.frontend.FrontendCapabilities {
8842    method public int getAnnexCapability();
8843    method public long getCodeRateCapability();
8844    method @Deprecated public int getFecCapability();
8845    method public int getModulationCapability();
8846  }
8847
8848  public class DvbcFrontendSettings extends android.media.tv.tuner.frontend.FrontendSettings {
8849    method @NonNull public static android.media.tv.tuner.frontend.DvbcFrontendSettings.Builder builder();
8850    method public int getAnnex();
8851    method public int getBandwidth();
8852    method public long getInnerFec();
8853    method public int getModulation();
8854    method public int getOuterFec();
8855    method public int getSpectralInversion();
8856    method public int getSymbolRate();
8857    method public int getTimeInterleaveMode();
8858    method public int getType();
8859    field public static final int ANNEX_A = 1; // 0x1
8860    field public static final int ANNEX_B = 2; // 0x2
8861    field public static final int ANNEX_C = 4; // 0x4
8862    field public static final int ANNEX_UNDEFINED = 0; // 0x0
8863    field public static final int BANDWIDTH_5MHZ = 1; // 0x1
8864    field public static final int BANDWIDTH_6MHZ = 2; // 0x2
8865    field public static final int BANDWIDTH_7MHZ = 4; // 0x4
8866    field public static final int BANDWIDTH_8MHZ = 8; // 0x8
8867    field public static final int BANDWIDTH_UNDEFINED = 0; // 0x0
8868    field public static final int MODULATION_AUTO = 1; // 0x1
8869    field public static final int MODULATION_MOD_128QAM = 16; // 0x10
8870    field public static final int MODULATION_MOD_16QAM = 2; // 0x2
8871    field public static final int MODULATION_MOD_256QAM = 32; // 0x20
8872    field public static final int MODULATION_MOD_32QAM = 4; // 0x4
8873    field public static final int MODULATION_MOD_64QAM = 8; // 0x8
8874    field public static final int MODULATION_UNDEFINED = 0; // 0x0
8875    field public static final int OUTER_FEC_OUTER_FEC_NONE = 1; // 0x1
8876    field public static final int OUTER_FEC_OUTER_FEC_RS = 2; // 0x2
8877    field public static final int OUTER_FEC_UNDEFINED = 0; // 0x0
8878    field @Deprecated public static final int SPECTRAL_INVERSION_INVERTED = 2; // 0x2
8879    field @Deprecated public static final int SPECTRAL_INVERSION_NORMAL = 1; // 0x1
8880    field @Deprecated public static final int SPECTRAL_INVERSION_UNDEFINED = 0; // 0x0
8881    field public static final int TIME_INTERLEAVE_MODE_128_1_0 = 2; // 0x2
8882    field public static final int TIME_INTERLEAVE_MODE_128_1_1 = 4; // 0x4
8883    field public static final int TIME_INTERLEAVE_MODE_128_2 = 128; // 0x80
8884    field public static final int TIME_INTERLEAVE_MODE_128_3 = 256; // 0x100
8885    field public static final int TIME_INTERLEAVE_MODE_128_4 = 512; // 0x200
8886    field public static final int TIME_INTERLEAVE_MODE_16_8 = 32; // 0x20
8887    field public static final int TIME_INTERLEAVE_MODE_32_4 = 16; // 0x10
8888    field public static final int TIME_INTERLEAVE_MODE_64_2 = 8; // 0x8
8889    field public static final int TIME_INTERLEAVE_MODE_8_16 = 64; // 0x40
8890    field public static final int TIME_INTERLEAVE_MODE_AUTO = 1; // 0x1
8891    field public static final int TIME_INTERLEAVE_MODE_UNDEFINED = 0; // 0x0
8892  }
8893
8894  public static class DvbcFrontendSettings.Builder {
8895    method @NonNull public android.media.tv.tuner.frontend.DvbcFrontendSettings build();
8896    method @NonNull public android.media.tv.tuner.frontend.DvbcFrontendSettings.Builder setAnnex(int);
8897    method @NonNull public android.media.tv.tuner.frontend.DvbcFrontendSettings.Builder setBandwidth(int);
8898    method @Deprecated @IntRange(from=1) @NonNull public android.media.tv.tuner.frontend.DvbcFrontendSettings.Builder setFrequency(int);
8899    method @IntRange(from=1) @NonNull public android.media.tv.tuner.frontend.DvbcFrontendSettings.Builder setFrequencyLong(long);
8900    method @NonNull public android.media.tv.tuner.frontend.DvbcFrontendSettings.Builder setInnerFec(long);
8901    method @NonNull public android.media.tv.tuner.frontend.DvbcFrontendSettings.Builder setModulation(int);
8902    method @NonNull public android.media.tv.tuner.frontend.DvbcFrontendSettings.Builder setOuterFec(int);
8903    method @NonNull public android.media.tv.tuner.frontend.DvbcFrontendSettings.Builder setSpectralInversion(int);
8904    method @NonNull public android.media.tv.tuner.frontend.DvbcFrontendSettings.Builder setSymbolRate(int);
8905    method @NonNull public android.media.tv.tuner.frontend.DvbcFrontendSettings.Builder setTimeInterleaveMode(int);
8906  }
8907
8908  public class DvbsCodeRate {
8909    method @NonNull public static android.media.tv.tuner.frontend.DvbsCodeRate.Builder builder();
8910    method public int getBitsPer1000Symbol();
8911    method public long getInnerFec();
8912    method public boolean isLinear();
8913    method public boolean isShortFrameEnabled();
8914  }
8915
8916  public static class DvbsCodeRate.Builder {
8917    method @NonNull public android.media.tv.tuner.frontend.DvbsCodeRate build();
8918    method @NonNull public android.media.tv.tuner.frontend.DvbsCodeRate.Builder setBitsPer1000Symbol(int);
8919    method @NonNull public android.media.tv.tuner.frontend.DvbsCodeRate.Builder setInnerFec(long);
8920    method @NonNull public android.media.tv.tuner.frontend.DvbsCodeRate.Builder setLinear(boolean);
8921    method @NonNull public android.media.tv.tuner.frontend.DvbsCodeRate.Builder setShortFrameEnabled(boolean);
8922  }
8923
8924  public class DvbsFrontendCapabilities extends android.media.tv.tuner.frontend.FrontendCapabilities {
8925    method public long getInnerFecCapability();
8926    method public int getModulationCapability();
8927    method public int getStandardCapability();
8928  }
8929
8930  public class DvbsFrontendSettings extends android.media.tv.tuner.frontend.FrontendSettings {
8931    method @NonNull public static android.media.tv.tuner.frontend.DvbsFrontendSettings.Builder builder();
8932    method public boolean canHandleDiseqcRxMessage();
8933    method @Nullable public android.media.tv.tuner.frontend.DvbsCodeRate getCodeRate();
8934    method public int getInputStreamId();
8935    method public int getModulation();
8936    method public int getPilot();
8937    method public int getRolloff();
8938    method public int getScanType();
8939    method public int getStandard();
8940    method public int getSymbolRate();
8941    method public int getType();
8942    method public int getVcmMode();
8943    field public static final int MODULATION_AUTO = 1; // 0x1
8944    field public static final int MODULATION_MOD_128APSK = 2048; // 0x800
8945    field public static final int MODULATION_MOD_16APSK = 256; // 0x100
8946    field public static final int MODULATION_MOD_16PSK = 16; // 0x10
8947    field public static final int MODULATION_MOD_16QAM = 8; // 0x8
8948    field public static final int MODULATION_MOD_256APSK = 4096; // 0x1000
8949    field public static final int MODULATION_MOD_32APSK = 512; // 0x200
8950    field public static final int MODULATION_MOD_32PSK = 32; // 0x20
8951    field public static final int MODULATION_MOD_64APSK = 1024; // 0x400
8952    field public static final int MODULATION_MOD_8APSK = 128; // 0x80
8953    field public static final int MODULATION_MOD_8PSK = 4; // 0x4
8954    field public static final int MODULATION_MOD_ACM = 64; // 0x40
8955    field public static final int MODULATION_MOD_QPSK = 2; // 0x2
8956    field public static final int MODULATION_MOD_RESERVED = 8192; // 0x2000
8957    field public static final int MODULATION_UNDEFINED = 0; // 0x0
8958    field public static final int PILOT_AUTO = 3; // 0x3
8959    field public static final int PILOT_OFF = 2; // 0x2
8960    field public static final int PILOT_ON = 1; // 0x1
8961    field public static final int PILOT_UNDEFINED = 0; // 0x0
8962    field public static final int ROLLOFF_0_10 = 5; // 0x5
8963    field public static final int ROLLOFF_0_15 = 4; // 0x4
8964    field public static final int ROLLOFF_0_20 = 3; // 0x3
8965    field public static final int ROLLOFF_0_25 = 2; // 0x2
8966    field public static final int ROLLOFF_0_35 = 1; // 0x1
8967    field public static final int ROLLOFF_0_5 = 6; // 0x6
8968    field public static final int ROLLOFF_UNDEFINED = 0; // 0x0
8969    field public static final int SCAN_TYPE_DIRECT = 1; // 0x1
8970    field public static final int SCAN_TYPE_DISEQC = 2; // 0x2
8971    field public static final int SCAN_TYPE_JESS = 4; // 0x4
8972    field public static final int SCAN_TYPE_UNDEFINED = 0; // 0x0
8973    field public static final int SCAN_TYPE_UNICABLE = 3; // 0x3
8974    field public static final int STANDARD_AUTO = 1; // 0x1
8975    field public static final int STANDARD_S = 2; // 0x2
8976    field public static final int STANDARD_S2 = 4; // 0x4
8977    field public static final int STANDARD_S2X = 8; // 0x8
8978    field public static final int VCM_MODE_AUTO = 1; // 0x1
8979    field public static final int VCM_MODE_MANUAL = 2; // 0x2
8980    field public static final int VCM_MODE_UNDEFINED = 0; // 0x0
8981  }
8982
8983  public static class DvbsFrontendSettings.Builder {
8984    method @NonNull public android.media.tv.tuner.frontend.DvbsFrontendSettings build();
8985    method @NonNull public android.media.tv.tuner.frontend.DvbsFrontendSettings.Builder setCanHandleDiseqcRxMessage(boolean);
8986    method @NonNull public android.media.tv.tuner.frontend.DvbsFrontendSettings.Builder setCodeRate(@Nullable android.media.tv.tuner.frontend.DvbsCodeRate);
8987    method @Deprecated @IntRange(from=1) @NonNull public android.media.tv.tuner.frontend.DvbsFrontendSettings.Builder setFrequency(int);
8988    method @IntRange(from=1) @NonNull public android.media.tv.tuner.frontend.DvbsFrontendSettings.Builder setFrequencyLong(long);
8989    method @NonNull public android.media.tv.tuner.frontend.DvbsFrontendSettings.Builder setInputStreamId(int);
8990    method @NonNull public android.media.tv.tuner.frontend.DvbsFrontendSettings.Builder setModulation(int);
8991    method @NonNull public android.media.tv.tuner.frontend.DvbsFrontendSettings.Builder setPilot(int);
8992    method @NonNull public android.media.tv.tuner.frontend.DvbsFrontendSettings.Builder setRolloff(int);
8993    method @NonNull public android.media.tv.tuner.frontend.DvbsFrontendSettings.Builder setScanType(int);
8994    method @NonNull public android.media.tv.tuner.frontend.DvbsFrontendSettings.Builder setStandard(int);
8995    method @NonNull public android.media.tv.tuner.frontend.DvbsFrontendSettings.Builder setSymbolRate(int);
8996    method @NonNull public android.media.tv.tuner.frontend.DvbsFrontendSettings.Builder setVcmMode(int);
8997  }
8998
8999  public class DvbtFrontendCapabilities extends android.media.tv.tuner.frontend.FrontendCapabilities {
9000    method public int getBandwidthCapability();
9001    method public int getCodeRateCapability();
9002    method public int getConstellationCapability();
9003    method public int getGuardIntervalCapability();
9004    method public int getHierarchyCapability();
9005    method public int getTransmissionModeCapability();
9006    method public boolean isMisoSupported();
9007    method public boolean isT2Supported();
9008  }
9009
9010  public class DvbtFrontendSettings extends android.media.tv.tuner.frontend.FrontendSettings {
9011    method @NonNull public static android.media.tv.tuner.frontend.DvbtFrontendSettings.Builder builder();
9012    method public int getBandwidth();
9013    method public int getConstellation();
9014    method public int getGuardInterval();
9015    method public int getHierarchy();
9016    method public int getHighPriorityCodeRate();
9017    method public int getLowPriorityCodeRate();
9018    method public int getPlpGroupId();
9019    method public int getPlpId();
9020    method public int getPlpMode();
9021    method public int getStandard();
9022    method public int getTransmissionMode();
9023    method public int getType();
9024    method public boolean isHighPriority();
9025    method public boolean isMiso();
9026    field public static final int BANDWIDTH_10MHZ = 64; // 0x40
9027    field public static final int BANDWIDTH_1_7MHZ = 32; // 0x20
9028    field public static final int BANDWIDTH_5MHZ = 16; // 0x10
9029    field public static final int BANDWIDTH_6MHZ = 8; // 0x8
9030    field public static final int BANDWIDTH_7MHZ = 4; // 0x4
9031    field public static final int BANDWIDTH_8MHZ = 2; // 0x2
9032    field public static final int BANDWIDTH_AUTO = 1; // 0x1
9033    field public static final int BANDWIDTH_UNDEFINED = 0; // 0x0
9034    field public static final int CODERATE_1_2 = 2; // 0x2
9035    field public static final int CODERATE_2_3 = 4; // 0x4
9036    field public static final int CODERATE_3_4 = 8; // 0x8
9037    field public static final int CODERATE_3_5 = 64; // 0x40
9038    field public static final int CODERATE_4_5 = 128; // 0x80
9039    field public static final int CODERATE_5_6 = 16; // 0x10
9040    field public static final int CODERATE_6_7 = 256; // 0x100
9041    field public static final int CODERATE_7_8 = 32; // 0x20
9042    field public static final int CODERATE_8_9 = 512; // 0x200
9043    field public static final int CODERATE_AUTO = 1; // 0x1
9044    field public static final int CODERATE_UNDEFINED = 0; // 0x0
9045    field public static final int CONSTELLATION_16QAM = 4; // 0x4
9046    field public static final int CONSTELLATION_16QAM_R = 64; // 0x40
9047    field public static final int CONSTELLATION_256QAM = 16; // 0x10
9048    field public static final int CONSTELLATION_256QAM_R = 256; // 0x100
9049    field public static final int CONSTELLATION_64QAM = 8; // 0x8
9050    field public static final int CONSTELLATION_64QAM_R = 128; // 0x80
9051    field public static final int CONSTELLATION_AUTO = 1; // 0x1
9052    field public static final int CONSTELLATION_QPSK = 2; // 0x2
9053    field public static final int CONSTELLATION_QPSK_R = 32; // 0x20
9054    field public static final int CONSTELLATION_UNDEFINED = 0; // 0x0
9055    field public static final int GUARD_INTERVAL_19_128 = 64; // 0x40
9056    field public static final int GUARD_INTERVAL_19_256 = 128; // 0x80
9057    field public static final int GUARD_INTERVAL_1_128 = 32; // 0x20
9058    field public static final int GUARD_INTERVAL_1_16 = 4; // 0x4
9059    field public static final int GUARD_INTERVAL_1_32 = 2; // 0x2
9060    field public static final int GUARD_INTERVAL_1_4 = 16; // 0x10
9061    field public static final int GUARD_INTERVAL_1_8 = 8; // 0x8
9062    field public static final int GUARD_INTERVAL_AUTO = 1; // 0x1
9063    field public static final int GUARD_INTERVAL_UNDEFINED = 0; // 0x0
9064    field public static final int HIERARCHY_1_INDEPTH = 64; // 0x40
9065    field public static final int HIERARCHY_1_NATIVE = 4; // 0x4
9066    field public static final int HIERARCHY_2_INDEPTH = 128; // 0x80
9067    field public static final int HIERARCHY_2_NATIVE = 8; // 0x8
9068    field public static final int HIERARCHY_4_INDEPTH = 256; // 0x100
9069    field public static final int HIERARCHY_4_NATIVE = 16; // 0x10
9070    field public static final int HIERARCHY_AUTO = 1; // 0x1
9071    field public static final int HIERARCHY_NON_INDEPTH = 32; // 0x20
9072    field public static final int HIERARCHY_NON_NATIVE = 2; // 0x2
9073    field public static final int HIERARCHY_UNDEFINED = 0; // 0x0
9074    field public static final int PLP_MODE_AUTO = 1; // 0x1
9075    field public static final int PLP_MODE_MANUAL = 2; // 0x2
9076    field public static final int PLP_MODE_UNDEFINED = 0; // 0x0
9077    field public static final int STANDARD_AUTO = 1; // 0x1
9078    field public static final int STANDARD_T = 2; // 0x2
9079    field public static final int STANDARD_T2 = 4; // 0x4
9080    field public static final int TRANSMISSION_MODE_16K = 32; // 0x20
9081    field public static final int TRANSMISSION_MODE_1K = 16; // 0x10
9082    field public static final int TRANSMISSION_MODE_2K = 2; // 0x2
9083    field public static final int TRANSMISSION_MODE_32K = 64; // 0x40
9084    field public static final int TRANSMISSION_MODE_4K = 8; // 0x8
9085    field public static final int TRANSMISSION_MODE_8K = 4; // 0x4
9086    field public static final int TRANSMISSION_MODE_AUTO = 1; // 0x1
9087    field public static final int TRANSMISSION_MODE_EXTENDED_16K = 256; // 0x100
9088    field public static final int TRANSMISSION_MODE_EXTENDED_32K = 512; // 0x200
9089    field public static final int TRANSMISSION_MODE_EXTENDED_8K = 128; // 0x80
9090    field public static final int TRANSMISSION_MODE_UNDEFINED = 0; // 0x0
9091  }
9092
9093  public static class DvbtFrontendSettings.Builder {
9094    method @NonNull public android.media.tv.tuner.frontend.DvbtFrontendSettings build();
9095    method @NonNull public android.media.tv.tuner.frontend.DvbtFrontendSettings.Builder setBandwidth(int);
9096    method @NonNull public android.media.tv.tuner.frontend.DvbtFrontendSettings.Builder setConstellation(int);
9097    method @Deprecated @IntRange(from=1) @NonNull public android.media.tv.tuner.frontend.DvbtFrontendSettings.Builder setFrequency(int);
9098    method @IntRange(from=1) @NonNull public android.media.tv.tuner.frontend.DvbtFrontendSettings.Builder setFrequencyLong(long);
9099    method @NonNull public android.media.tv.tuner.frontend.DvbtFrontendSettings.Builder setGuardInterval(int);
9100    method @NonNull public android.media.tv.tuner.frontend.DvbtFrontendSettings.Builder setHierarchy(int);
9101    method @NonNull public android.media.tv.tuner.frontend.DvbtFrontendSettings.Builder setHighPriority(boolean);
9102    method @NonNull public android.media.tv.tuner.frontend.DvbtFrontendSettings.Builder setHighPriorityCodeRate(int);
9103    method @NonNull public android.media.tv.tuner.frontend.DvbtFrontendSettings.Builder setLowPriorityCodeRate(int);
9104    method @NonNull public android.media.tv.tuner.frontend.DvbtFrontendSettings.Builder setMiso(boolean);
9105    method @NonNull public android.media.tv.tuner.frontend.DvbtFrontendSettings.Builder setPlpGroupId(int);
9106    method @NonNull public android.media.tv.tuner.frontend.DvbtFrontendSettings.Builder setPlpId(int);
9107    method @NonNull public android.media.tv.tuner.frontend.DvbtFrontendSettings.Builder setPlpMode(int);
9108    method @NonNull public android.media.tv.tuner.frontend.DvbtFrontendSettings.Builder setStandard(int);
9109    method @NonNull public android.media.tv.tuner.frontend.DvbtFrontendSettings.Builder setTransmissionMode(int);
9110  }
9111
9112  public abstract class FrontendCapabilities {
9113    ctor public FrontendCapabilities();
9114  }
9115
9116  public class FrontendInfo {
9117    method @Deprecated public int getAcquireRange();
9118    method public long getAcquireRangeLong();
9119    method public int getExclusiveGroupId();
9120    method @Deprecated @NonNull public android.util.Range<java.lang.Integer> getFrequencyRange();
9121    method @NonNull public android.util.Range<java.lang.Long> getFrequencyRangeLong();
9122    method @NonNull public android.media.tv.tuner.frontend.FrontendCapabilities getFrontendCapabilities();
9123    method public int getId();
9124    method @NonNull public int[] getStatusCapabilities();
9125    method @NonNull public android.util.Range<java.lang.Integer> getSymbolRateRange();
9126    method public int getType();
9127  }
9128
9129  public abstract class FrontendSettings {
9130    method @Deprecated @IntRange(from=1) public int getEndFrequency();
9131    method @IntRange(from=1) public long getEndFrequencyLong();
9132    method @Deprecated public int getFrequency();
9133    method public long getFrequencyLong();
9134    method public int getFrontendSpectralInversion();
9135    method public abstract int getType();
9136    method @Deprecated @IntRange(from=1) public void setEndFrequency(int);
9137    method @IntRange(from=1) public void setEndFrequencyLong(long);
9138    method public void setSpectralInversion(int);
9139    field public static final long FEC_11_15 = 4194304L; // 0x400000L
9140    field public static final long FEC_11_20 = 8388608L; // 0x800000L
9141    field public static final long FEC_11_45 = 16777216L; // 0x1000000L
9142    field public static final long FEC_13_18 = 33554432L; // 0x2000000L
9143    field public static final long FEC_13_45 = 67108864L; // 0x4000000L
9144    field public static final long FEC_14_45 = 134217728L; // 0x8000000L
9145    field public static final long FEC_1_2 = 2L; // 0x2L
9146    field public static final long FEC_1_3 = 4L; // 0x4L
9147    field public static final long FEC_1_4 = 8L; // 0x8L
9148    field public static final long FEC_1_5 = 16L; // 0x10L
9149    field public static final long FEC_23_36 = 268435456L; // 0x10000000L
9150    field public static final long FEC_25_36 = 536870912L; // 0x20000000L
9151    field public static final long FEC_26_45 = 1073741824L; // 0x40000000L
9152    field public static final long FEC_28_45 = 2147483648L; // 0x80000000L
9153    field public static final long FEC_29_45 = 4294967296L; // 0x100000000L
9154    field public static final long FEC_2_3 = 32L; // 0x20L
9155    field public static final long FEC_2_5 = 64L; // 0x40L
9156    field public static final long FEC_2_9 = 128L; // 0x80L
9157    field public static final long FEC_31_45 = 8589934592L; // 0x200000000L
9158    field public static final long FEC_32_45 = 17179869184L; // 0x400000000L
9159    field public static final long FEC_3_4 = 256L; // 0x100L
9160    field public static final long FEC_3_5 = 512L; // 0x200L
9161    field public static final long FEC_4_15 = 2048L; // 0x800L
9162    field public static final long FEC_4_5 = 1024L; // 0x400L
9163    field public static final long FEC_5_6 = 4096L; // 0x1000L
9164    field public static final long FEC_5_9 = 8192L; // 0x2000L
9165    field public static final long FEC_6_7 = 16384L; // 0x4000L
9166    field public static final long FEC_77_90 = 34359738368L; // 0x800000000L
9167    field public static final long FEC_7_15 = 131072L; // 0x20000L
9168    field public static final long FEC_7_8 = 32768L; // 0x8000L
9169    field public static final long FEC_7_9 = 65536L; // 0x10000L
9170    field public static final long FEC_8_15 = 524288L; // 0x80000L
9171    field public static final long FEC_8_9 = 262144L; // 0x40000L
9172    field public static final long FEC_9_10 = 1048576L; // 0x100000L
9173    field public static final long FEC_9_20 = 2097152L; // 0x200000L
9174    field public static final long FEC_AUTO = 1L; // 0x1L
9175    field public static final long FEC_UNDEFINED = 0L; // 0x0L
9176    field public static final int FRONTEND_SPECTRAL_INVERSION_INVERTED = 2; // 0x2
9177    field public static final int FRONTEND_SPECTRAL_INVERSION_NORMAL = 1; // 0x1
9178    field public static final int FRONTEND_SPECTRAL_INVERSION_UNDEFINED = 0; // 0x0
9179    field public static final int TYPE_ANALOG = 1; // 0x1
9180    field public static final int TYPE_ATSC = 2; // 0x2
9181    field public static final int TYPE_ATSC3 = 3; // 0x3
9182    field public static final int TYPE_DTMB = 10; // 0xa
9183    field public static final int TYPE_DVBC = 4; // 0x4
9184    field public static final int TYPE_DVBS = 5; // 0x5
9185    field public static final int TYPE_DVBT = 6; // 0x6
9186    field public static final int TYPE_IPTV = 11; // 0xb
9187    field public static final int TYPE_ISDBS = 7; // 0x7
9188    field public static final int TYPE_ISDBS3 = 8; // 0x8
9189    field public static final int TYPE_ISDBT = 9; // 0x9
9190    field public static final int TYPE_UNDEFINED = 0; // 0x0
9191  }
9192
9193  public class FrontendStatus {
9194    method public int getAgc();
9195    method @NonNull public java.util.List<android.media.tv.tuner.frontend.Atsc3PlpInfo> getAllAtsc3PlpInfo();
9196    method @NonNull public android.media.tv.tuner.frontend.FrontendStatus.Atsc3PlpTuningInfo[] getAtsc3PlpTuningInfo();
9197    method public int getBandwidth();
9198    method public int getBer();
9199    method @NonNull public int[] getBers();
9200    method @NonNull public int[] getCodeRates();
9201    method @NonNull public int[] getDvbtCellIds();
9202    method @NonNull public int[] getExtendedModulations();
9203    method @Deprecated public int getFreqOffset();
9204    method public long getFreqOffsetLong();
9205    method public int getGuardInterval();
9206    method public int getHierarchy();
9207    method public long getInnerFec();
9208    method @NonNull public int[] getInterleaving();
9209    method @IntRange(from=0) public int getIptvAverageJitterMillis();
9210    method @NonNull public String getIptvContentUrl();
9211    method @IntRange(from=0) public long getIptvPacketsLost();
9212    method @IntRange(from=0) public long getIptvPacketsReceived();
9213    method @IntRange(from=0) public int getIptvWorstJitterMillis();
9214    method public int getIsdbtMode();
9215    method public int getIsdbtPartialReceptionFlag();
9216    method @IntRange(from=0, to=255) @NonNull public int[] getIsdbtSegment();
9217    method @NonNull public boolean[] getLayerErrors();
9218    method public int getLnbVoltage();
9219    method public int getMer();
9220    method public int getModulation();
9221    method public int getPer();
9222    method public int getPerBer();
9223    method public int getPlpId();
9224    method public int getRollOff();
9225    method public int getSignalQuality();
9226    method public int getSignalStrength();
9227    method public int getSnr();
9228    method public int getSpectralInversion();
9229    method @NonNull public int[] getStreamIds();
9230    method public int getSymbolRate();
9231    method @IntRange(from=0, to=65535) public int getSystemId();
9232    method public int getTransmissionMode();
9233    method @NonNull public int[] getTsDataRate();
9234    method public int getUec();
9235    method public boolean isDemodLocked();
9236    method public boolean isEwbs();
9237    method public boolean isLinear();
9238    method public boolean isLnaOn();
9239    method public boolean isMisoEnabled();
9240    method public boolean isRfLocked();
9241    method public boolean isShortFramesEnabled();
9242    field public static final int FRONTEND_STATUS_TYPE_AGC = 14; // 0xe
9243    field public static final int FRONTEND_STATUS_TYPE_ATSC3_ALL_PLP_INFO = 41; // 0x29
9244    field public static final int FRONTEND_STATUS_TYPE_ATSC3_PLP_INFO = 21; // 0x15
9245    field public static final int FRONTEND_STATUS_TYPE_BANDWIDTH = 25; // 0x19
9246    field public static final int FRONTEND_STATUS_TYPE_BER = 2; // 0x2
9247    field public static final int FRONTEND_STATUS_TYPE_BERS = 23; // 0x17
9248    field public static final int FRONTEND_STATUS_TYPE_CODERATES = 24; // 0x18
9249    field public static final int FRONTEND_STATUS_TYPE_DEMOD_LOCK = 0; // 0x0
9250    field public static final int FRONTEND_STATUS_TYPE_DVBT_CELL_IDS = 40; // 0x28
9251    field public static final int FRONTEND_STATUS_TYPE_EWBS = 13; // 0xd
9252    field public static final int FRONTEND_STATUS_TYPE_FEC = 8; // 0x8
9253    field public static final int FRONTEND_STATUS_TYPE_FREQ_OFFSET = 18; // 0x12
9254    field public static final int FRONTEND_STATUS_TYPE_GUARD_INTERVAL = 26; // 0x1a
9255    field public static final int FRONTEND_STATUS_TYPE_HIERARCHY = 19; // 0x13
9256    field public static final int FRONTEND_STATUS_TYPE_INTERLEAVINGS = 30; // 0x1e
9257    field public static final int FRONTEND_STATUS_TYPE_IPTV_AVERAGE_JITTER_MS = 46; // 0x2e
9258    field public static final int FRONTEND_STATUS_TYPE_IPTV_CONTENT_URL = 42; // 0x2a
9259    field public static final int FRONTEND_STATUS_TYPE_IPTV_PACKETS_LOST = 43; // 0x2b
9260    field public static final int FRONTEND_STATUS_TYPE_IPTV_PACKETS_RECEIVED = 44; // 0x2c
9261    field public static final int FRONTEND_STATUS_TYPE_IPTV_WORST_JITTER_MS = 45; // 0x2d
9262    field public static final int FRONTEND_STATUS_TYPE_ISDBT_MODE = 37; // 0x25
9263    field public static final int FRONTEND_STATUS_TYPE_ISDBT_PARTIAL_RECEPTION_FLAG = 38; // 0x26
9264    field public static final int FRONTEND_STATUS_TYPE_ISDBT_SEGMENTS = 31; // 0x1f
9265    field public static final int FRONTEND_STATUS_TYPE_IS_LINEAR = 35; // 0x23
9266    field public static final int FRONTEND_STATUS_TYPE_IS_MISO_ENABLED = 34; // 0x22
9267    field public static final int FRONTEND_STATUS_TYPE_IS_SHORT_FRAMES_ENABLED = 36; // 0x24
9268    field public static final int FRONTEND_STATUS_TYPE_LAYER_ERROR = 16; // 0x10
9269    field public static final int FRONTEND_STATUS_TYPE_LNA = 15; // 0xf
9270    field public static final int FRONTEND_STATUS_TYPE_LNB_VOLTAGE = 11; // 0xb
9271    field public static final int FRONTEND_STATUS_TYPE_MER = 17; // 0x11
9272    field public static final int FRONTEND_STATUS_TYPE_MODULATION = 9; // 0x9
9273    field public static final int FRONTEND_STATUS_TYPE_MODULATIONS_EXT = 22; // 0x16
9274    field public static final int FRONTEND_STATUS_TYPE_PER = 3; // 0x3
9275    field public static final int FRONTEND_STATUS_TYPE_PLP_ID = 12; // 0xc
9276    field public static final int FRONTEND_STATUS_TYPE_PRE_BER = 4; // 0x4
9277    field public static final int FRONTEND_STATUS_TYPE_RF_LOCK = 20; // 0x14
9278    field public static final int FRONTEND_STATUS_TYPE_ROLL_OFF = 33; // 0x21
9279    field public static final int FRONTEND_STATUS_TYPE_SIGNAL_QUALITY = 5; // 0x5
9280    field public static final int FRONTEND_STATUS_TYPE_SIGNAL_STRENGTH = 6; // 0x6
9281    field public static final int FRONTEND_STATUS_TYPE_SNR = 1; // 0x1
9282    field public static final int FRONTEND_STATUS_TYPE_SPECTRAL = 10; // 0xa
9283    field public static final int FRONTEND_STATUS_TYPE_STREAM_IDS = 39; // 0x27
9284    field public static final int FRONTEND_STATUS_TYPE_SYMBOL_RATE = 7; // 0x7
9285    field public static final int FRONTEND_STATUS_TYPE_T2_SYSTEM_ID = 29; // 0x1d
9286    field public static final int FRONTEND_STATUS_TYPE_TRANSMISSION_MODE = 27; // 0x1b
9287    field public static final int FRONTEND_STATUS_TYPE_TS_DATA_RATES = 32; // 0x20
9288    field public static final int FRONTEND_STATUS_TYPE_UEC = 28; // 0x1c
9289  }
9290
9291  public static class FrontendStatus.Atsc3PlpTuningInfo {
9292    method public int getPlpId();
9293    method public int getUec();
9294    method public boolean isLocked();
9295  }
9296
9297  public final class FrontendStatusReadiness {
9298    method public int getStatusReadiness();
9299    method public int getStatusType();
9300    field public static final int FRONTEND_STATUS_READINESS_STABLE = 3; // 0x3
9301    field public static final int FRONTEND_STATUS_READINESS_UNAVAILABLE = 1; // 0x1
9302    field public static final int FRONTEND_STATUS_READINESS_UNDEFINED = 0; // 0x0
9303    field public static final int FRONTEND_STATUS_READINESS_UNSTABLE = 2; // 0x2
9304    field public static final int FRONTEND_STATUS_READINESS_UNSUPPORTED = 4; // 0x4
9305  }
9306
9307  public class IptvFrontendCapabilities extends android.media.tv.tuner.frontend.FrontendCapabilities {
9308    method public int getProtocolCapability();
9309  }
9310
9311  public final class IptvFrontendSettings extends android.media.tv.tuner.frontend.FrontendSettings {
9312    method @IntRange(from=0) public long getBitrate();
9313    method @NonNull public String getContentUrl();
9314    method @NonNull @Size(min=4, max=16) public byte[] getDstIpAddress();
9315    method public int getDstPort();
9316    method @Nullable public android.media.tv.tuner.frontend.IptvFrontendSettingsFec getFec();
9317    method public int getIgmp();
9318    method public int getProtocol();
9319    method @NonNull @Size(min=4, max=16) public byte[] getSrcIpAddress();
9320    method public int getSrcPort();
9321    method public int getType();
9322    field public static final int IGMP_UNDEFINED = 0; // 0x0
9323    field public static final int IGMP_V1 = 1; // 0x1
9324    field public static final int IGMP_V2 = 2; // 0x2
9325    field public static final int IGMP_V3 = 4; // 0x4
9326    field public static final int PROTOCOL_RTP = 2; // 0x2
9327    field public static final int PROTOCOL_UDP = 1; // 0x1
9328    field public static final int PROTOCOL_UNDEFINED = 0; // 0x0
9329  }
9330
9331  public static final class IptvFrontendSettings.Builder {
9332    ctor public IptvFrontendSettings.Builder();
9333    method @NonNull public android.media.tv.tuner.frontend.IptvFrontendSettings build();
9334    method @NonNull public android.media.tv.tuner.frontend.IptvFrontendSettings.Builder setBitrate(@IntRange(from=0) long);
9335    method @NonNull public android.media.tv.tuner.frontend.IptvFrontendSettings.Builder setContentUrl(@NonNull String);
9336    method @NonNull public android.media.tv.tuner.frontend.IptvFrontendSettings.Builder setDstIpAddress(@NonNull byte[]);
9337    method @NonNull public android.media.tv.tuner.frontend.IptvFrontendSettings.Builder setDstPort(int);
9338    method @NonNull public android.media.tv.tuner.frontend.IptvFrontendSettings.Builder setFec(@Nullable android.media.tv.tuner.frontend.IptvFrontendSettingsFec);
9339    method @NonNull public android.media.tv.tuner.frontend.IptvFrontendSettings.Builder setIgmp(int);
9340    method @NonNull public android.media.tv.tuner.frontend.IptvFrontendSettings.Builder setProtocol(int);
9341    method @NonNull public android.media.tv.tuner.frontend.IptvFrontendSettings.Builder setSrcIpAddress(@NonNull byte[]);
9342    method @NonNull public android.media.tv.tuner.frontend.IptvFrontendSettings.Builder setSrcPort(int);
9343  }
9344
9345  public final class IptvFrontendSettingsFec {
9346    method @IntRange(from=0) public int getFecColNum();
9347    method @IntRange(from=0) public int getFecRowNum();
9348    method public int getFecType();
9349    field public static final int FEC_TYPE_COLUMN = 1; // 0x1
9350    field public static final int FEC_TYPE_COLUMN_ROW = 4; // 0x4
9351    field public static final int FEC_TYPE_ROW = 2; // 0x2
9352    field public static final int FEC_TYPE_UNDEFINED = 0; // 0x0
9353  }
9354
9355  public static final class IptvFrontendSettingsFec.Builder {
9356    ctor public IptvFrontendSettingsFec.Builder();
9357    method @NonNull public android.media.tv.tuner.frontend.IptvFrontendSettingsFec build();
9358    method @NonNull public android.media.tv.tuner.frontend.IptvFrontendSettingsFec.Builder setFecColNum(@IntRange(from=0) int);
9359    method @NonNull public android.media.tv.tuner.frontend.IptvFrontendSettingsFec.Builder setFecRowNum(@IntRange(from=0) int);
9360    method @NonNull public android.media.tv.tuner.frontend.IptvFrontendSettingsFec.Builder setFecType(int);
9361  }
9362
9363  public class Isdbs3FrontendCapabilities extends android.media.tv.tuner.frontend.FrontendCapabilities {
9364    method public int getCodeRateCapability();
9365    method public int getModulationCapability();
9366  }
9367
9368  public class Isdbs3FrontendSettings extends android.media.tv.tuner.frontend.FrontendSettings {
9369    method @NonNull public static android.media.tv.tuner.frontend.Isdbs3FrontendSettings.Builder builder();
9370    method public int getCodeRate();
9371    method public int getModulation();
9372    method public int getRolloff();
9373    method public int getStreamId();
9374    method public int getStreamIdType();
9375    method public int getSymbolRate();
9376    method public int getType();
9377    field public static final int CODERATE_1_2 = 8; // 0x8
9378    field public static final int CODERATE_1_3 = 2; // 0x2
9379    field public static final int CODERATE_2_3 = 32; // 0x20
9380    field public static final int CODERATE_2_5 = 4; // 0x4
9381    field public static final int CODERATE_3_4 = 64; // 0x40
9382    field public static final int CODERATE_3_5 = 16; // 0x10
9383    field public static final int CODERATE_4_5 = 256; // 0x100
9384    field public static final int CODERATE_5_6 = 512; // 0x200
9385    field public static final int CODERATE_7_8 = 1024; // 0x400
9386    field public static final int CODERATE_7_9 = 128; // 0x80
9387    field public static final int CODERATE_9_10 = 2048; // 0x800
9388    field public static final int CODERATE_AUTO = 1; // 0x1
9389    field public static final int CODERATE_UNDEFINED = 0; // 0x0
9390    field public static final int MODULATION_AUTO = 1; // 0x1
9391    field public static final int MODULATION_MOD_16APSK = 16; // 0x10
9392    field public static final int MODULATION_MOD_32APSK = 32; // 0x20
9393    field public static final int MODULATION_MOD_8PSK = 8; // 0x8
9394    field public static final int MODULATION_MOD_BPSK = 2; // 0x2
9395    field public static final int MODULATION_MOD_QPSK = 4; // 0x4
9396    field public static final int MODULATION_UNDEFINED = 0; // 0x0
9397    field public static final int ROLLOFF_0_03 = 1; // 0x1
9398    field public static final int ROLLOFF_UNDEFINED = 0; // 0x0
9399  }
9400
9401  public static class Isdbs3FrontendSettings.Builder {
9402    method @NonNull public android.media.tv.tuner.frontend.Isdbs3FrontendSettings build();
9403    method @NonNull public android.media.tv.tuner.frontend.Isdbs3FrontendSettings.Builder setCodeRate(int);
9404    method @Deprecated @IntRange(from=1) @NonNull public android.media.tv.tuner.frontend.Isdbs3FrontendSettings.Builder setFrequency(int);
9405    method @IntRange(from=1) @NonNull public android.media.tv.tuner.frontend.Isdbs3FrontendSettings.Builder setFrequencyLong(long);
9406    method @NonNull public android.media.tv.tuner.frontend.Isdbs3FrontendSettings.Builder setModulation(int);
9407    method @NonNull public android.media.tv.tuner.frontend.Isdbs3FrontendSettings.Builder setRolloff(int);
9408    method @NonNull public android.media.tv.tuner.frontend.Isdbs3FrontendSettings.Builder setStreamId(int);
9409    method @NonNull public android.media.tv.tuner.frontend.Isdbs3FrontendSettings.Builder setStreamIdType(int);
9410    method @NonNull public android.media.tv.tuner.frontend.Isdbs3FrontendSettings.Builder setSymbolRate(int);
9411  }
9412
9413  public class IsdbsFrontendCapabilities extends android.media.tv.tuner.frontend.FrontendCapabilities {
9414    method public int getCodeRateCapability();
9415    method public int getModulationCapability();
9416  }
9417
9418  public class IsdbsFrontendSettings extends android.media.tv.tuner.frontend.FrontendSettings {
9419    method @NonNull public static android.media.tv.tuner.frontend.IsdbsFrontendSettings.Builder builder();
9420    method public int getCodeRate();
9421    method public int getModulation();
9422    method public int getRolloff();
9423    method public int getStreamId();
9424    method public int getStreamIdType();
9425    method public int getSymbolRate();
9426    method public int getType();
9427    field public static final int CODERATE_1_2 = 2; // 0x2
9428    field public static final int CODERATE_2_3 = 4; // 0x4
9429    field public static final int CODERATE_3_4 = 8; // 0x8
9430    field public static final int CODERATE_5_6 = 16; // 0x10
9431    field public static final int CODERATE_7_8 = 32; // 0x20
9432    field public static final int CODERATE_AUTO = 1; // 0x1
9433    field public static final int CODERATE_UNDEFINED = 0; // 0x0
9434    field public static final int MODULATION_AUTO = 1; // 0x1
9435    field public static final int MODULATION_MOD_BPSK = 2; // 0x2
9436    field public static final int MODULATION_MOD_QPSK = 4; // 0x4
9437    field public static final int MODULATION_MOD_TC8PSK = 8; // 0x8
9438    field public static final int MODULATION_UNDEFINED = 0; // 0x0
9439    field public static final int ROLLOFF_0_35 = 1; // 0x1
9440    field public static final int ROLLOFF_UNDEFINED = 0; // 0x0
9441    field public static final int STREAM_ID_TYPE_ID = 0; // 0x0
9442    field public static final int STREAM_ID_TYPE_RELATIVE_NUMBER = 1; // 0x1
9443  }
9444
9445  public static class IsdbsFrontendSettings.Builder {
9446    method @NonNull public android.media.tv.tuner.frontend.IsdbsFrontendSettings build();
9447    method @NonNull public android.media.tv.tuner.frontend.IsdbsFrontendSettings.Builder setCodeRate(int);
9448    method @Deprecated @IntRange(from=1) @NonNull public android.media.tv.tuner.frontend.IsdbsFrontendSettings.Builder setFrequency(int);
9449    method @IntRange(from=1) @NonNull public android.media.tv.tuner.frontend.IsdbsFrontendSettings.Builder setFrequencyLong(long);
9450    method @NonNull public android.media.tv.tuner.frontend.IsdbsFrontendSettings.Builder setModulation(int);
9451    method @NonNull public android.media.tv.tuner.frontend.IsdbsFrontendSettings.Builder setRolloff(int);
9452    method @NonNull public android.media.tv.tuner.frontend.IsdbsFrontendSettings.Builder setStreamId(int);
9453    method @NonNull public android.media.tv.tuner.frontend.IsdbsFrontendSettings.Builder setStreamIdType(int);
9454    method @NonNull public android.media.tv.tuner.frontend.IsdbsFrontendSettings.Builder setSymbolRate(int);
9455  }
9456
9457  public class IsdbtFrontendCapabilities extends android.media.tv.tuner.frontend.FrontendCapabilities {
9458    method public int getBandwidthCapability();
9459    method public int getCodeRateCapability();
9460    method public int getGuardIntervalCapability();
9461    method public int getModeCapability();
9462    method public int getModulationCapability();
9463    method public int getTimeInterleaveModeCapability();
9464    method public boolean isFullSegmentSupported();
9465    method public boolean isSegmentAutoSupported();
9466  }
9467
9468  public class IsdbtFrontendSettings extends android.media.tv.tuner.frontend.FrontendSettings {
9469    method @NonNull public static android.media.tv.tuner.frontend.IsdbtFrontendSettings.Builder builder();
9470    method public int getBandwidth();
9471    method @Deprecated public int getCodeRate();
9472    method public int getGuardInterval();
9473    method @NonNull public android.media.tv.tuner.frontend.IsdbtFrontendSettings.IsdbtLayerSettings[] getLayerSettings();
9474    method public int getMode();
9475    method @Deprecated public int getModulation();
9476    method public int getPartialReceptionFlag();
9477    method public int getServiceAreaId();
9478    method public int getType();
9479    field public static final int BANDWIDTH_6MHZ = 8; // 0x8
9480    field public static final int BANDWIDTH_7MHZ = 4; // 0x4
9481    field public static final int BANDWIDTH_8MHZ = 2; // 0x2
9482    field public static final int BANDWIDTH_AUTO = 1; // 0x1
9483    field public static final int BANDWIDTH_UNDEFINED = 0; // 0x0
9484    field public static final int MODE_1 = 2; // 0x2
9485    field public static final int MODE_2 = 4; // 0x4
9486    field public static final int MODE_3 = 8; // 0x8
9487    field public static final int MODE_AUTO = 1; // 0x1
9488    field public static final int MODE_UNDEFINED = 0; // 0x0
9489    field public static final int MODULATION_AUTO = 1; // 0x1
9490    field public static final int MODULATION_MOD_16QAM = 8; // 0x8
9491    field public static final int MODULATION_MOD_64QAM = 16; // 0x10
9492    field public static final int MODULATION_MOD_DQPSK = 2; // 0x2
9493    field public static final int MODULATION_MOD_QPSK = 4; // 0x4
9494    field public static final int MODULATION_UNDEFINED = 0; // 0x0
9495    field public static final int PARTIAL_RECEPTION_FLAG_FALSE = 2; // 0x2
9496    field public static final int PARTIAL_RECEPTION_FLAG_TRUE = 4; // 0x4
9497    field public static final int PARTIAL_RECEPTION_FLAG_UNDEFINED = 0; // 0x0
9498    field public static final int TIME_INTERLEAVE_MODE_1_0 = 2; // 0x2
9499    field public static final int TIME_INTERLEAVE_MODE_1_16 = 16; // 0x10
9500    field public static final int TIME_INTERLEAVE_MODE_1_4 = 4; // 0x4
9501    field public static final int TIME_INTERLEAVE_MODE_1_8 = 8; // 0x8
9502    field public static final int TIME_INTERLEAVE_MODE_2_0 = 32; // 0x20
9503    field public static final int TIME_INTERLEAVE_MODE_2_2 = 64; // 0x40
9504    field public static final int TIME_INTERLEAVE_MODE_2_4 = 128; // 0x80
9505    field public static final int TIME_INTERLEAVE_MODE_2_8 = 256; // 0x100
9506    field public static final int TIME_INTERLEAVE_MODE_3_0 = 512; // 0x200
9507    field public static final int TIME_INTERLEAVE_MODE_3_1 = 1024; // 0x400
9508    field public static final int TIME_INTERLEAVE_MODE_3_2 = 2048; // 0x800
9509    field public static final int TIME_INTERLEAVE_MODE_3_4 = 4096; // 0x1000
9510    field public static final int TIME_INTERLEAVE_MODE_AUTO = 1; // 0x1
9511    field public static final int TIME_INTERLEAVE_MODE_UNDEFINED = 0; // 0x0
9512  }
9513
9514  public static class IsdbtFrontendSettings.Builder {
9515    method @NonNull public android.media.tv.tuner.frontend.IsdbtFrontendSettings build();
9516    method @NonNull public android.media.tv.tuner.frontend.IsdbtFrontendSettings.Builder setBandwidth(int);
9517    method @Deprecated @NonNull public android.media.tv.tuner.frontend.IsdbtFrontendSettings.Builder setCodeRate(int);
9518    method @Deprecated @IntRange(from=1) @NonNull public android.media.tv.tuner.frontend.IsdbtFrontendSettings.Builder setFrequency(int);
9519    method @IntRange(from=1) @NonNull public android.media.tv.tuner.frontend.IsdbtFrontendSettings.Builder setFrequencyLong(long);
9520    method @NonNull public android.media.tv.tuner.frontend.IsdbtFrontendSettings.Builder setGuardInterval(int);
9521    method @NonNull public android.media.tv.tuner.frontend.IsdbtFrontendSettings.Builder setLayerSettings(@NonNull android.media.tv.tuner.frontend.IsdbtFrontendSettings.IsdbtLayerSettings[]);
9522    method @NonNull public android.media.tv.tuner.frontend.IsdbtFrontendSettings.Builder setMode(int);
9523    method @Deprecated @NonNull public android.media.tv.tuner.frontend.IsdbtFrontendSettings.Builder setModulation(int);
9524    method @NonNull public android.media.tv.tuner.frontend.IsdbtFrontendSettings.Builder setPartialReceptionFlag(int);
9525    method @NonNull public android.media.tv.tuner.frontend.IsdbtFrontendSettings.Builder setServiceAreaId(int);
9526  }
9527
9528  public static final class IsdbtFrontendSettings.IsdbtLayerSettings {
9529    method @NonNull public static android.media.tv.tuner.frontend.IsdbtFrontendSettings.IsdbtLayerSettings.Builder builder();
9530    method public int getCodeRate();
9531    method public int getModulation();
9532    method @IntRange(from=0, to=255) public int getNumberOfSegments();
9533    method public int getTimeInterleaveMode();
9534  }
9535
9536  public static final class IsdbtFrontendSettings.IsdbtLayerSettings.Builder {
9537    method @NonNull public android.media.tv.tuner.frontend.IsdbtFrontendSettings.IsdbtLayerSettings build();
9538    method @NonNull public android.media.tv.tuner.frontend.IsdbtFrontendSettings.IsdbtLayerSettings.Builder setCodeRate(int);
9539    method @NonNull public android.media.tv.tuner.frontend.IsdbtFrontendSettings.IsdbtLayerSettings.Builder setModulation(int);
9540    method @IntRange(from=0, to=255) @NonNull public android.media.tv.tuner.frontend.IsdbtFrontendSettings.IsdbtLayerSettings.Builder setNumberOfSegments(int);
9541    method @NonNull public android.media.tv.tuner.frontend.IsdbtFrontendSettings.IsdbtLayerSettings.Builder setTimeInterleaveMode(int);
9542  }
9543
9544  public interface OnTuneEventListener {
9545    method public void onTuneEvent(int);
9546    field public static final int SIGNAL_LOCKED = 0; // 0x0
9547    field public static final int SIGNAL_LOST_LOCK = 2; // 0x2
9548    field public static final int SIGNAL_NO_SIGNAL = 1; // 0x1
9549  }
9550
9551  public interface ScanCallback {
9552    method public void onAnalogSifStandardReported(int);
9553    method public void onAtsc3PlpInfosReported(@NonNull android.media.tv.tuner.frontend.Atsc3PlpInfo[]);
9554    method public default void onDvbcAnnexReported(int);
9555    method public void onDvbsStandardReported(int);
9556    method public default void onDvbtCellIdsReported(@NonNull int[]);
9557    method public void onDvbtStandardReported(int);
9558    method public default void onFrequenciesLongReported(@NonNull long[]);
9559    method @Deprecated public void onFrequenciesReported(@NonNull int[]);
9560    method public void onGroupIdsReported(@NonNull int[]);
9561    method public void onHierarchyReported(int);
9562    method public void onInputStreamIdsReported(@NonNull int[]);
9563    method public void onLocked();
9564    method public default void onModulationReported(int);
9565    method public void onPlpIdsReported(@NonNull int[]);
9566    method public default void onPriorityReported(boolean);
9567    method public void onProgress(@IntRange(from=0, to=100) int);
9568    method public void onScanStopped();
9569    method public void onSignalTypeReported(int);
9570    method public void onSymbolRatesReported(@NonNull int[]);
9571    method public default void onUnlocked();
9572  }
9573
9574}
9575
9576package android.media.voice {
9577
9578  public final class KeyphraseModelManager {
9579    method @RequiresPermission(android.Manifest.permission.MANAGE_VOICE_KEYPHRASES) public void deleteKeyphraseSoundModel(int, @NonNull java.util.Locale);
9580    method @Nullable @RequiresPermission(android.Manifest.permission.MANAGE_VOICE_KEYPHRASES) public android.hardware.soundtrigger.SoundTrigger.KeyphraseSoundModel getKeyphraseSoundModel(int, @NonNull java.util.Locale);
9581    method @RequiresPermission(android.Manifest.permission.MANAGE_VOICE_KEYPHRASES) public void updateKeyphraseSoundModel(@NonNull android.hardware.soundtrigger.SoundTrigger.KeyphraseSoundModel);
9582  }
9583
9584}
9585
9586package android.metrics {
9587
9588  public class LogMaker {
9589    ctor public LogMaker(int);
9590    ctor public LogMaker(Object[]);
9591    method public android.metrics.LogMaker addTaggedData(int, Object);
9592    method public android.metrics.LogMaker clearCategory();
9593    method public android.metrics.LogMaker clearPackageName();
9594    method public android.metrics.LogMaker clearSubtype();
9595    method public android.metrics.LogMaker clearTaggedData(int);
9596    method public android.metrics.LogMaker clearType();
9597    method public void deserialize(Object[]);
9598    method public int getCategory();
9599    method public long getCounterBucket();
9600    method public String getCounterName();
9601    method public int getCounterValue();
9602    method public String getPackageName();
9603    method public int getProcessId();
9604    method public int getSubtype();
9605    method public Object getTaggedData(int);
9606    method public long getTimestamp();
9607    method public int getType();
9608    method public int getUid();
9609    method public boolean isLongCounterBucket();
9610    method public boolean isSubsetOf(android.metrics.LogMaker);
9611    method public boolean isValidValue(Object);
9612    method public Object[] serialize();
9613    method public android.metrics.LogMaker setCategory(int);
9614    method public android.metrics.LogMaker setPackageName(String);
9615    method public android.metrics.LogMaker setSubtype(int);
9616    method public android.metrics.LogMaker setType(int);
9617  }
9618
9619  public class MetricsReader {
9620    ctor public MetricsReader();
9621    method public void checkpoint();
9622    method public boolean hasNext();
9623    method public android.metrics.LogMaker next();
9624    method public void read(long);
9625    method public void reset();
9626  }
9627
9628}
9629
9630package android.net {
9631
9632  public final class MatchAllNetworkSpecifier extends android.net.NetworkSpecifier implements android.os.Parcelable {
9633    ctor public MatchAllNetworkSpecifier();
9634    method public int describeContents();
9635    method public void writeToParcel(@NonNull android.os.Parcel, int);
9636    field @NonNull public static final android.os.Parcelable.Creator<android.net.MatchAllNetworkSpecifier> CREATOR;
9637  }
9638
9639  @Deprecated public class NetworkKey implements android.os.Parcelable {
9640    ctor @Deprecated public NetworkKey(android.net.WifiKey);
9641    method @Deprecated @Nullable public static android.net.NetworkKey createFromScanResult(@NonNull android.net.wifi.ScanResult);
9642    method @Deprecated public int describeContents();
9643    method @Deprecated public void writeToParcel(android.os.Parcel, int);
9644    field @Deprecated @NonNull public static final android.os.Parcelable.Creator<android.net.NetworkKey> CREATOR;
9645    field @Deprecated public static final int TYPE_WIFI = 1; // 0x1
9646    field @Deprecated public final int type;
9647    field @Deprecated public final android.net.WifiKey wifiKey;
9648  }
9649
9650  public abstract class NetworkRecommendationProvider {
9651    ctor public NetworkRecommendationProvider(android.content.Context, java.util.concurrent.Executor);
9652    method public final android.os.IBinder getBinder();
9653    method public abstract void onRequestScores(android.net.NetworkKey[]);
9654  }
9655
9656  @Deprecated public class NetworkScoreManager {
9657    method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.SCORE_NETWORKS, android.Manifest.permission.REQUEST_NETWORK_SCORES}) public boolean clearScores() throws java.lang.SecurityException;
9658    method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.SCORE_NETWORKS, android.Manifest.permission.REQUEST_NETWORK_SCORES}) public void disableScoring() throws java.lang.SecurityException;
9659    method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.SCORE_NETWORKS, android.Manifest.permission.REQUEST_NETWORK_SCORES}) public String getActiveScorerPackage();
9660    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;
9661    method @Deprecated @RequiresPermission(android.Manifest.permission.REQUEST_NETWORK_SCORES) public boolean requestScores(@NonNull java.util.Collection<android.net.NetworkKey>) throws java.lang.SecurityException;
9662    method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.SCORE_NETWORKS, android.Manifest.permission.REQUEST_NETWORK_SCORES}) public boolean setActiveScorer(String) throws java.lang.SecurityException;
9663    method @Deprecated @RequiresPermission(android.Manifest.permission.SCORE_NETWORKS) public boolean updateScores(@NonNull android.net.ScoredNetwork[]) throws java.lang.SecurityException;
9664    field @Deprecated public static final String ACTION_CHANGE_ACTIVE = "android.net.scoring.CHANGE_ACTIVE";
9665    field @Deprecated public static final String ACTION_CUSTOM_ENABLE = "android.net.scoring.CUSTOM_ENABLE";
9666    field @Deprecated public static final String ACTION_RECOMMEND_NETWORKS = "android.net.action.RECOMMEND_NETWORKS";
9667    field @Deprecated public static final String ACTION_SCORER_CHANGED = "android.net.scoring.SCORER_CHANGED";
9668    field @Deprecated public static final String ACTION_SCORE_NETWORKS = "android.net.scoring.SCORE_NETWORKS";
9669    field @Deprecated public static final String EXTRA_NETWORKS_TO_SCORE = "networksToScore";
9670    field @Deprecated public static final String EXTRA_NEW_SCORER = "newScorer";
9671    field @Deprecated public static final String EXTRA_PACKAGE_NAME = "packageName";
9672    field @Deprecated public static final int SCORE_FILTER_CURRENT_NETWORK = 1; // 0x1
9673    field @Deprecated public static final int SCORE_FILTER_NONE = 0; // 0x0
9674    field @Deprecated public static final int SCORE_FILTER_SCAN_RESULTS = 2; // 0x2
9675  }
9676
9677  @Deprecated public abstract static class NetworkScoreManager.NetworkScoreCallback {
9678    ctor @Deprecated public NetworkScoreManager.NetworkScoreCallback();
9679    method @Deprecated public abstract void onScoresInvalidated();
9680    method @Deprecated public abstract void onScoresUpdated(@NonNull java.util.Collection<android.net.ScoredNetwork>);
9681  }
9682
9683  public abstract class NetworkSpecifier {
9684    method public boolean canBeSatisfiedBy(@Nullable android.net.NetworkSpecifier);
9685    method @Nullable public android.net.NetworkSpecifier redact();
9686  }
9687
9688  public class NetworkStack {
9689    method @Nullable public static android.os.IBinder getService();
9690    field public static final String PERMISSION_MAINLINE_NETWORK_STACK = "android.permission.MAINLINE_NETWORK_STACK";
9691  }
9692
9693  @Deprecated public class RssiCurve implements android.os.Parcelable {
9694    ctor @Deprecated public RssiCurve(int, int, byte[]);
9695    ctor @Deprecated public RssiCurve(int, int, byte[], int);
9696    method @Deprecated public int describeContents();
9697    method @Deprecated public byte lookupScore(int);
9698    method @Deprecated public byte lookupScore(int, boolean);
9699    method @Deprecated public void writeToParcel(android.os.Parcel, int);
9700    field @Deprecated @NonNull public static final android.os.Parcelable.Creator<android.net.RssiCurve> CREATOR;
9701    field @Deprecated public final int activeNetworkRssiBoost;
9702    field @Deprecated public final int bucketWidth;
9703    field @Deprecated public final byte[] rssiBuckets;
9704    field @Deprecated public final int start;
9705  }
9706
9707  @Deprecated public class ScoredNetwork implements android.os.Parcelable {
9708    ctor @Deprecated public ScoredNetwork(android.net.NetworkKey, android.net.RssiCurve);
9709    ctor @Deprecated public ScoredNetwork(android.net.NetworkKey, android.net.RssiCurve, boolean);
9710    ctor @Deprecated public ScoredNetwork(android.net.NetworkKey, android.net.RssiCurve, boolean, @Nullable android.os.Bundle);
9711    method @Deprecated public int calculateBadge(int);
9712    method @Deprecated public int describeContents();
9713    method @Deprecated public void writeToParcel(android.os.Parcel, int);
9714    field @Deprecated public static final String ATTRIBUTES_KEY_BADGING_CURVE = "android.net.attributes.key.BADGING_CURVE";
9715    field @Deprecated public static final String ATTRIBUTES_KEY_HAS_CAPTIVE_PORTAL = "android.net.attributes.key.HAS_CAPTIVE_PORTAL";
9716    field @Deprecated public static final String ATTRIBUTES_KEY_RANKING_SCORE_OFFSET = "android.net.attributes.key.RANKING_SCORE_OFFSET";
9717    field @Deprecated @NonNull public static final android.os.Parcelable.Creator<android.net.ScoredNetwork> CREATOR;
9718    field @Deprecated @Nullable public final android.os.Bundle attributes;
9719    field @Deprecated public final boolean meteredHint;
9720    field @Deprecated public final android.net.NetworkKey networkKey;
9721    field @Deprecated public final android.net.RssiCurve rssiCurve;
9722  }
9723
9724  public abstract class Uri implements java.lang.Comparable<android.net.Uri> android.os.Parcelable {
9725    method @NonNull public String toSafeString();
9726  }
9727
9728  public class VpnService extends android.app.Service {
9729    method @RequiresPermission(android.Manifest.permission.CONTROL_VPN) public static void prepareAndAuthorize(android.content.Context);
9730  }
9731
9732  public class WebAddress {
9733    ctor public WebAddress(String) throws android.net.ParseException;
9734  }
9735
9736  @Deprecated public class WifiKey implements android.os.Parcelable {
9737    ctor @Deprecated public WifiKey(String, String);
9738    method @Deprecated public int describeContents();
9739    method @Deprecated public void writeToParcel(android.os.Parcel, int);
9740    field @Deprecated @NonNull public static final android.os.Parcelable.Creator<android.net.WifiKey> CREATOR;
9741    field @Deprecated public final String bssid;
9742    field @Deprecated public final String ssid;
9743  }
9744
9745}
9746
9747package android.net.metrics {
9748
9749  @Deprecated public final class ApfProgramEvent implements android.net.metrics.IpConnectivityLog.Event {
9750    method @Deprecated public int describeContents();
9751    method @Deprecated public void writeToParcel(android.os.Parcel, int);
9752  }
9753
9754  @Deprecated public static final class ApfProgramEvent.Builder {
9755    ctor @Deprecated public ApfProgramEvent.Builder();
9756    method @Deprecated @NonNull public android.net.metrics.ApfProgramEvent build();
9757    method @Deprecated @NonNull public android.net.metrics.ApfProgramEvent.Builder setActualLifetime(long);
9758    method @Deprecated @NonNull public android.net.metrics.ApfProgramEvent.Builder setCurrentRas(int);
9759    method @Deprecated @NonNull public android.net.metrics.ApfProgramEvent.Builder setFilteredRas(int);
9760    method @Deprecated @NonNull public android.net.metrics.ApfProgramEvent.Builder setFlags(boolean, boolean);
9761    method @Deprecated @NonNull public android.net.metrics.ApfProgramEvent.Builder setLifetime(long);
9762    method @Deprecated @NonNull public android.net.metrics.ApfProgramEvent.Builder setProgramLength(int);
9763  }
9764
9765  @Deprecated public final class ApfStats implements android.net.metrics.IpConnectivityLog.Event {
9766    method @Deprecated public int describeContents();
9767    method @Deprecated public void writeToParcel(android.os.Parcel, int);
9768  }
9769
9770  @Deprecated public static final class ApfStats.Builder {
9771    ctor @Deprecated public ApfStats.Builder();
9772    method @Deprecated @NonNull public android.net.metrics.ApfStats build();
9773    method @Deprecated @NonNull public android.net.metrics.ApfStats.Builder setDroppedRas(int);
9774    method @Deprecated @NonNull public android.net.metrics.ApfStats.Builder setDurationMs(long);
9775    method @Deprecated @NonNull public android.net.metrics.ApfStats.Builder setMatchingRas(int);
9776    method @Deprecated @NonNull public android.net.metrics.ApfStats.Builder setMaxProgramSize(int);
9777    method @Deprecated @NonNull public android.net.metrics.ApfStats.Builder setParseErrors(int);
9778    method @Deprecated @NonNull public android.net.metrics.ApfStats.Builder setProgramUpdates(int);
9779    method @Deprecated @NonNull public android.net.metrics.ApfStats.Builder setProgramUpdatesAll(int);
9780    method @Deprecated @NonNull public android.net.metrics.ApfStats.Builder setProgramUpdatesAllowingMulticast(int);
9781    method @Deprecated @NonNull public android.net.metrics.ApfStats.Builder setReceivedRas(int);
9782    method @Deprecated @NonNull public android.net.metrics.ApfStats.Builder setZeroLifetimeRas(int);
9783  }
9784
9785  @Deprecated public final class DhcpClientEvent implements android.net.metrics.IpConnectivityLog.Event {
9786    method @Deprecated public int describeContents();
9787    method @Deprecated public void writeToParcel(android.os.Parcel, int);
9788  }
9789
9790  @Deprecated public static final class DhcpClientEvent.Builder {
9791    ctor @Deprecated public DhcpClientEvent.Builder();
9792    method @Deprecated @NonNull public android.net.metrics.DhcpClientEvent build();
9793    method @Deprecated @NonNull public android.net.metrics.DhcpClientEvent.Builder setDurationMs(int);
9794    method @Deprecated @NonNull public android.net.metrics.DhcpClientEvent.Builder setMsg(String);
9795  }
9796
9797  @Deprecated public final class DhcpErrorEvent implements android.net.metrics.IpConnectivityLog.Event {
9798    ctor @Deprecated public DhcpErrorEvent(int);
9799    method @Deprecated public int describeContents();
9800    method @Deprecated public static int errorCodeWithOption(int, int);
9801    method @Deprecated public void writeToParcel(android.os.Parcel, int);
9802    field @Deprecated public static final int BOOTP_TOO_SHORT = 67174400; // 0x4010000
9803    field @Deprecated public static final int BUFFER_UNDERFLOW = 83951616; // 0x5010000
9804    field @Deprecated public static final int DHCP_BAD_MAGIC_COOKIE = 67239936; // 0x4020000
9805    field @Deprecated public static final int DHCP_ERROR = 4; // 0x4
9806    field @Deprecated public static final int DHCP_INVALID_OPTION_LENGTH = 67305472; // 0x4030000
9807    field @Deprecated public static final int DHCP_NO_COOKIE = 67502080; // 0x4060000
9808    field @Deprecated public static final int DHCP_NO_MSG_TYPE = 67371008; // 0x4040000
9809    field @Deprecated public static final int DHCP_UNKNOWN_MSG_TYPE = 67436544; // 0x4050000
9810    field @Deprecated public static final int L2_ERROR = 1; // 0x1
9811    field @Deprecated public static final int L2_TOO_SHORT = 16842752; // 0x1010000
9812    field @Deprecated public static final int L2_WRONG_ETH_TYPE = 16908288; // 0x1020000
9813    field @Deprecated public static final int L3_ERROR = 2; // 0x2
9814    field @Deprecated public static final int L3_INVALID_IP = 33751040; // 0x2030000
9815    field @Deprecated public static final int L3_NOT_IPV4 = 33685504; // 0x2020000
9816    field @Deprecated public static final int L3_TOO_SHORT = 33619968; // 0x2010000
9817    field @Deprecated public static final int L4_ERROR = 3; // 0x3
9818    field @Deprecated public static final int L4_NOT_UDP = 50397184; // 0x3010000
9819    field @Deprecated public static final int L4_WRONG_PORT = 50462720; // 0x3020000
9820    field @Deprecated public static final int MISC_ERROR = 5; // 0x5
9821    field @Deprecated public static final int PARSING_ERROR = 84082688; // 0x5030000
9822    field @Deprecated public static final int RECEIVE_ERROR = 84017152; // 0x5020000
9823  }
9824
9825  @Deprecated public class IpConnectivityLog {
9826    ctor @Deprecated public IpConnectivityLog();
9827    method @Deprecated public boolean log(long, @NonNull android.net.metrics.IpConnectivityLog.Event);
9828    method @Deprecated public boolean log(@NonNull String, @NonNull android.net.metrics.IpConnectivityLog.Event);
9829    method @Deprecated public boolean log(@NonNull android.net.Network, @NonNull int[], @NonNull android.net.metrics.IpConnectivityLog.Event);
9830    method @Deprecated public boolean log(int, @NonNull int[], @NonNull android.net.metrics.IpConnectivityLog.Event);
9831    method @Deprecated public boolean log(@NonNull android.net.metrics.IpConnectivityLog.Event);
9832  }
9833
9834  @Deprecated public static interface IpConnectivityLog.Event extends android.os.Parcelable {
9835  }
9836
9837  @Deprecated public final class IpManagerEvent implements android.net.metrics.IpConnectivityLog.Event {
9838    ctor @Deprecated public IpManagerEvent(int, long);
9839    method @Deprecated public int describeContents();
9840    method @Deprecated public void writeToParcel(android.os.Parcel, int);
9841    field @Deprecated public static final int COMPLETE_LIFECYCLE = 3; // 0x3
9842    field @Deprecated public static final int ERROR_INTERFACE_NOT_FOUND = 8; // 0x8
9843    field @Deprecated public static final int ERROR_INVALID_PROVISIONING = 7; // 0x7
9844    field @Deprecated public static final int ERROR_STARTING_IPREACHABILITYMONITOR = 6; // 0x6
9845    field @Deprecated public static final int ERROR_STARTING_IPV4 = 4; // 0x4
9846    field @Deprecated public static final int ERROR_STARTING_IPV6 = 5; // 0x5
9847    field @Deprecated public static final int PROVISIONING_FAIL = 2; // 0x2
9848    field @Deprecated public static final int PROVISIONING_OK = 1; // 0x1
9849  }
9850
9851  @Deprecated public final class IpReachabilityEvent implements android.net.metrics.IpConnectivityLog.Event {
9852    ctor @Deprecated public IpReachabilityEvent(int);
9853    method @Deprecated public int describeContents();
9854    method @Deprecated public void writeToParcel(android.os.Parcel, int);
9855    field @Deprecated public static final int NUD_FAILED = 512; // 0x200
9856    field @Deprecated public static final int NUD_FAILED_ORGANIC = 1024; // 0x400
9857    field @Deprecated public static final int PROBE = 256; // 0x100
9858    field @Deprecated public static final int PROVISIONING_LOST = 768; // 0x300
9859    field @Deprecated public static final int PROVISIONING_LOST_ORGANIC = 1280; // 0x500
9860  }
9861
9862  @Deprecated public final class NetworkEvent implements android.net.metrics.IpConnectivityLog.Event {
9863    ctor @Deprecated public NetworkEvent(int, long);
9864    ctor @Deprecated public NetworkEvent(int);
9865    method @Deprecated public int describeContents();
9866    method @Deprecated public void writeToParcel(android.os.Parcel, int);
9867    field @Deprecated public static final int NETWORK_CAPTIVE_PORTAL_FOUND = 4; // 0x4
9868    field @Deprecated public static final int NETWORK_CONNECTED = 1; // 0x1
9869    field @Deprecated public static final int NETWORK_CONSECUTIVE_DNS_TIMEOUT_FOUND = 12; // 0xc
9870    field @Deprecated public static final int NETWORK_DISCONNECTED = 7; // 0x7
9871    field @Deprecated public static final int NETWORK_FIRST_VALIDATION_PORTAL_FOUND = 10; // 0xa
9872    field @Deprecated public static final int NETWORK_FIRST_VALIDATION_SUCCESS = 8; // 0x8
9873    field @Deprecated public static final int NETWORK_LINGER = 5; // 0x5
9874    field @Deprecated public static final int NETWORK_PARTIAL_CONNECTIVITY = 13; // 0xd
9875    field @Deprecated public static final int NETWORK_REVALIDATION_PORTAL_FOUND = 11; // 0xb
9876    field @Deprecated public static final int NETWORK_REVALIDATION_SUCCESS = 9; // 0x9
9877    field @Deprecated public static final int NETWORK_UNLINGER = 6; // 0x6
9878    field @Deprecated public static final int NETWORK_VALIDATED = 2; // 0x2
9879    field @Deprecated public static final int NETWORK_VALIDATION_FAILED = 3; // 0x3
9880  }
9881
9882  @Deprecated public final class RaEvent implements android.net.metrics.IpConnectivityLog.Event {
9883    method @Deprecated public int describeContents();
9884    method @Deprecated public void writeToParcel(android.os.Parcel, int);
9885  }
9886
9887  @Deprecated public static final class RaEvent.Builder {
9888    ctor @Deprecated public RaEvent.Builder();
9889    method @Deprecated @NonNull public android.net.metrics.RaEvent build();
9890    method @Deprecated @NonNull public android.net.metrics.RaEvent.Builder updateDnsslLifetime(long);
9891    method @Deprecated @NonNull public android.net.metrics.RaEvent.Builder updatePrefixPreferredLifetime(long);
9892    method @Deprecated @NonNull public android.net.metrics.RaEvent.Builder updatePrefixValidLifetime(long);
9893    method @Deprecated @NonNull public android.net.metrics.RaEvent.Builder updateRdnssLifetime(long);
9894    method @Deprecated @NonNull public android.net.metrics.RaEvent.Builder updateRouteInfoLifetime(long);
9895    method @Deprecated @NonNull public android.net.metrics.RaEvent.Builder updateRouterLifetime(long);
9896  }
9897
9898  @Deprecated public final class ValidationProbeEvent implements android.net.metrics.IpConnectivityLog.Event {
9899    method @Deprecated public int describeContents();
9900    method @Deprecated @NonNull public static String getProbeName(int);
9901    method @Deprecated public void writeToParcel(android.os.Parcel, int);
9902    field @Deprecated public static final int DNS_FAILURE = 0; // 0x0
9903    field @Deprecated public static final int DNS_SUCCESS = 1; // 0x1
9904    field @Deprecated public static final int PROBE_DNS = 0; // 0x0
9905    field @Deprecated public static final int PROBE_FALLBACK = 4; // 0x4
9906    field @Deprecated public static final int PROBE_HTTP = 1; // 0x1
9907    field @Deprecated public static final int PROBE_HTTPS = 2; // 0x2
9908    field @Deprecated public static final int PROBE_PAC = 3; // 0x3
9909    field @Deprecated public static final int PROBE_PRIVDNS = 5; // 0x5
9910  }
9911
9912  @Deprecated public static final class ValidationProbeEvent.Builder {
9913    ctor @Deprecated public ValidationProbeEvent.Builder();
9914    method @Deprecated @NonNull public android.net.metrics.ValidationProbeEvent build();
9915    method @Deprecated @NonNull public android.net.metrics.ValidationProbeEvent.Builder setDurationMs(long);
9916    method @Deprecated @NonNull public android.net.metrics.ValidationProbeEvent.Builder setProbeType(int, boolean);
9917    method @Deprecated @NonNull public android.net.metrics.ValidationProbeEvent.Builder setReturnCode(int);
9918  }
9919
9920}
9921
9922package android.net.sip {
9923
9924  @Deprecated public class SipAudioCall {
9925    method @Deprecated @Nullable public android.net.rtp.AudioGroup getAudioGroup();
9926    method @Deprecated public void setAudioGroup(@NonNull android.net.rtp.AudioGroup);
9927  }
9928
9929  @Deprecated public class SipManager {
9930    method @Deprecated @NonNull public java.util.List<android.net.sip.SipProfile> getProfiles() throws android.net.sip.SipException;
9931    field @Deprecated public static final String ACTION_SIP_CALL_OPTION_CHANGED = "android.net.sip.action.SIP_CALL_OPTION_CHANGED";
9932    field @Deprecated public static final String ACTION_SIP_INCOMING_CALL = "android.net.sip.action.SIP_INCOMING_CALL";
9933    field @Deprecated public static final String ACTION_SIP_REMOVE_PROFILE = "android.net.sip.action.SIP_REMOVE_PROFILE";
9934    field @Deprecated public static final String ACTION_SIP_SERVICE_UP = "android.net.sip.action.SIP_SERVICE_UP";
9935    field @Deprecated public static final String ACTION_START_SIP = "android.net.sip.action.START_SIP";
9936  }
9937
9938  @Deprecated public class SipProfile implements java.lang.Cloneable android.os.Parcelable java.io.Serializable {
9939    method @Deprecated public int getCallingUid();
9940  }
9941
9942}
9943
9944package android.net.util {
9945
9946  public final class SocketUtils {
9947    method public static void bindSocketToInterface(@NonNull java.io.FileDescriptor, @NonNull String) throws android.system.ErrnoException;
9948    method public static void closeSocket(@Nullable java.io.FileDescriptor) throws java.io.IOException;
9949    method @NonNull public static java.net.SocketAddress makeNetlinkSocketAddress(int, int);
9950    method @NonNull public static java.net.SocketAddress makePacketSocketAddress(int, int);
9951    method @Deprecated @NonNull public static java.net.SocketAddress makePacketSocketAddress(int, @NonNull byte[]);
9952    method @NonNull public static java.net.SocketAddress makePacketSocketAddress(int, int, @NonNull byte[]);
9953  }
9954
9955}
9956
9957package android.net.vcn {
9958
9959  public class VcnManager {
9960    method @RequiresPermission(android.Manifest.permission.NETWORK_FACTORY) public void addVcnNetworkPolicyChangeListener(@NonNull java.util.concurrent.Executor, @NonNull android.net.vcn.VcnManager.VcnNetworkPolicyChangeListener);
9961    method @NonNull @RequiresPermission(android.Manifest.permission.NETWORK_FACTORY) public android.net.vcn.VcnNetworkPolicyResult applyVcnNetworkPolicy(@NonNull android.net.NetworkCapabilities, @NonNull android.net.LinkProperties);
9962    method @RequiresPermission(android.Manifest.permission.NETWORK_FACTORY) public void removeVcnNetworkPolicyChangeListener(@NonNull android.net.vcn.VcnManager.VcnNetworkPolicyChangeListener);
9963  }
9964
9965  public static interface VcnManager.VcnNetworkPolicyChangeListener {
9966    method public void onPolicyChanged();
9967  }
9968
9969  public final class VcnNetworkPolicyResult implements android.os.Parcelable {
9970    method public int describeContents();
9971    method @NonNull public android.net.NetworkCapabilities getNetworkCapabilities();
9972    method public boolean isTeardownRequested();
9973    method public void writeToParcel(@NonNull android.os.Parcel, int);
9974    field @NonNull public static final android.os.Parcelable.Creator<android.net.vcn.VcnNetworkPolicyResult> CREATOR;
9975  }
9976
9977}
9978
9979package android.net.wifi {
9980
9981  public final class WifiKeystore {
9982    method @NonNull public static byte[] get(@NonNull String);
9983    method @NonNull public static String[] list(@NonNull String);
9984    method public static boolean put(@NonNull String, @NonNull byte[]);
9985    method public static boolean remove(@NonNull String);
9986  }
9987
9988  public final class WifiMigration {
9989    method @Nullable public static java.io.InputStream convertAndRetrieveSharedConfigStoreFile(int);
9990    method @Nullable public static java.io.InputStream convertAndRetrieveUserConfigStoreFile(int, @NonNull android.os.UserHandle);
9991    method @NonNull public static android.net.wifi.WifiMigration.SettingsMigrationData loadFromSettings(@NonNull android.content.Context);
9992    method public static void removeSharedConfigStoreFile(int);
9993    method public static void removeUserConfigStoreFile(int, @NonNull android.os.UserHandle);
9994    field public static final int STORE_FILE_SHARED_GENERAL = 0; // 0x0
9995    field public static final int STORE_FILE_SHARED_SOFTAP = 1; // 0x1
9996    field public static final int STORE_FILE_USER_GENERAL = 2; // 0x2
9997    field public static final int STORE_FILE_USER_NETWORK_SUGGESTIONS = 3; // 0x3
9998  }
9999
10000  public static final class WifiMigration.SettingsMigrationData implements android.os.Parcelable {
10001    method public int describeContents();
10002    method @Nullable public String getP2pDeviceName();
10003    method public boolean isP2pFactoryResetPending();
10004    method public boolean isScanAlwaysAvailable();
10005    method public boolean isScanThrottleEnabled();
10006    method public boolean isSoftApTimeoutEnabled();
10007    method public boolean isVerboseLoggingEnabled();
10008    method public boolean isWakeUpEnabled();
10009    method public void writeToParcel(@NonNull android.os.Parcel, int);
10010    field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.WifiMigration.SettingsMigrationData> CREATOR;
10011  }
10012
10013  public static final class WifiMigration.SettingsMigrationData.Builder {
10014    ctor public WifiMigration.SettingsMigrationData.Builder();
10015    method @NonNull public android.net.wifi.WifiMigration.SettingsMigrationData build();
10016    method @NonNull public android.net.wifi.WifiMigration.SettingsMigrationData.Builder setP2pDeviceName(@Nullable String);
10017    method @NonNull public android.net.wifi.WifiMigration.SettingsMigrationData.Builder setP2pFactoryResetPending(boolean);
10018    method @NonNull public android.net.wifi.WifiMigration.SettingsMigrationData.Builder setScanAlwaysAvailable(boolean);
10019    method @NonNull public android.net.wifi.WifiMigration.SettingsMigrationData.Builder setScanThrottleEnabled(boolean);
10020    method @NonNull public android.net.wifi.WifiMigration.SettingsMigrationData.Builder setSoftApTimeoutEnabled(boolean);
10021    method @NonNull public android.net.wifi.WifiMigration.SettingsMigrationData.Builder setVerboseLoggingEnabled(boolean);
10022    method @NonNull public android.net.wifi.WifiMigration.SettingsMigrationData.Builder setWakeUpEnabled(boolean);
10023  }
10024
10025}
10026
10027package android.net.wifi.nl80211 {
10028
10029  public final class DeviceWiphyCapabilities implements android.os.Parcelable {
10030    ctor public DeviceWiphyCapabilities();
10031    method public int describeContents();
10032    method public int getMaxNumberAkms();
10033    method public int getMaxNumberRxSpatialStreams();
10034    method public int getMaxNumberTxSpatialStreams();
10035    method public boolean isChannelWidthSupported(int);
10036    method public boolean isWifiStandardSupported(int);
10037    method public void setWifiStandardSupport(int, boolean);
10038    method public void writeToParcel(@NonNull android.os.Parcel, int);
10039    field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.nl80211.DeviceWiphyCapabilities> CREATOR;
10040  }
10041
10042  public final class NativeScanResult implements android.os.Parcelable {
10043    ctor public NativeScanResult();
10044    method public int describeContents();
10045    method @Nullable public android.net.MacAddress getBssid();
10046    method public int getCapabilities();
10047    method public int getFrequencyMhz();
10048    method @NonNull public byte[] getInformationElements();
10049    method @NonNull public java.util.List<android.net.wifi.nl80211.RadioChainInfo> getRadioChainInfos();
10050    method public int getSignalMbm();
10051    method @NonNull public byte[] getSsid();
10052    method public long getTsf();
10053    method public boolean isAssociated();
10054    method public void writeToParcel(@NonNull android.os.Parcel, int);
10055    field public static final int BSS_CAPABILITY_APSD = 2048; // 0x800
10056    field public static final int BSS_CAPABILITY_CF_POLLABLE = 4; // 0x4
10057    field public static final int BSS_CAPABILITY_CF_POLL_REQUEST = 8; // 0x8
10058    field public static final int BSS_CAPABILITY_CHANNEL_AGILITY = 128; // 0x80
10059    field public static final int BSS_CAPABILITY_DELAYED_BLOCK_ACK = 16384; // 0x4000
10060    field public static final int BSS_CAPABILITY_DMG_ESS = 3; // 0x3
10061    field public static final int BSS_CAPABILITY_DMG_IBSS = 1; // 0x1
10062    field public static final int BSS_CAPABILITY_DSSS_OFDM = 8192; // 0x2000
10063    field public static final int BSS_CAPABILITY_ESS = 1; // 0x1
10064    field public static final int BSS_CAPABILITY_IBSS = 2; // 0x2
10065    field public static final int BSS_CAPABILITY_IMMEDIATE_BLOCK_ACK = 32768; // 0x8000
10066    field public static final int BSS_CAPABILITY_PBCC = 64; // 0x40
10067    field public static final int BSS_CAPABILITY_PRIVACY = 16; // 0x10
10068    field public static final int BSS_CAPABILITY_QOS = 512; // 0x200
10069    field public static final int BSS_CAPABILITY_RADIO_MANAGEMENT = 4096; // 0x1000
10070    field public static final int BSS_CAPABILITY_SHORT_PREAMBLE = 32; // 0x20
10071    field public static final int BSS_CAPABILITY_SHORT_SLOT_TIME = 1024; // 0x400
10072    field public static final int BSS_CAPABILITY_SPECTRUM_MANAGEMENT = 256; // 0x100
10073    field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.nl80211.NativeScanResult> CREATOR;
10074  }
10075
10076  public final class NativeWifiClient implements android.os.Parcelable {
10077    ctor public NativeWifiClient(@Nullable android.net.MacAddress);
10078    method public int describeContents();
10079    method @Nullable public android.net.MacAddress getMacAddress();
10080    method public void writeToParcel(@NonNull android.os.Parcel, int);
10081    field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.nl80211.NativeWifiClient> CREATOR;
10082  }
10083
10084  public final class PnoNetwork implements android.os.Parcelable {
10085    ctor public PnoNetwork();
10086    method public int describeContents();
10087    method @NonNull public int[] getFrequenciesMhz();
10088    method @NonNull public byte[] getSsid();
10089    method public boolean isHidden();
10090    method public void setFrequenciesMhz(@NonNull int[]);
10091    method public void setHidden(boolean);
10092    method public void setSsid(@NonNull byte[]);
10093    method public void writeToParcel(@NonNull android.os.Parcel, int);
10094    field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.nl80211.PnoNetwork> CREATOR;
10095  }
10096
10097  public final class PnoSettings implements android.os.Parcelable {
10098    ctor public PnoSettings();
10099    method public int describeContents();
10100    method public long getIntervalMillis();
10101    method public int getMin2gRssiDbm();
10102    method public int getMin5gRssiDbm();
10103    method public int getMin6gRssiDbm();
10104    method @NonNull public java.util.List<android.net.wifi.nl80211.PnoNetwork> getPnoNetworks();
10105    method public int getScanIntervalMultiplier();
10106    method public int getScanIterations();
10107    method public void setIntervalMillis(long);
10108    method public void setMin2gRssiDbm(int);
10109    method public void setMin5gRssiDbm(int);
10110    method public void setMin6gRssiDbm(int);
10111    method public void setPnoNetworks(@NonNull java.util.List<android.net.wifi.nl80211.PnoNetwork>);
10112    method public void setScanIntervalMultiplier(int);
10113    method public void setScanIterations(int);
10114    method public void writeToParcel(@NonNull android.os.Parcel, int);
10115    field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.nl80211.PnoSettings> CREATOR;
10116  }
10117
10118  public final class RadioChainInfo implements android.os.Parcelable {
10119    ctor public RadioChainInfo(int, int);
10120    method public int describeContents();
10121    method public int getChainId();
10122    method public int getLevelDbm();
10123    method public void writeToParcel(@NonNull android.os.Parcel, int);
10124    field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.nl80211.RadioChainInfo> CREATOR;
10125  }
10126
10127  public class WifiNl80211Manager {
10128    ctor public WifiNl80211Manager(@NonNull android.content.Context, @NonNull android.os.IBinder);
10129    method public void abortScan(@NonNull String);
10130    method public void enableVerboseLogging(boolean);
10131    method @NonNull public int[] getChannelsMhzForBand(int);
10132    method @Nullable public android.net.wifi.nl80211.DeviceWiphyCapabilities getDeviceWiphyCapabilities(@NonNull String);
10133    method public int getMaxSsidsPerScan(@NonNull String);
10134    method @NonNull public java.util.List<android.net.wifi.nl80211.NativeScanResult> getScanResults(@NonNull String, int);
10135    method @Nullable public android.net.wifi.nl80211.WifiNl80211Manager.TxPacketCounters getTxPacketCounters(@NonNull String);
10136    method public void notifyCountryCodeChanged(@Nullable String);
10137    method @Nullable public static android.net.wifi.nl80211.WifiNl80211Manager.OemSecurityType parseOemSecurityTypeElement(int, int, @NonNull byte[]);
10138    method @Deprecated public boolean registerApCallback(@NonNull String, @NonNull java.util.concurrent.Executor, @NonNull android.net.wifi.nl80211.WifiNl80211Manager.SoftApCallback);
10139    method public boolean registerCountryCodeChangedListener(@NonNull java.util.concurrent.Executor, @NonNull android.net.wifi.nl80211.WifiNl80211Manager.CountryCodeChangedListener);
10140    method public void sendMgmtFrame(@NonNull String, @NonNull byte[], int, @NonNull java.util.concurrent.Executor, @NonNull android.net.wifi.nl80211.WifiNl80211Manager.SendMgmtFrameCallback);
10141    method public void setOnServiceDeadCallback(@NonNull Runnable);
10142    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);
10143    method public boolean setupInterfaceForSoftApMode(@NonNull String);
10144    method @Deprecated @Nullable public android.net.wifi.nl80211.WifiNl80211Manager.SignalPollResult signalPoll(@NonNull String);
10145    method public boolean startPnoScan(@NonNull String, @NonNull android.net.wifi.nl80211.PnoSettings, @NonNull java.util.concurrent.Executor, @NonNull android.net.wifi.nl80211.WifiNl80211Manager.PnoScanRequestCallback);
10146    method @Deprecated public boolean startScan(@NonNull String, int, @Nullable java.util.Set<java.lang.Integer>, @Nullable java.util.List<byte[]>);
10147    method @Deprecated public boolean startScan(@NonNull String, int, @Nullable java.util.Set<java.lang.Integer>, @Nullable java.util.List<byte[]>, @Nullable android.os.Bundle);
10148    method public int startScan2(@NonNull String, int, @Nullable java.util.Set<java.lang.Integer>, @Nullable java.util.List<byte[]>, @Nullable android.os.Bundle);
10149    method public boolean stopPnoScan(@NonNull String);
10150    method public boolean tearDownClientInterface(@NonNull String);
10151    method public boolean tearDownInterfaces();
10152    method public boolean tearDownSoftApInterface(@NonNull String);
10153    method public void unregisterCountryCodeChangedListener(@NonNull android.net.wifi.nl80211.WifiNl80211Manager.CountryCodeChangedListener);
10154    field public static final String EXTRA_SCANNING_PARAM_VENDOR_IES = "android.net.wifi.nl80211.extra.SCANNING_PARAM_VENDOR_IES";
10155    field public static final String SCANNING_PARAM_ENABLE_6GHZ_RNR = "android.net.wifi.nl80211.SCANNING_PARAM_ENABLE_6GHZ_RNR";
10156    field public static final int SCAN_TYPE_PNO_SCAN = 1; // 0x1
10157    field public static final int SCAN_TYPE_SINGLE_SCAN = 0; // 0x0
10158    field public static final int SEND_MGMT_FRAME_ERROR_ALREADY_STARTED = 5; // 0x5
10159    field public static final int SEND_MGMT_FRAME_ERROR_MCS_UNSUPPORTED = 2; // 0x2
10160    field public static final int SEND_MGMT_FRAME_ERROR_NO_ACK = 3; // 0x3
10161    field public static final int SEND_MGMT_FRAME_ERROR_TIMEOUT = 4; // 0x4
10162    field public static final int SEND_MGMT_FRAME_ERROR_UNKNOWN = 1; // 0x1
10163  }
10164
10165  public static interface WifiNl80211Manager.CountryCodeChangedListener {
10166    method public void onCountryCodeChanged(@NonNull String);
10167  }
10168
10169  public static class WifiNl80211Manager.OemSecurityType {
10170    ctor public WifiNl80211Manager.OemSecurityType(int, @NonNull java.util.List<java.lang.Integer>, @NonNull java.util.List<java.lang.Integer>, int);
10171    field public final int groupCipher;
10172    field @NonNull public final java.util.List<java.lang.Integer> keyManagement;
10173    field @NonNull public final java.util.List<java.lang.Integer> pairwiseCipher;
10174    field public final int protocol;
10175  }
10176
10177  public static interface WifiNl80211Manager.PnoScanRequestCallback {
10178    method public void onPnoRequestFailed();
10179    method public void onPnoRequestSucceeded();
10180  }
10181
10182  public static interface WifiNl80211Manager.ScanEventCallback {
10183    method @Deprecated public void onScanFailed();
10184    method public default void onScanFailed(int);
10185    method public void onScanResultReady();
10186  }
10187
10188  public static interface WifiNl80211Manager.SendMgmtFrameCallback {
10189    method public void onAck(int);
10190    method public void onFailure(int);
10191  }
10192
10193  @Deprecated public static class WifiNl80211Manager.SignalPollResult {
10194    field @Deprecated public final int associationFrequencyMHz;
10195    field @Deprecated public final int currentRssiDbm;
10196    field @Deprecated public final int rxBitrateMbps;
10197    field @Deprecated public final int txBitrateMbps;
10198  }
10199
10200  @Deprecated public static interface WifiNl80211Manager.SoftApCallback {
10201    method @Deprecated public void onConnectedClientsChanged(@NonNull android.net.wifi.nl80211.NativeWifiClient, boolean);
10202    method @Deprecated public void onFailure();
10203    method @Deprecated public void onSoftApChannelSwitched(int, int);
10204  }
10205
10206  public static class WifiNl80211Manager.TxPacketCounters {
10207    field public final int txPacketFailed;
10208    field public final int txPacketSucceeded;
10209  }
10210
10211}
10212
10213package android.net.wifi.sharedconnectivity.app {
10214
10215  public final class HotspotNetwork implements android.os.Parcelable {
10216    method public int describeContents();
10217    method public long getDeviceId();
10218    method @NonNull public android.os.Bundle getExtras();
10219    method public int getHostNetworkType();
10220    method @Nullable public String getHotspotBssid();
10221    method @NonNull public java.util.Set<java.lang.Integer> getHotspotSecurityTypes();
10222    method @Nullable public String getHotspotSsid();
10223    method @NonNull public String getNetworkName();
10224    method @NonNull public android.net.wifi.sharedconnectivity.app.NetworkProviderInfo getNetworkProviderInfo();
10225    method public void writeToParcel(@NonNull android.os.Parcel, int);
10226    field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.sharedconnectivity.app.HotspotNetwork> CREATOR;
10227    field public static final int NETWORK_TYPE_CELLULAR = 1; // 0x1
10228    field public static final int NETWORK_TYPE_ETHERNET = 3; // 0x3
10229    field public static final int NETWORK_TYPE_UNKNOWN = 0; // 0x0
10230    field public static final int NETWORK_TYPE_WIFI = 2; // 0x2
10231  }
10232
10233  public static final class HotspotNetwork.Builder {
10234    ctor public HotspotNetwork.Builder();
10235    method @NonNull public android.net.wifi.sharedconnectivity.app.HotspotNetwork.Builder addHotspotSecurityType(int);
10236    method @NonNull public android.net.wifi.sharedconnectivity.app.HotspotNetwork build();
10237    method @NonNull public android.net.wifi.sharedconnectivity.app.HotspotNetwork.Builder setDeviceId(long);
10238    method @NonNull public android.net.wifi.sharedconnectivity.app.HotspotNetwork.Builder setExtras(@NonNull android.os.Bundle);
10239    method @NonNull public android.net.wifi.sharedconnectivity.app.HotspotNetwork.Builder setHostNetworkType(int);
10240    method @NonNull public android.net.wifi.sharedconnectivity.app.HotspotNetwork.Builder setHotspotBssid(@NonNull String);
10241    method @NonNull public android.net.wifi.sharedconnectivity.app.HotspotNetwork.Builder setHotspotSsid(@NonNull String);
10242    method @NonNull public android.net.wifi.sharedconnectivity.app.HotspotNetwork.Builder setNetworkName(@NonNull String);
10243    method @NonNull public android.net.wifi.sharedconnectivity.app.HotspotNetwork.Builder setNetworkProviderInfo(@NonNull android.net.wifi.sharedconnectivity.app.NetworkProviderInfo);
10244  }
10245
10246  public final class HotspotNetworkConnectionStatus implements android.os.Parcelable {
10247    method public int describeContents();
10248    method @NonNull public android.os.Bundle getExtras();
10249    method @NonNull public android.net.wifi.sharedconnectivity.app.HotspotNetwork getHotspotNetwork();
10250    method public int getStatus();
10251    method public void writeToParcel(@NonNull android.os.Parcel, int);
10252    field public static final int CONNECTION_STATUS_CONNECT_TO_HOTSPOT_FAILED = 9; // 0x9
10253    field public static final int CONNECTION_STATUS_ENABLING_HOTSPOT = 1; // 0x1
10254    field public static final int CONNECTION_STATUS_ENABLING_HOTSPOT_FAILED = 7; // 0x7
10255    field public static final int CONNECTION_STATUS_ENABLING_HOTSPOT_TIMEOUT = 8; // 0x8
10256    field public static final int CONNECTION_STATUS_NO_CELL_DATA = 6; // 0x6
10257    field public static final int CONNECTION_STATUS_PROVISIONING_FAILED = 3; // 0x3
10258    field public static final int CONNECTION_STATUS_TETHERING_TIMEOUT = 4; // 0x4
10259    field public static final int CONNECTION_STATUS_TETHERING_UNSUPPORTED = 5; // 0x5
10260    field public static final int CONNECTION_STATUS_UNKNOWN = 0; // 0x0
10261    field public static final int CONNECTION_STATUS_UNKNOWN_ERROR = 2; // 0x2
10262    field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.sharedconnectivity.app.HotspotNetworkConnectionStatus> CREATOR;
10263  }
10264
10265  public static final class HotspotNetworkConnectionStatus.Builder {
10266    ctor public HotspotNetworkConnectionStatus.Builder();
10267    method @NonNull public android.net.wifi.sharedconnectivity.app.HotspotNetworkConnectionStatus build();
10268    method @NonNull public android.net.wifi.sharedconnectivity.app.HotspotNetworkConnectionStatus.Builder setExtras(@NonNull android.os.Bundle);
10269    method @NonNull public android.net.wifi.sharedconnectivity.app.HotspotNetworkConnectionStatus.Builder setHotspotNetwork(@NonNull android.net.wifi.sharedconnectivity.app.HotspotNetwork);
10270    method @NonNull public android.net.wifi.sharedconnectivity.app.HotspotNetworkConnectionStatus.Builder setStatus(int);
10271  }
10272
10273  public final class KnownNetwork implements android.os.Parcelable {
10274    method public int describeContents();
10275    method @NonNull public android.os.Bundle getExtras();
10276    method @Nullable public android.net.wifi.sharedconnectivity.app.NetworkProviderInfo getNetworkProviderInfo();
10277    method public int getNetworkSource();
10278    method @NonNull public java.util.Set<java.lang.Integer> getSecurityTypes();
10279    method @NonNull public String getSsid();
10280    method public void writeToParcel(@NonNull android.os.Parcel, int);
10281    field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.sharedconnectivity.app.KnownNetwork> CREATOR;
10282    field public static final int NETWORK_SOURCE_CLOUD_SELF = 2; // 0x2
10283    field public static final int NETWORK_SOURCE_NEARBY_SELF = 1; // 0x1
10284    field public static final int NETWORK_SOURCE_UNKNOWN = 0; // 0x0
10285  }
10286
10287  public static final class KnownNetwork.Builder {
10288    ctor public KnownNetwork.Builder();
10289    method @NonNull public android.net.wifi.sharedconnectivity.app.KnownNetwork.Builder addSecurityType(int);
10290    method @NonNull public android.net.wifi.sharedconnectivity.app.KnownNetwork build();
10291    method @NonNull public android.net.wifi.sharedconnectivity.app.KnownNetwork.Builder setExtras(@NonNull android.os.Bundle);
10292    method @NonNull public android.net.wifi.sharedconnectivity.app.KnownNetwork.Builder setNetworkProviderInfo(@Nullable android.net.wifi.sharedconnectivity.app.NetworkProviderInfo);
10293    method @NonNull public android.net.wifi.sharedconnectivity.app.KnownNetwork.Builder setNetworkSource(int);
10294    method @NonNull public android.net.wifi.sharedconnectivity.app.KnownNetwork.Builder setSsid(@NonNull String);
10295  }
10296
10297  public final class KnownNetworkConnectionStatus implements android.os.Parcelable {
10298    method public int describeContents();
10299    method @NonNull public android.os.Bundle getExtras();
10300    method @NonNull public android.net.wifi.sharedconnectivity.app.KnownNetwork getKnownNetwork();
10301    method public int getStatus();
10302    method public void writeToParcel(@NonNull android.os.Parcel, int);
10303    field public static final int CONNECTION_STATUS_SAVED = 1; // 0x1
10304    field public static final int CONNECTION_STATUS_SAVE_FAILED = 2; // 0x2
10305    field public static final int CONNECTION_STATUS_UNKNOWN = 0; // 0x0
10306    field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.sharedconnectivity.app.KnownNetworkConnectionStatus> CREATOR;
10307  }
10308
10309  public static final class KnownNetworkConnectionStatus.Builder {
10310    ctor public KnownNetworkConnectionStatus.Builder();
10311    method @NonNull public android.net.wifi.sharedconnectivity.app.KnownNetworkConnectionStatus build();
10312    method @NonNull public android.net.wifi.sharedconnectivity.app.KnownNetworkConnectionStatus.Builder setExtras(@NonNull android.os.Bundle);
10313    method @NonNull public android.net.wifi.sharedconnectivity.app.KnownNetworkConnectionStatus.Builder setKnownNetwork(@NonNull android.net.wifi.sharedconnectivity.app.KnownNetwork);
10314    method @NonNull public android.net.wifi.sharedconnectivity.app.KnownNetworkConnectionStatus.Builder setStatus(int);
10315  }
10316
10317  public final class NetworkProviderInfo implements android.os.Parcelable {
10318    method public int describeContents();
10319    method @IntRange(from=0, to=100) public int getBatteryPercentage();
10320    method @IntRange(from=0, to=4) public int getConnectionStrength();
10321    method @NonNull public String getDeviceName();
10322    method public int getDeviceType();
10323    method @NonNull public android.os.Bundle getExtras();
10324    method @NonNull public String getModelName();
10325    method public boolean isBatteryCharging();
10326    method public void writeToParcel(@NonNull android.os.Parcel, int);
10327    field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.sharedconnectivity.app.NetworkProviderInfo> CREATOR;
10328    field public static final int DEVICE_TYPE_AUTO = 5; // 0x5
10329    field public static final int DEVICE_TYPE_LAPTOP = 3; // 0x3
10330    field public static final int DEVICE_TYPE_PHONE = 1; // 0x1
10331    field public static final int DEVICE_TYPE_TABLET = 2; // 0x2
10332    field public static final int DEVICE_TYPE_UNKNOWN = 0; // 0x0
10333    field public static final int DEVICE_TYPE_WATCH = 4; // 0x4
10334  }
10335
10336  public static final class NetworkProviderInfo.Builder {
10337    ctor public NetworkProviderInfo.Builder(@NonNull String, @NonNull String);
10338    method @NonNull public android.net.wifi.sharedconnectivity.app.NetworkProviderInfo build();
10339    method @NonNull public android.net.wifi.sharedconnectivity.app.NetworkProviderInfo.Builder setBatteryCharging(boolean);
10340    method @NonNull public android.net.wifi.sharedconnectivity.app.NetworkProviderInfo.Builder setBatteryPercentage(@IntRange(from=0, to=100) int);
10341    method @NonNull public android.net.wifi.sharedconnectivity.app.NetworkProviderInfo.Builder setConnectionStrength(@IntRange(from=0, to=4) int);
10342    method @NonNull public android.net.wifi.sharedconnectivity.app.NetworkProviderInfo.Builder setDeviceName(@NonNull String);
10343    method @NonNull public android.net.wifi.sharedconnectivity.app.NetworkProviderInfo.Builder setDeviceType(int);
10344    method @NonNull public android.net.wifi.sharedconnectivity.app.NetworkProviderInfo.Builder setExtras(@NonNull android.os.Bundle);
10345    method @NonNull public android.net.wifi.sharedconnectivity.app.NetworkProviderInfo.Builder setModelName(@NonNull String);
10346  }
10347
10348  public interface SharedConnectivityClientCallback {
10349    method public void onHotspotNetworkConnectionStatusChanged(@NonNull android.net.wifi.sharedconnectivity.app.HotspotNetworkConnectionStatus);
10350    method public void onHotspotNetworksUpdated(@NonNull java.util.List<android.net.wifi.sharedconnectivity.app.HotspotNetwork>);
10351    method public void onKnownNetworkConnectionStatusChanged(@NonNull android.net.wifi.sharedconnectivity.app.KnownNetworkConnectionStatus);
10352    method public void onKnownNetworksUpdated(@NonNull java.util.List<android.net.wifi.sharedconnectivity.app.KnownNetwork>);
10353    method public void onRegisterCallbackFailed(@NonNull Exception);
10354    method public void onServiceConnected();
10355    method public void onServiceDisconnected();
10356    method public void onSharedConnectivitySettingsChanged(@NonNull android.net.wifi.sharedconnectivity.app.SharedConnectivitySettingsState);
10357  }
10358
10359  public class SharedConnectivityManager {
10360    method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD}) public boolean connectHotspotNetwork(@NonNull android.net.wifi.sharedconnectivity.app.HotspotNetwork);
10361    method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD}) public boolean connectKnownNetwork(@NonNull android.net.wifi.sharedconnectivity.app.KnownNetwork);
10362    method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD}) public boolean disconnectHotspotNetwork(@NonNull android.net.wifi.sharedconnectivity.app.HotspotNetwork);
10363    method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD}) public boolean forgetKnownNetwork(@NonNull android.net.wifi.sharedconnectivity.app.KnownNetwork);
10364    method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD}) public android.net.wifi.sharedconnectivity.app.HotspotNetworkConnectionStatus getHotspotNetworkConnectionStatus();
10365    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();
10366    method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD}) public android.net.wifi.sharedconnectivity.app.KnownNetworkConnectionStatus getKnownNetworkConnectionStatus();
10367    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();
10368    method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD}) public android.net.wifi.sharedconnectivity.app.SharedConnectivitySettingsState getSettingsState();
10369    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);
10370    method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD}) public boolean unregisterCallback(@NonNull android.net.wifi.sharedconnectivity.app.SharedConnectivityClientCallback);
10371  }
10372
10373  public final class SharedConnectivitySettingsState implements android.os.Parcelable {
10374    method public int describeContents();
10375    method @NonNull public android.os.Bundle getExtras();
10376    method @Nullable public android.app.PendingIntent getInstantTetherSettingsPendingIntent();
10377    method public boolean isInstantTetherEnabled();
10378    method public void writeToParcel(@NonNull android.os.Parcel, int);
10379    field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.sharedconnectivity.app.SharedConnectivitySettingsState> CREATOR;
10380  }
10381
10382  public static final class SharedConnectivitySettingsState.Builder {
10383    ctor public SharedConnectivitySettingsState.Builder();
10384    method @NonNull public android.net.wifi.sharedconnectivity.app.SharedConnectivitySettingsState build();
10385    method @NonNull public android.net.wifi.sharedconnectivity.app.SharedConnectivitySettingsState.Builder setExtras(@NonNull android.os.Bundle);
10386    method @NonNull public android.net.wifi.sharedconnectivity.app.SharedConnectivitySettingsState.Builder setInstantTetherEnabled(boolean);
10387    method @NonNull public android.net.wifi.sharedconnectivity.app.SharedConnectivitySettingsState.Builder setInstantTetherSettingsPendingIntent(@NonNull android.app.PendingIntent);
10388  }
10389
10390}
10391
10392package android.net.wifi.sharedconnectivity.service {
10393
10394  public abstract class SharedConnectivityService extends android.app.Service {
10395    ctor public SharedConnectivityService();
10396    method public static boolean areHotspotNetworksEnabledForService(@NonNull android.content.Context);
10397    method public static boolean areKnownNetworksEnabledForService(@NonNull android.content.Context);
10398    method @Nullable public final android.os.IBinder onBind(@NonNull android.content.Intent);
10399    method public abstract void onConnectHotspotNetwork(@NonNull android.net.wifi.sharedconnectivity.app.HotspotNetwork);
10400    method public abstract void onConnectKnownNetwork(@NonNull android.net.wifi.sharedconnectivity.app.KnownNetwork);
10401    method public abstract void onDisconnectHotspotNetwork(@NonNull android.net.wifi.sharedconnectivity.app.HotspotNetwork);
10402    method public abstract void onForgetKnownNetwork(@NonNull android.net.wifi.sharedconnectivity.app.KnownNetwork);
10403    method public final void setHotspotNetworks(@NonNull java.util.List<android.net.wifi.sharedconnectivity.app.HotspotNetwork>);
10404    method public final void setKnownNetworks(@NonNull java.util.List<android.net.wifi.sharedconnectivity.app.KnownNetwork>);
10405    method public final void setSettingsState(@NonNull android.net.wifi.sharedconnectivity.app.SharedConnectivitySettingsState);
10406    method public final void updateHotspotNetworkConnectionStatus(@NonNull android.net.wifi.sharedconnectivity.app.HotspotNetworkConnectionStatus);
10407    method public final void updateKnownNetworkConnectionStatus(@NonNull android.net.wifi.sharedconnectivity.app.KnownNetworkConnectionStatus);
10408  }
10409
10410}
10411
10412package android.nfc.cardemulation {
10413
10414  public final class AidGroup implements android.os.Parcelable {
10415    ctor public AidGroup(@NonNull java.util.List<java.lang.String>, @Nullable String);
10416    method @Nullable public static android.nfc.cardemulation.AidGroup createFromXml(@NonNull org.xmlpull.v1.XmlPullParser) throws java.io.IOException, org.xmlpull.v1.XmlPullParserException;
10417    method public int describeContents();
10418    method public void dump(@NonNull android.util.proto.ProtoOutputStream);
10419    method @NonNull public java.util.List<java.lang.String> getAids();
10420    method @NonNull public String getCategory();
10421    method public void writeAsXml(@NonNull org.xmlpull.v1.XmlSerializer) throws java.io.IOException;
10422    method public void writeToParcel(@NonNull android.os.Parcel, int);
10423    field @NonNull public static final android.os.Parcelable.Creator<android.nfc.cardemulation.AidGroup> CREATOR;
10424  }
10425
10426  public final class ApduServiceInfo implements android.os.Parcelable {
10427    ctor public ApduServiceInfo(@NonNull android.content.pm.PackageManager, @NonNull android.content.pm.ResolveInfo, boolean) throws java.io.IOException, org.xmlpull.v1.XmlPullParserException;
10428    method public void addPollingLoopFilter(@NonNull String, boolean);
10429    method public void addPollingLoopPatternFilter(@NonNull String, boolean);
10430    method public int describeContents();
10431    method public void dump(@NonNull android.os.ParcelFileDescriptor, @NonNull java.io.PrintWriter, @NonNull String[]);
10432    method public void dumpDebug(@NonNull android.util.proto.ProtoOutputStream);
10433    method @NonNull public java.util.List<android.nfc.cardemulation.AidGroup> getAidGroups();
10434    method @NonNull public java.util.List<java.lang.String> getAids();
10435    method @NonNull public String getCategoryForAid(@NonNull String);
10436    method @NonNull public android.content.ComponentName getComponent();
10437    method @NonNull public String getDescription();
10438    method @NonNull public android.nfc.cardemulation.AidGroup getDynamicAidGroupForCategory(@NonNull String);
10439    method @Nullable public String getOffHostSecureElement();
10440    method @NonNull public java.util.List<java.lang.String> getPollingLoopFilters();
10441    method @NonNull public java.util.List<java.util.regex.Pattern> getPollingLoopPatternFilters();
10442    method @NonNull public java.util.List<java.lang.String> getPrefixAids();
10443    method @NonNull public String getSettingsActivityName();
10444    method public boolean getShouldAutoTransact(@NonNull String);
10445    method @NonNull public java.util.List<java.lang.String> getSubsetAids();
10446    method public int getUid();
10447    method public boolean hasCategory(@NonNull String);
10448    method public boolean isCategoryOtherServiceEnabled();
10449    method public boolean isOnHost();
10450    method @NonNull public CharSequence loadAppLabel(@NonNull android.content.pm.PackageManager);
10451    method @NonNull public android.graphics.drawable.Drawable loadBanner(@NonNull android.content.pm.PackageManager);
10452    method @NonNull public android.graphics.drawable.Drawable loadIcon(@NonNull android.content.pm.PackageManager);
10453    method @NonNull public CharSequence loadLabel(@NonNull android.content.pm.PackageManager);
10454    method @NonNull public boolean removeDynamicAidGroupForCategory(@NonNull String);
10455    method public void removePollingLoopFilter(@NonNull String);
10456    method public void removePollingLoopPatternFilter(@NonNull String);
10457    method public boolean requiresScreenOn();
10458    method public boolean requiresUnlock();
10459    method public void resetOffHostSecureElement();
10460    method public void setCategoryOtherServiceEnabled(boolean);
10461    method public void setDynamicAidGroup(@NonNull android.nfc.cardemulation.AidGroup);
10462    method public void setOffHostSecureElement(@NonNull String);
10463    method public void setShouldDefaultToObserveMode(boolean);
10464    method public boolean shouldDefaultToObserveMode();
10465    method public void writeToParcel(@NonNull android.os.Parcel, int);
10466    field @NonNull public static final android.os.Parcelable.Creator<android.nfc.cardemulation.ApduServiceInfo> CREATOR;
10467  }
10468
10469  public final class NfcFServiceInfo implements android.os.Parcelable {
10470    ctor public NfcFServiceInfo(@NonNull android.content.pm.PackageManager, @NonNull android.content.pm.ResolveInfo) throws java.io.IOException, org.xmlpull.v1.XmlPullParserException;
10471    method public int describeContents();
10472    method public void dump(@NonNull android.os.ParcelFileDescriptor, @NonNull java.io.PrintWriter, @NonNull String[]);
10473    method public void dumpDebug(@NonNull android.util.proto.ProtoOutputStream);
10474    method @NonNull public android.content.ComponentName getComponent();
10475    method @NonNull public String getDescription();
10476    method @NonNull public String getNfcid2();
10477    method @NonNull public String getSystemCode();
10478    method @NonNull public String getT3tPmm();
10479    method public int getUid();
10480    method @NonNull public android.graphics.drawable.Drawable loadIcon(@NonNull android.content.pm.PackageManager);
10481    method @NonNull public CharSequence loadLabel(@NonNull android.content.pm.PackageManager);
10482    method public void setDynamicNfcid2(@NonNull String);
10483    method public void setDynamicSystemCode(@NonNull String);
10484    method public void writeToParcel(@NonNull android.os.Parcel, int);
10485    field @NonNull public static final android.os.Parcelable.Creator<android.nfc.cardemulation.NfcFServiceInfo> CREATOR;
10486  }
10487
10488}
10489
10490package android.os {
10491
10492  public class BatteryManager {
10493    method @RequiresPermission(android.Manifest.permission.POWER_SAVER) public boolean setChargingStateUpdateDelayMillis(int);
10494    field @RequiresPermission(android.Manifest.permission.BATTERY_STATS) public static final int BATTERY_PROPERTY_CHARGING_POLICY = 9; // 0x9
10495    field @RequiresPermission(android.Manifest.permission.BATTERY_STATS) public static final int BATTERY_PROPERTY_FIRST_USAGE_DATE = 8; // 0x8
10496    field @RequiresPermission(android.Manifest.permission.BATTERY_STATS) public static final int BATTERY_PROPERTY_MANUFACTURING_DATE = 7; // 0x7
10497    field @RequiresPermission(android.Manifest.permission.BATTERY_STATS) public static final int BATTERY_PROPERTY_PART_STATUS = 12; // 0xc
10498    field @RequiresPermission(android.Manifest.permission.BATTERY_STATS) public static final int BATTERY_PROPERTY_SERIAL_NUMBER = 11; // 0xb
10499    field @RequiresPermission(android.Manifest.permission.BATTERY_STATS) public static final int BATTERY_PROPERTY_STATE_OF_HEALTH = 10; // 0xa
10500    field public static final int CHARGING_POLICY_ADAPTIVE_AC = 3; // 0x3
10501    field public static final int CHARGING_POLICY_ADAPTIVE_AON = 2; // 0x2
10502    field public static final int CHARGING_POLICY_ADAPTIVE_LONGLIFE = 4; // 0x4
10503    field public static final int CHARGING_POLICY_DEFAULT = 1; // 0x1
10504    field public static final String EXTRA_EVENTS = "android.os.extra.EVENTS";
10505    field public static final String EXTRA_EVENT_TIMESTAMP = "android.os.extra.EVENT_TIMESTAMP";
10506    field public static final int PART_STATUS_ORIGINAL = 1; // 0x1
10507    field public static final int PART_STATUS_REPLACED = 2; // 0x2
10508    field public static final int PART_STATUS_UNSUPPORTED = 0; // 0x0
10509  }
10510
10511  public final class BatterySaverPolicyConfig implements android.os.Parcelable {
10512    method public int describeContents();
10513    method public float getAdjustBrightnessFactor();
10514    method public boolean getAdvertiseIsEnabled();
10515    method public boolean getDeferFullBackup();
10516    method public boolean getDeferKeyValueBackup();
10517    method @NonNull public java.util.Map<java.lang.String,java.lang.String> getDeviceSpecificSettings();
10518    method public boolean getDisableAnimation();
10519    method public boolean getDisableAod();
10520    method public boolean getDisableLaunchBoost();
10521    method public boolean getDisableOptionalSensors();
10522    method @Deprecated public boolean getDisableSoundTrigger();
10523    method public boolean getDisableVibration();
10524    method public boolean getEnableAdjustBrightness();
10525    method public boolean getEnableDataSaver();
10526    method public boolean getEnableFirewall();
10527    method public boolean getEnableNightMode();
10528    method public boolean getEnableQuickDoze();
10529    method public boolean getForceAllAppsStandby();
10530    method public boolean getForceBackgroundCheck();
10531    method public int getLocationMode();
10532    method public int getSoundTriggerMode();
10533    method public void writeToParcel(android.os.Parcel, int);
10534    field @NonNull public static final android.os.Parcelable.Creator<android.os.BatterySaverPolicyConfig> CREATOR;
10535  }
10536
10537  public static final class BatterySaverPolicyConfig.Builder {
10538    ctor public BatterySaverPolicyConfig.Builder();
10539    ctor public BatterySaverPolicyConfig.Builder(@NonNull android.os.BatterySaverPolicyConfig);
10540    method @NonNull public android.os.BatterySaverPolicyConfig.Builder addDeviceSpecificSetting(@NonNull String, @NonNull String);
10541    method @NonNull public android.os.BatterySaverPolicyConfig build();
10542    method @NonNull public android.os.BatterySaverPolicyConfig.Builder setAdjustBrightnessFactor(float);
10543    method @NonNull public android.os.BatterySaverPolicyConfig.Builder setAdvertiseIsEnabled(boolean);
10544    method @NonNull public android.os.BatterySaverPolicyConfig.Builder setDeferFullBackup(boolean);
10545    method @NonNull public android.os.BatterySaverPolicyConfig.Builder setDeferKeyValueBackup(boolean);
10546    method @NonNull public android.os.BatterySaverPolicyConfig.Builder setDisableAnimation(boolean);
10547    method @NonNull public android.os.BatterySaverPolicyConfig.Builder setDisableAod(boolean);
10548    method @NonNull public android.os.BatterySaverPolicyConfig.Builder setDisableLaunchBoost(boolean);
10549    method @NonNull public android.os.BatterySaverPolicyConfig.Builder setDisableOptionalSensors(boolean);
10550    method @Deprecated @NonNull public android.os.BatterySaverPolicyConfig.Builder setDisableSoundTrigger(boolean);
10551    method @NonNull public android.os.BatterySaverPolicyConfig.Builder setDisableVibration(boolean);
10552    method @NonNull public android.os.BatterySaverPolicyConfig.Builder setEnableAdjustBrightness(boolean);
10553    method @NonNull public android.os.BatterySaverPolicyConfig.Builder setEnableDataSaver(boolean);
10554    method @NonNull public android.os.BatterySaverPolicyConfig.Builder setEnableFirewall(boolean);
10555    method @NonNull public android.os.BatterySaverPolicyConfig.Builder setEnableNightMode(boolean);
10556    method @NonNull public android.os.BatterySaverPolicyConfig.Builder setEnableQuickDoze(boolean);
10557    method @NonNull public android.os.BatterySaverPolicyConfig.Builder setForceAllAppsStandby(boolean);
10558    method @NonNull public android.os.BatterySaverPolicyConfig.Builder setForceBackgroundCheck(boolean);
10559    method @NonNull public android.os.BatterySaverPolicyConfig.Builder setLocationMode(int);
10560    method @NonNull public android.os.BatterySaverPolicyConfig.Builder setSoundTriggerMode(int);
10561  }
10562
10563  public final class BatteryStatsManager {
10564    method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.BATTERY_STATS, android.Manifest.permission.UPDATE_DEVICE_STATS}) public android.os.connectivity.CellularBatteryStats getCellularBatteryStats();
10565    method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.BATTERY_STATS, android.Manifest.permission.UPDATE_DEVICE_STATS}) public android.os.connectivity.WifiBatteryStats getWifiBatteryStats();
10566    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportBleScanReset();
10567    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportBleScanResults(@NonNull android.os.WorkSource, int);
10568    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportBleScanStarted(@NonNull android.os.WorkSource, boolean);
10569    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportBleScanStopped(@NonNull android.os.WorkSource, boolean);
10570    method @Deprecated @RequiresPermission(android.Manifest.permission.BLUETOOTH_CONNECT) public void reportBluetoothOff(int, int, @NonNull String);
10571    method @Deprecated @RequiresPermission(android.Manifest.permission.BLUETOOTH_CONNECT) public void reportBluetoothOn(int, int, @NonNull String);
10572    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportFullWifiLockAcquiredFromSource(@NonNull android.os.WorkSource);
10573    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportFullWifiLockReleasedFromSource(@NonNull android.os.WorkSource);
10574    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportMobileRadioPowerState(boolean, int);
10575    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportWifiBatchedScanStartedFromSource(@NonNull android.os.WorkSource, @IntRange(from=0) int);
10576    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportWifiBatchedScanStoppedFromSource(@NonNull android.os.WorkSource);
10577    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportWifiMulticastDisabled(@NonNull android.os.WorkSource);
10578    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportWifiMulticastEnabled(@NonNull android.os.WorkSource);
10579    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportWifiOff();
10580    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportWifiOn();
10581    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportWifiRadioPowerState(boolean, int);
10582    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportWifiRssiChanged(@IntRange(from=0xffffff81, to=0) int);
10583    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportWifiScanStartedFromSource(@NonNull android.os.WorkSource);
10584    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportWifiScanStoppedFromSource(@NonNull android.os.WorkSource);
10585    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportWifiState(int, @Nullable String);
10586    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportWifiSupplicantStateChanged(int, boolean);
10587    field public static final int WIFI_STATE_OFF = 0; // 0x0
10588    field public static final int WIFI_STATE_OFF_SCANNING = 1; // 0x1
10589    field public static final int WIFI_STATE_ON_CONNECTED_P2P = 5; // 0x5
10590    field public static final int WIFI_STATE_ON_CONNECTED_STA = 4; // 0x4
10591    field public static final int WIFI_STATE_ON_CONNECTED_STA_P2P = 6; // 0x6
10592    field public static final int WIFI_STATE_ON_DISCONNECTED = 3; // 0x3
10593    field public static final int WIFI_STATE_ON_NO_NETWORKS = 2; // 0x2
10594    field public static final int WIFI_STATE_SOFT_AP = 7; // 0x7
10595    field public static final int WIFI_SUPPL_STATE_ASSOCIATED = 7; // 0x7
10596    field public static final int WIFI_SUPPL_STATE_ASSOCIATING = 6; // 0x6
10597    field public static final int WIFI_SUPPL_STATE_AUTHENTICATING = 5; // 0x5
10598    field public static final int WIFI_SUPPL_STATE_COMPLETED = 10; // 0xa
10599    field public static final int WIFI_SUPPL_STATE_DISCONNECTED = 1; // 0x1
10600    field public static final int WIFI_SUPPL_STATE_DORMANT = 11; // 0xb
10601    field public static final int WIFI_SUPPL_STATE_FOUR_WAY_HANDSHAKE = 8; // 0x8
10602    field public static final int WIFI_SUPPL_STATE_GROUP_HANDSHAKE = 9; // 0x9
10603    field public static final int WIFI_SUPPL_STATE_INACTIVE = 3; // 0x3
10604    field public static final int WIFI_SUPPL_STATE_INTERFACE_DISABLED = 2; // 0x2
10605    field public static final int WIFI_SUPPL_STATE_INVALID = 0; // 0x0
10606    field public static final int WIFI_SUPPL_STATE_SCANNING = 4; // 0x4
10607    field public static final int WIFI_SUPPL_STATE_UNINITIALIZED = 12; // 0xc
10608  }
10609
10610  public class Binder implements android.os.IBinder {
10611    method public int handleShellCommand(@NonNull android.os.ParcelFileDescriptor, @NonNull android.os.ParcelFileDescriptor, @NonNull android.os.ParcelFileDescriptor, @NonNull String[]);
10612    method public final void markVintfStability();
10613    method public static void setProxyTransactListener(@Nullable android.os.Binder.ProxyTransactListener);
10614  }
10615
10616  public static interface Binder.ProxyTransactListener {
10617    method public void onTransactEnded(@Nullable Object);
10618    method @Nullable public Object onTransactStarted(@NonNull android.os.IBinder, int);
10619  }
10620
10621  public final class BugreportManager {
10622    method @RequiresPermission(android.Manifest.permission.DUMP) @WorkerThread public void preDumpUiData();
10623    method @RequiresPermission(android.Manifest.permission.DUMP) public void requestBugreport(@NonNull android.os.BugreportParams, @Nullable CharSequence, @Nullable CharSequence);
10624    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);
10625    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);
10626  }
10627
10628  public abstract static class BugreportManager.BugreportCallback {
10629    method public void onFinished(@NonNull String);
10630  }
10631
10632  public final class BugreportParams {
10633    ctor public BugreportParams(int);
10634    ctor public BugreportParams(int, int);
10635    method public int getFlags();
10636    method public int getMode();
10637    field public static final int BUGREPORT_FLAG_DEFER_CONSENT = 2; // 0x2
10638    field public static final int BUGREPORT_FLAG_KEEP_BUGREPORT_ON_RETRIEVAL = 4; // 0x4
10639    field public static final int BUGREPORT_FLAG_USE_PREDUMPED_UI_DATA = 1; // 0x1
10640    field public static final int BUGREPORT_MODE_FULL = 0; // 0x0
10641    field public static final int BUGREPORT_MODE_INTERACTIVE = 1; // 0x1
10642    field public static final int BUGREPORT_MODE_ONBOARDING = 7; // 0x7
10643    field public static final int BUGREPORT_MODE_REMOTE = 2; // 0x2
10644    field public static final int BUGREPORT_MODE_TELEPHONY = 4; // 0x4
10645    field public static final int BUGREPORT_MODE_WEAR = 3; // 0x3
10646    field public static final int BUGREPORT_MODE_WIFI = 5; // 0x5
10647  }
10648
10649  public static class Build.VERSION {
10650    field @NonNull public static final java.util.Set<java.lang.String> KNOWN_CODENAMES;
10651    field @NonNull public static final String PREVIEW_SDK_FINGERPRINT;
10652  }
10653
10654  public final class ConfigUpdate {
10655    field public static final String ACTION_UPDATE_CARRIER_ID_DB = "android.os.action.UPDATE_CARRIER_ID_DB";
10656    field public static final String ACTION_UPDATE_CARRIER_PROVISIONING_URLS = "android.intent.action.UPDATE_CARRIER_PROVISIONING_URLS";
10657    field public static final String ACTION_UPDATE_CONFIG = "android.os.action.UPDATE_CONFIG";
10658    field public static final String ACTION_UPDATE_CONVERSATION_ACTIONS = "android.intent.action.UPDATE_CONVERSATION_ACTIONS";
10659    field public static final String ACTION_UPDATE_CT_LOGS = "android.intent.action.UPDATE_CT_LOGS";
10660    field public static final String ACTION_UPDATE_EMERGENCY_NUMBER_DB = "android.os.action.UPDATE_EMERGENCY_NUMBER_DB";
10661    field public static final String ACTION_UPDATE_INTENT_FIREWALL = "android.intent.action.UPDATE_INTENT_FIREWALL";
10662    field public static final String ACTION_UPDATE_LANG_ID = "android.intent.action.UPDATE_LANG_ID";
10663    field public static final String ACTION_UPDATE_NETWORK_WATCHLIST = "android.intent.action.UPDATE_NETWORK_WATCHLIST";
10664    field public static final String ACTION_UPDATE_PINS = "android.intent.action.UPDATE_PINS";
10665    field public static final String ACTION_UPDATE_SMART_SELECTION = "android.intent.action.UPDATE_SMART_SELECTION";
10666    field public static final String ACTION_UPDATE_SMS_SHORT_CODES = "android.intent.action.UPDATE_SMS_SHORT_CODES";
10667    field public static final String EXTRA_DOMAIN = "android.os.extra.DOMAIN";
10668    field public static final String EXTRA_REQUIRED_HASH = "android.os.extra.REQUIRED_HASH";
10669    field public static final String EXTRA_VERSION = "android.os.extra.VERSION";
10670  }
10671
10672  public class DeviceIdleManager {
10673    method @RequiresPermission(android.Manifest.permission.DEVICE_POWER) public void endIdle(@NonNull String);
10674  }
10675
10676  public class Environment {
10677    method @NonNull public static java.io.File getDataCePackageDirectoryForUser(@NonNull java.util.UUID, @NonNull android.os.UserHandle, @NonNull String);
10678    method @NonNull public static java.io.File getDataDePackageDirectoryForUser(@NonNull java.util.UUID, @NonNull android.os.UserHandle, @NonNull String);
10679    method @NonNull public static java.util.Collection<java.io.File> getInternalMediaDirectories();
10680    method @NonNull public static java.io.File getOdmDirectory();
10681    method @NonNull public static java.io.File getOemDirectory();
10682    method @NonNull public static java.io.File getProductDirectory();
10683    method @Deprecated @NonNull public static java.io.File getProductServicesDirectory();
10684    method @NonNull public static java.io.File getSystemExtDirectory();
10685    method @NonNull public static java.io.File getVendorDirectory();
10686  }
10687
10688  public class HidlMemory implements java.io.Closeable {
10689    ctor public HidlMemory(@NonNull String, @IntRange(from=0) long, @Nullable android.os.NativeHandle);
10690    method public void close() throws java.io.IOException;
10691    method @NonNull public android.os.HidlMemory dup() throws java.io.IOException;
10692    method protected void finalize();
10693    method @Nullable public android.os.NativeHandle getHandle();
10694    method @NonNull public String getName();
10695    method public long getSize();
10696    method @Nullable public android.os.NativeHandle releaseHandle();
10697  }
10698
10699  public class HidlSupport {
10700    method public static boolean deepEquals(Object, Object);
10701    method public static int deepHashCode(Object);
10702    method public static int getPidIfSharable();
10703    method public static boolean interfacesEqual(android.os.IHwInterface, Object);
10704  }
10705
10706  public abstract class HwBinder implements android.os.IHwBinder {
10707    ctor public HwBinder();
10708    method public static final void configureRpcThreadpool(long, boolean);
10709    method public static void enableInstrumentation();
10710    method public static final android.os.IHwBinder getService(String, String) throws java.util.NoSuchElementException, android.os.RemoteException;
10711    method public static final android.os.IHwBinder getService(String, String, boolean) throws java.util.NoSuchElementException, android.os.RemoteException;
10712    method public static final void joinRpcThreadpool();
10713    method public abstract void onTransact(int, android.os.HwParcel, android.os.HwParcel, int) throws android.os.RemoteException;
10714    method public final void registerService(String) throws android.os.RemoteException;
10715    method public final void transact(int, android.os.HwParcel, android.os.HwParcel, int) throws android.os.RemoteException;
10716  }
10717
10718  public class HwBlob {
10719    ctor public HwBlob(int);
10720    method public final void copyToBoolArray(long, boolean[], int);
10721    method public final void copyToDoubleArray(long, double[], int);
10722    method public final void copyToFloatArray(long, float[], int);
10723    method public final void copyToInt16Array(long, short[], int);
10724    method public final void copyToInt32Array(long, int[], int);
10725    method public final void copyToInt64Array(long, long[], int);
10726    method public final void copyToInt8Array(long, byte[], int);
10727    method public final boolean getBool(long);
10728    method public final double getDouble(long);
10729    method public final long getFieldHandle(long);
10730    method public final float getFloat(long);
10731    method public final short getInt16(long);
10732    method public final int getInt32(long);
10733    method public final long getInt64(long);
10734    method public final byte getInt8(long);
10735    method public final String getString(long);
10736    method public final long handle();
10737    method public final void putBlob(long, android.os.HwBlob);
10738    method public final void putBool(long, boolean);
10739    method public final void putBoolArray(long, boolean[]);
10740    method public final void putDouble(long, double);
10741    method public final void putDoubleArray(long, double[]);
10742    method public final void putFloat(long, float);
10743    method public final void putFloatArray(long, float[]);
10744    method public final void putHidlMemory(long, @NonNull android.os.HidlMemory);
10745    method public final void putInt16(long, short);
10746    method public final void putInt16Array(long, short[]);
10747    method public final void putInt32(long, int);
10748    method public final void putInt32Array(long, int[]);
10749    method public final void putInt64(long, long);
10750    method public final void putInt64Array(long, long[]);
10751    method public final void putInt8(long, byte);
10752    method public final void putInt8Array(long, byte[]);
10753    method public final void putNativeHandle(long, @Nullable android.os.NativeHandle);
10754    method public final void putString(long, String);
10755    method public static Boolean[] wrapArray(@NonNull boolean[]);
10756    method public static Long[] wrapArray(@NonNull long[]);
10757    method public static Byte[] wrapArray(@NonNull byte[]);
10758    method public static Short[] wrapArray(@NonNull short[]);
10759    method public static Integer[] wrapArray(@NonNull int[]);
10760    method public static Float[] wrapArray(@NonNull float[]);
10761    method public static Double[] wrapArray(@NonNull double[]);
10762  }
10763
10764  public class HwParcel {
10765    ctor public HwParcel();
10766    method public final void enforceInterface(String);
10767    method public final boolean readBool();
10768    method public final java.util.ArrayList<java.lang.Boolean> readBoolVector();
10769    method public final android.os.HwBlob readBuffer(long);
10770    method public final double readDouble();
10771    method public final java.util.ArrayList<java.lang.Double> readDoubleVector();
10772    method public final android.os.HwBlob readEmbeddedBuffer(long, long, long, boolean);
10773    method @NonNull public final android.os.HidlMemory readEmbeddedHidlMemory(long, long, long);
10774    method @Nullable public final android.os.NativeHandle readEmbeddedNativeHandle(long, long);
10775    method public final float readFloat();
10776    method public final java.util.ArrayList<java.lang.Float> readFloatVector();
10777    method @NonNull public final android.os.HidlMemory readHidlMemory();
10778    method public final short readInt16();
10779    method public final java.util.ArrayList<java.lang.Short> readInt16Vector();
10780    method public final int readInt32();
10781    method public final java.util.ArrayList<java.lang.Integer> readInt32Vector();
10782    method public final long readInt64();
10783    method public final java.util.ArrayList<java.lang.Long> readInt64Vector();
10784    method public final byte readInt8();
10785    method public final java.util.ArrayList<java.lang.Byte> readInt8Vector();
10786    method @Nullable public final android.os.NativeHandle readNativeHandle();
10787    method @NonNull public final java.util.ArrayList<android.os.NativeHandle> readNativeHandleVector();
10788    method public final String readString();
10789    method public final java.util.ArrayList<java.lang.String> readStringVector();
10790    method public final android.os.IHwBinder readStrongBinder();
10791    method public final void release();
10792    method public final void releaseTemporaryStorage();
10793    method public final void send();
10794    method public final void verifySuccess();
10795    method public final void writeBool(boolean);
10796    method public final void writeBoolVector(java.util.ArrayList<java.lang.Boolean>);
10797    method public final void writeBuffer(android.os.HwBlob);
10798    method public final void writeDouble(double);
10799    method public final void writeDoubleVector(java.util.ArrayList<java.lang.Double>);
10800    method public final void writeFloat(float);
10801    method public final void writeFloatVector(java.util.ArrayList<java.lang.Float>);
10802    method public final void writeHidlMemory(@NonNull android.os.HidlMemory);
10803    method public final void writeInt16(short);
10804    method public final void writeInt16Vector(java.util.ArrayList<java.lang.Short>);
10805    method public final void writeInt32(int);
10806    method public final void writeInt32Vector(java.util.ArrayList<java.lang.Integer>);
10807    method public final void writeInt64(long);
10808    method public final void writeInt64Vector(java.util.ArrayList<java.lang.Long>);
10809    method public final void writeInt8(byte);
10810    method public final void writeInt8Vector(java.util.ArrayList<java.lang.Byte>);
10811    method public final void writeInterfaceToken(String);
10812    method public final void writeNativeHandle(@Nullable android.os.NativeHandle);
10813    method public final void writeNativeHandleVector(@NonNull java.util.ArrayList<android.os.NativeHandle>);
10814    method public final void writeStatus(int);
10815    method public final void writeString(String);
10816    method public final void writeStringVector(java.util.ArrayList<java.lang.String>);
10817    method public final void writeStrongBinder(android.os.IHwBinder);
10818    field public static final int STATUS_SUCCESS = 0; // 0x0
10819  }
10820
10821  public interface IHwBinder {
10822    method public boolean linkToDeath(android.os.IHwBinder.DeathRecipient, long);
10823    method public android.os.IHwInterface queryLocalInterface(String);
10824    method public void transact(int, android.os.HwParcel, android.os.HwParcel, int) throws android.os.RemoteException;
10825    method public boolean unlinkToDeath(android.os.IHwBinder.DeathRecipient);
10826  }
10827
10828  public static interface IHwBinder.DeathRecipient {
10829    method public void serviceDied(long);
10830  }
10831
10832  public interface IHwInterface {
10833    method public android.os.IHwBinder asBinder();
10834  }
10835
10836  public class IncidentManager {
10837    method @RequiresPermission(android.Manifest.permission.APPROVE_INCIDENT_REPORTS) public void approveReport(android.net.Uri);
10838    method @RequiresPermission("android.permission.REQUEST_INCIDENT_REPORT_APPROVAL") public void cancelAuthorization(android.os.IncidentManager.AuthListener);
10839    method @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public void deleteIncidentReports(android.net.Uri);
10840    method @RequiresPermission(android.Manifest.permission.APPROVE_INCIDENT_REPORTS) public void denyReport(android.net.Uri);
10841    method @Nullable @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public android.os.IncidentManager.IncidentReport getIncidentReport(android.net.Uri);
10842    method @NonNull @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public java.util.List<android.net.Uri> getIncidentReportList(String);
10843    method @RequiresPermission(android.Manifest.permission.APPROVE_INCIDENT_REPORTS) public java.util.List<android.os.IncidentManager.PendingReport> getPendingReports();
10844    method public void registerSection(int, @NonNull String, @NonNull java.util.concurrent.Executor, @NonNull android.os.IncidentManager.DumpCallback);
10845    method @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public void reportIncident(android.os.IncidentReportArgs);
10846    method @RequiresPermission("android.permission.REQUEST_INCIDENT_REPORT_APPROVAL") public void requestAuthorization(int, String, int, android.os.IncidentManager.AuthListener);
10847    method public void unregisterSection(int);
10848    field public static final int FLAG_ALLOW_CONSENTLESS_BUGREPORT = 2; // 0x2
10849    field public static final int FLAG_CONFIRMATION_DIALOG = 1; // 0x1
10850    field public static final int PRIVACY_POLICY_AUTO = 200; // 0xc8
10851    field public static final int PRIVACY_POLICY_EXPLICIT = 100; // 0x64
10852    field public static final int PRIVACY_POLICY_LOCAL = 0; // 0x0
10853  }
10854
10855  public static class IncidentManager.AuthListener {
10856    ctor public IncidentManager.AuthListener();
10857    method public void onReportApproved();
10858    method public void onReportDenied();
10859  }
10860
10861  public static class IncidentManager.DumpCallback {
10862    ctor public IncidentManager.DumpCallback();
10863    method public void onDumpSection(int, @NonNull java.io.OutputStream);
10864  }
10865
10866  public static class IncidentManager.IncidentReport implements java.io.Closeable android.os.Parcelable {
10867    ctor public IncidentManager.IncidentReport(android.os.Parcel);
10868    method public void close();
10869    method public int describeContents();
10870    method public java.io.InputStream getInputStream() throws java.io.IOException;
10871    method public long getPrivacyPolicy();
10872    method public long getTimestamp();
10873    method public void writeToParcel(android.os.Parcel, int);
10874    field @NonNull public static final android.os.Parcelable.Creator<android.os.IncidentManager.IncidentReport> CREATOR;
10875  }
10876
10877  public static class IncidentManager.PendingReport {
10878    ctor public IncidentManager.PendingReport(@NonNull android.net.Uri);
10879    method public int getFlags();
10880    method @NonNull public String getRequestingPackage();
10881    method public long getTimestamp();
10882    method @NonNull public android.net.Uri getUri();
10883  }
10884
10885  public final class IncidentReportArgs implements android.os.Parcelable {
10886    ctor public IncidentReportArgs();
10887    ctor public IncidentReportArgs(android.os.Parcel);
10888    method public void addHeader(byte[]);
10889    method public void addSection(int);
10890    method public boolean containsSection(int);
10891    method public int describeContents();
10892    method public boolean isAll();
10893    method public void readFromParcel(android.os.Parcel);
10894    method public int sectionCount();
10895    method public void setAll(boolean);
10896    method public void setPrivacyPolicy(int);
10897    method public void writeToParcel(android.os.Parcel, int);
10898    field @NonNull public static final android.os.Parcelable.Creator<android.os.IncidentReportArgs> CREATOR;
10899  }
10900
10901  public final class NativeHandle implements java.io.Closeable {
10902    ctor public NativeHandle();
10903    ctor public NativeHandle(@NonNull java.io.FileDescriptor, boolean);
10904    ctor public NativeHandle(@NonNull java.io.FileDescriptor[], @NonNull int[], boolean);
10905    method public void close() throws java.io.IOException;
10906    method @NonNull public android.os.NativeHandle dup() throws java.io.IOException;
10907    method @NonNull public java.io.FileDescriptor getFileDescriptor();
10908    method @NonNull public java.io.FileDescriptor[] getFileDescriptors();
10909    method @NonNull public int[] getInts();
10910    method public boolean hasSingleFileDescriptor();
10911  }
10912
10913  public final class NewUserRequest {
10914    method @Nullable public String getAccountName();
10915    method @Nullable public android.os.PersistableBundle getAccountOptions();
10916    method @Nullable public String getAccountType();
10917    method @Nullable public String getName();
10918    method @Nullable public android.graphics.Bitmap getUserIcon();
10919    method @NonNull public String getUserType();
10920    method public boolean isAdmin();
10921    method public boolean isEphemeral();
10922  }
10923
10924  public static final class NewUserRequest.Builder {
10925    ctor public NewUserRequest.Builder();
10926    method @NonNull public android.os.NewUserRequest build();
10927    method @NonNull public android.os.NewUserRequest.Builder setAccountName(@Nullable String);
10928    method @NonNull public android.os.NewUserRequest.Builder setAccountOptions(@Nullable android.os.PersistableBundle);
10929    method @NonNull public android.os.NewUserRequest.Builder setAccountType(@Nullable String);
10930    method @NonNull public android.os.NewUserRequest.Builder setAdmin();
10931    method @NonNull public android.os.NewUserRequest.Builder setEphemeral();
10932    method @NonNull public android.os.NewUserRequest.Builder setName(@Nullable String);
10933    method @NonNull public android.os.NewUserRequest.Builder setUserIcon(@Nullable android.graphics.Bitmap);
10934    method @NonNull public android.os.NewUserRequest.Builder setUserType(@NonNull String);
10935  }
10936
10937  public final class NewUserResponse {
10938    method public int getOperationResult();
10939    method @Nullable public android.os.UserHandle getUser();
10940    method public boolean isSuccessful();
10941  }
10942
10943  public interface Parcelable {
10944    method public default int getStability();
10945    field public static final int PARCELABLE_STABILITY_LOCAL = 0; // 0x0
10946    field public static final int PARCELABLE_STABILITY_VINTF = 1; // 0x1
10947  }
10948
10949  public final class ParcelableHolder implements android.os.Parcelable {
10950    ctor public ParcelableHolder(int);
10951    method public int describeContents();
10952    method @Nullable public <T extends android.os.Parcelable> T getParcelable(@NonNull Class<T>);
10953    method public int getStability();
10954    method public void readFromParcel(@NonNull android.os.Parcel);
10955    method public void setParcelable(@Nullable android.os.Parcelable);
10956    method public void writeToParcel(@NonNull android.os.Parcel, int);
10957    field @NonNull public static final android.os.Parcelable.Creator<android.os.ParcelableHolder> CREATOR;
10958  }
10959
10960  public class PowerExemptionManager {
10961    method @RequiresPermission(android.Manifest.permission.CHANGE_DEVICE_IDLE_TEMP_WHITELIST) public void addToTemporaryAllowList(@NonNull String, int, @Nullable String, long);
10962    method @RequiresPermission(android.Manifest.permission.CHANGE_DEVICE_IDLE_TEMP_WHITELIST) public long addToTemporaryAllowListForEvent(@NonNull String, int, @Nullable String, int);
10963    field public static final int EVENT_MMS = 2; // 0x2
10964    field public static final int EVENT_SMS = 1; // 0x1
10965    field public static final int EVENT_UNSPECIFIED = 0; // 0x0
10966    field public static final int REASON_ACCOUNT_TRANSFER = 104; // 0x68
10967    field public static final int REASON_ACTIVITY_RECOGNITION = 103; // 0x67
10968    field public static final int REASON_BLUETOOTH_BROADCAST = 203; // 0xcb
10969    field public static final int REASON_GEOFENCING = 100; // 0x64
10970    field public static final int REASON_LOCATION_PROVIDER = 312; // 0x138
10971    field public static final int REASON_OTHER = 1; // 0x1
10972    field public static final int REASON_PUSH_MESSAGING = 101; // 0x65
10973    field public static final int REASON_PUSH_MESSAGING_OVER_QUOTA = 102; // 0x66
10974    field public static final int REASON_REFRESH_SAFETY_SOURCES = 208; // 0xd0
10975    field public static final int REASON_UNKNOWN = 0; // 0x0
10976    field public static final int TEMPORARY_ALLOW_LIST_TYPE_FOREGROUND_SERVICE_ALLOWED = 0; // 0x0
10977    field public static final int TEMPORARY_ALLOW_LIST_TYPE_FOREGROUND_SERVICE_NOT_ALLOWED = 1; // 0x1
10978    field public static final int TEMPORARY_ALLOW_LIST_TYPE_NONE = -1; // 0xffffffff
10979  }
10980
10981  public final class PowerManager {
10982    method @RequiresPermission(allOf={android.Manifest.permission.READ_DREAM_STATE, android.Manifest.permission.WRITE_DREAM_STATE}) public void dream(long);
10983    method @RequiresPermission(android.Manifest.permission.DEVICE_POWER) public boolean forceSuspend();
10984    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();
10985    method @NonNull public android.os.BatterySaverPolicyConfig getFullPowerSavePolicy();
10986    method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_LOW_POWER_STANDBY, android.Manifest.permission.DEVICE_POWER}) public android.os.PowerManager.LowPowerStandbyPolicy getLowPowerStandbyPolicy();
10987    method public int getPowerSaveModeTrigger();
10988    method @RequiresPermission(android.Manifest.permission.READ_DREAM_STATE) public boolean isAmbientDisplayAvailable();
10989    method @RequiresPermission(android.Manifest.permission.READ_DREAM_STATE) public boolean isAmbientDisplaySuppressed();
10990    method @RequiresPermission(android.Manifest.permission.READ_DREAM_STATE) public boolean isAmbientDisplaySuppressedForToken(@NonNull String);
10991    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_LOW_POWER_STANDBY, android.Manifest.permission.DEVICE_POWER}) public boolean isLowPowerStandbySupported();
10992    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>);
10993    method @RequiresPermission(anyOf={android.Manifest.permission.DEVICE_POWER, android.Manifest.permission.POWER_SAVER}) public boolean setAdaptivePowerSaveEnabled(boolean);
10994    method @RequiresPermission(anyOf={android.Manifest.permission.DEVICE_POWER, android.Manifest.permission.POWER_SAVER}) public boolean setAdaptivePowerSavePolicy(@NonNull android.os.BatterySaverPolicyConfig);
10995    method @RequiresPermission(anyOf={android.Manifest.permission.BATTERY_PREDICTION, android.Manifest.permission.DEVICE_POWER}) public void setBatteryDischargePrediction(@NonNull java.time.Duration, boolean);
10996    method @RequiresPermission(android.Manifest.permission.POWER_SAVER) public boolean setDynamicPowerSaveHint(boolean, int);
10997    method @RequiresPermission(anyOf={android.Manifest.permission.DEVICE_POWER, android.Manifest.permission.POWER_SAVER}) public boolean setFullPowerSavePolicy(@NonNull android.os.BatterySaverPolicyConfig);
10998    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_LOW_POWER_STANDBY, android.Manifest.permission.DEVICE_POWER}) public void setLowPowerStandbyActiveDuringMaintenance(boolean);
10999    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_LOW_POWER_STANDBY, android.Manifest.permission.DEVICE_POWER}) public void setLowPowerStandbyEnabled(boolean);
11000    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_LOW_POWER_STANDBY, android.Manifest.permission.DEVICE_POWER}) public void setLowPowerStandbyPolicy(@Nullable android.os.PowerManager.LowPowerStandbyPolicy);
11001    method @RequiresPermission(anyOf={android.Manifest.permission.DEVICE_POWER, android.Manifest.permission.POWER_SAVER}) public boolean setPowerSaveModeEnabled(boolean);
11002    method @RequiresPermission(android.Manifest.permission.WRITE_DREAM_STATE) public void suppressAmbientDisplay(@NonNull String, boolean);
11003    method @RequiresPermission(anyOf={android.Manifest.permission.DEVICE_POWER, android.Manifest.permission.USER_ACTIVITY}) public void userActivity(long, int, int);
11004    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";
11005    field public static final int POWER_SAVE_MODE_TRIGGER_DYNAMIC = 1; // 0x1
11006    field public static final int POWER_SAVE_MODE_TRIGGER_PERCENTAGE = 0; // 0x0
11007    field @Deprecated public static final String REBOOT_USERSPACE = "userspace";
11008    field public static final int SOUND_TRIGGER_MODE_ALL_DISABLED = 2; // 0x2
11009    field public static final int SOUND_TRIGGER_MODE_ALL_ENABLED = 0; // 0x0
11010    field public static final int SOUND_TRIGGER_MODE_CRITICAL_ONLY = 1; // 0x1
11011    field public static final int USER_ACTIVITY_EVENT_ACCESSIBILITY = 3; // 0x3
11012    field public static final int USER_ACTIVITY_EVENT_BUTTON = 1; // 0x1
11013    field public static final int USER_ACTIVITY_EVENT_OTHER = 0; // 0x0
11014    field public static final int USER_ACTIVITY_EVENT_TOUCH = 2; // 0x2
11015    field public static final int USER_ACTIVITY_FLAG_INDIRECT = 2; // 0x2
11016    field public static final int USER_ACTIVITY_FLAG_NO_CHANGE_LIGHTS = 1; // 0x1
11017  }
11018
11019  public static final class PowerManager.LowPowerStandbyPolicy {
11020    ctor public PowerManager.LowPowerStandbyPolicy(@NonNull String, @NonNull java.util.Set<java.lang.String>, int, @NonNull java.util.Set<java.lang.String>);
11021    method @NonNull public java.util.Set<java.lang.String> getAllowedFeatures();
11022    method public int getAllowedReasons();
11023    method @NonNull public java.util.Set<java.lang.String> getExemptPackages();
11024    method @NonNull public String getIdentifier();
11025  }
11026
11027  public static final class PowerManager.LowPowerStandbyPortDescription {
11028    ctor public PowerManager.LowPowerStandbyPortDescription(int, int, int);
11029    ctor public PowerManager.LowPowerStandbyPortDescription(int, int, int, @Nullable java.net.InetAddress);
11030    method @Nullable public java.net.InetAddress getLocalAddress();
11031    method public int getPortMatcher();
11032    method public int getPortNumber();
11033    method public int getProtocol();
11034    field public static final int MATCH_PORT_LOCAL = 1; // 0x1
11035    field public static final int MATCH_PORT_REMOTE = 2; // 0x2
11036    field public static final int PROTOCOL_TCP = 6; // 0x6
11037    field public static final int PROTOCOL_UDP = 17; // 0x11
11038  }
11039
11040  public final class PowerManager.LowPowerStandbyPortsLock {
11041    method @RequiresPermission(android.Manifest.permission.SET_LOW_POWER_STANDBY_PORTS) public void acquire();
11042    method protected void finalize();
11043    method @RequiresPermission(android.Manifest.permission.SET_LOW_POWER_STANDBY_PORTS) public void release();
11044  }
11045
11046  @Deprecated public class PowerWhitelistManager {
11047    method @Deprecated @RequiresPermission(android.Manifest.permission.DEVICE_POWER) public void addToWhitelist(@NonNull String);
11048    method @Deprecated @RequiresPermission(android.Manifest.permission.DEVICE_POWER) public void addToWhitelist(@NonNull java.util.List<java.lang.String>);
11049    method @Deprecated @RequiresPermission(android.Manifest.permission.DEVICE_POWER) public void removeFromWhitelist(@NonNull String);
11050    method @Deprecated @RequiresPermission(android.Manifest.permission.CHANGE_DEVICE_IDLE_TEMP_WHITELIST) public void whitelistAppTemporarily(@NonNull String, long, int, @Nullable String);
11051    method @Deprecated @RequiresPermission(android.Manifest.permission.CHANGE_DEVICE_IDLE_TEMP_WHITELIST) public void whitelistAppTemporarily(@NonNull String, long);
11052    method @Deprecated @RequiresPermission(android.Manifest.permission.CHANGE_DEVICE_IDLE_TEMP_WHITELIST) public long whitelistAppTemporarilyForEvent(@NonNull String, int, @Nullable String);
11053    method @Deprecated @RequiresPermission(android.Manifest.permission.CHANGE_DEVICE_IDLE_TEMP_WHITELIST) public long whitelistAppTemporarilyForEvent(@NonNull String, int, int, @Nullable String);
11054    field @Deprecated public static final int EVENT_MMS = 2; // 0x2
11055    field @Deprecated public static final int EVENT_SMS = 1; // 0x1
11056    field @Deprecated public static final int EVENT_UNSPECIFIED = 0; // 0x0
11057    field @Deprecated public static final int REASON_ACTIVITY_RECOGNITION = 103; // 0x67
11058    field @Deprecated public static final int REASON_GEOFENCING = 100; // 0x64
11059    field @Deprecated public static final int REASON_LOCATION_PROVIDER = 312; // 0x138
11060    field @Deprecated public static final int REASON_OTHER = 1; // 0x1
11061    field @Deprecated public static final int REASON_PUSH_MESSAGING = 101; // 0x65
11062    field @Deprecated public static final int REASON_PUSH_MESSAGING_OVER_QUOTA = 102; // 0x66
11063    field @Deprecated public static final int REASON_UNKNOWN = 0; // 0x0
11064    field @Deprecated public static final int TEMPORARY_ALLOWLIST_TYPE_FOREGROUND_SERVICE_ALLOWED = 0; // 0x0
11065    field @Deprecated public static final int TEMPORARY_ALLOWLIST_TYPE_FOREGROUND_SERVICE_NOT_ALLOWED = 1; // 0x1
11066  }
11067
11068  public class RecoverySystem {
11069    method @RequiresPermission(android.Manifest.permission.RECOVERY) public static void cancelScheduledUpdate(android.content.Context) throws java.io.IOException;
11070    method @RequiresPermission(anyOf={android.Manifest.permission.RECOVERY, android.Manifest.permission.REBOOT}) public static void clearPrepareForUnattendedUpdate(@NonNull android.content.Context) throws java.io.IOException;
11071    method @RequiresPermission(android.Manifest.permission.RECOVERY) public static void installPackage(android.content.Context, java.io.File, boolean) throws java.io.IOException;
11072    method @RequiresPermission(anyOf={android.Manifest.permission.RECOVERY, android.Manifest.permission.REBOOT}) public static boolean isPreparedForUnattendedUpdate(@NonNull android.content.Context) throws java.io.IOException;
11073    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;
11074    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;
11075    method @RequiresPermission(android.Manifest.permission.RECOVERY) public static void processPackage(android.content.Context, java.io.File, android.os.RecoverySystem.ProgressListener) throws java.io.IOException;
11076    method @Deprecated @RequiresPermission(android.Manifest.permission.RECOVERY) public static void rebootAndApply(@NonNull android.content.Context, @NonNull String, @NonNull String) throws java.io.IOException;
11077    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;
11078    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;
11079    method @RequiresPermission(android.Manifest.permission.RECOVERY) public static void scheduleUpdateOnBoot(android.content.Context, java.io.File) throws java.io.IOException;
11080    method @Deprecated public static boolean verifyPackageCompatibility(java.io.File) throws java.io.IOException;
11081    field public static final int RESUME_ON_REBOOT_REBOOT_ERROR_INVALID_PACKAGE_NAME = 2000; // 0x7d0
11082    field public static final int RESUME_ON_REBOOT_REBOOT_ERROR_LSKF_NOT_CAPTURED = 3000; // 0xbb8
11083    field public static final int RESUME_ON_REBOOT_REBOOT_ERROR_PROVIDER_PREPARATION_FAILURE = 5000; // 0x1388
11084    field public static final int RESUME_ON_REBOOT_REBOOT_ERROR_SLOT_MISMATCH = 4000; // 0xfa0
11085    field public static final int RESUME_ON_REBOOT_REBOOT_ERROR_UNSPECIFIED = 1000; // 0x3e8
11086  }
11087
11088  public final class RemoteCallback implements android.os.Parcelable {
11089    ctor public RemoteCallback(android.os.RemoteCallback.OnResultListener);
11090    ctor public RemoteCallback(@NonNull android.os.RemoteCallback.OnResultListener, @Nullable android.os.Handler);
11091    method public int describeContents();
11092    method public void sendResult(@Nullable android.os.Bundle);
11093    method public void writeToParcel(android.os.Parcel, int);
11094    field @NonNull public static final android.os.Parcelable.Creator<android.os.RemoteCallback> CREATOR;
11095  }
11096
11097  public static interface RemoteCallback.OnResultListener {
11098    method public void onResult(@Nullable android.os.Bundle);
11099  }
11100
11101  public class ServiceSpecificException extends java.lang.RuntimeException {
11102    ctor public ServiceSpecificException(int, @Nullable String);
11103    ctor public ServiceSpecificException(int);
11104    field public final int errorCode;
11105  }
11106
11107  public class SystemConfigManager {
11108    method @NonNull @RequiresPermission(android.Manifest.permission.READ_CARRIER_APP_INFO) public java.util.Set<java.lang.String> getDisabledUntilUsedPreinstalledCarrierApps();
11109    method @NonNull @RequiresPermission(android.Manifest.permission.READ_CARRIER_APP_INFO) public java.util.Map<java.lang.String,java.util.List<java.lang.String>> getDisabledUntilUsedPreinstalledCarrierAssociatedApps();
11110    method @NonNull @RequiresPermission(android.Manifest.permission.GET_RUNTIME_PERMISSIONS) public int[] getSystemPermissionUids(@NonNull String);
11111  }
11112
11113  public class SystemProperties {
11114    method @NonNull public static String get(@NonNull String);
11115    method @NonNull public static String get(@NonNull String, @Nullable String);
11116    method public static boolean getBoolean(@NonNull String, boolean);
11117    method public static int getInt(@NonNull String, int);
11118    method public static long getLong(@NonNull String, long);
11119  }
11120
11121  public class SystemUpdateManager {
11122    method @RequiresPermission(anyOf={android.Manifest.permission.READ_SYSTEM_UPDATE_INFO, android.Manifest.permission.RECOVERY}) public android.os.Bundle retrieveSystemUpdateInfo();
11123    method @RequiresPermission(android.Manifest.permission.RECOVERY) public void updateSystemUpdateInfo(android.os.PersistableBundle);
11124    field public static final String KEY_IS_SECURITY_UPDATE = "is_security_update";
11125    field public static final String KEY_STATUS = "status";
11126    field public static final String KEY_TARGET_BUILD_FINGERPRINT = "target_build_fingerprint";
11127    field public static final String KEY_TARGET_SECURITY_PATCH_LEVEL = "target_security_patch_level";
11128    field public static final String KEY_TITLE = "title";
11129    field public static final int STATUS_IDLE = 1; // 0x1
11130    field public static final int STATUS_IN_PROGRESS = 3; // 0x3
11131    field public static final int STATUS_UNKNOWN = 0; // 0x0
11132    field public static final int STATUS_WAITING_DOWNLOAD = 2; // 0x2
11133    field public static final int STATUS_WAITING_INSTALL = 4; // 0x4
11134    field public static final int STATUS_WAITING_REBOOT = 5; // 0x5
11135  }
11136
11137  public final class Trace {
11138    field public static final long TRACE_TAG_AIDL = 16777216L; // 0x1000000L
11139  }
11140
11141  public class UpdateEngine {
11142    ctor public UpdateEngine();
11143    method @NonNull @WorkerThread public android.os.UpdateEngine.AllocateSpaceResult allocateSpace(@NonNull String, @NonNull String[]);
11144    method public void applyPayload(String, long, long, String[]);
11145    method public void applyPayload(@NonNull android.content.res.AssetFileDescriptor, @NonNull String[]);
11146    method public boolean bind(android.os.UpdateEngineCallback, android.os.Handler);
11147    method public boolean bind(android.os.UpdateEngineCallback);
11148    method public void cancel();
11149    method @WorkerThread public int cleanupAppliedPayload();
11150    method public void resetShouldSwitchSlotOnReboot();
11151    method public void resetStatus();
11152    method public void resume();
11153    method public void setShouldSwitchSlotOnReboot(@NonNull String);
11154    method public void suspend();
11155    method public boolean unbind();
11156    method public boolean verifyPayloadMetadata(String);
11157  }
11158
11159  public static final class UpdateEngine.AllocateSpaceResult {
11160    method public int getErrorCode();
11161    method public long getFreeSpaceRequired();
11162  }
11163
11164  public static final class UpdateEngine.ErrorCodeConstants {
11165    ctor public UpdateEngine.ErrorCodeConstants();
11166    field public static final int DEVICE_CORRUPTED = 61; // 0x3d
11167    field public static final int DOWNLOAD_PAYLOAD_VERIFICATION_ERROR = 12; // 0xc
11168    field public static final int DOWNLOAD_TRANSFER_ERROR = 9; // 0x9
11169    field public static final int ERROR = 1; // 0x1
11170    field public static final int FILESYSTEM_COPIER_ERROR = 4; // 0x4
11171    field public static final int INSTALL_DEVICE_OPEN_ERROR = 7; // 0x7
11172    field public static final int KERNEL_DEVICE_OPEN_ERROR = 8; // 0x8
11173    field public static final int NOT_ENOUGH_SPACE = 60; // 0x3c
11174    field public static final int PAYLOAD_HASH_MISMATCH_ERROR = 10; // 0xa
11175    field public static final int PAYLOAD_MISMATCHED_TYPE_ERROR = 6; // 0x6
11176    field public static final int PAYLOAD_SIZE_MISMATCH_ERROR = 11; // 0xb
11177    field public static final int PAYLOAD_TIMESTAMP_ERROR = 51; // 0x33
11178    field public static final int POST_INSTALL_RUNNER_ERROR = 5; // 0x5
11179    field public static final int SUCCESS = 0; // 0x0
11180    field public static final int UPDATED_BUT_NOT_ACTIVE = 52; // 0x34
11181  }
11182
11183  public static final class UpdateEngine.UpdateStatusConstants {
11184    ctor public UpdateEngine.UpdateStatusConstants();
11185    field public static final int ATTEMPTING_ROLLBACK = 8; // 0x8
11186    field public static final int CHECKING_FOR_UPDATE = 1; // 0x1
11187    field public static final int DISABLED = 9; // 0x9
11188    field public static final int DOWNLOADING = 3; // 0x3
11189    field public static final int FINALIZING = 5; // 0x5
11190    field public static final int IDLE = 0; // 0x0
11191    field public static final int REPORTING_ERROR_EVENT = 7; // 0x7
11192    field public static final int UPDATED_NEED_REBOOT = 6; // 0x6
11193    field public static final int UPDATE_AVAILABLE = 2; // 0x2
11194    field public static final int VERIFYING = 4; // 0x4
11195  }
11196
11197  public abstract class UpdateEngineCallback {
11198    ctor public UpdateEngineCallback();
11199    method public abstract void onPayloadApplicationComplete(int);
11200    method public abstract void onStatusUpdate(int, float);
11201  }
11202
11203  public final class UserHandle implements android.os.Parcelable {
11204    method @NonNull public static String formatUid(int);
11205    method public static int getAppId(int);
11206    method public int getIdentifier();
11207    method public static int getSharedAppGid(int);
11208    method public int getUid(int);
11209    method @Deprecated public boolean isOwner();
11210    method public boolean isSystem();
11211    method public static int myUserId();
11212    method public static android.os.UserHandle of(int);
11213    field @NonNull public static final android.os.UserHandle ALL;
11214    field @NonNull public static final android.os.UserHandle CURRENT;
11215    field @NonNull public static final android.os.UserHandle SYSTEM;
11216  }
11217
11218  public class UserManager {
11219    method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public boolean canHaveRestrictedProfile();
11220    method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public void clearSeedAccountData();
11221    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;
11222    method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS}) public android.os.NewUserResponse createUser(@NonNull android.os.NewUserRequest);
11223    method @NonNull public java.util.List<android.os.UserHandle> getAllProfiles();
11224    method @NonNull public java.util.List<android.os.UserHandle> getEnabledProfiles();
11225    method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS, android.Manifest.permission.QUERY_USERS}) public android.os.UserHandle getMainUser();
11226    method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS, android.Manifest.permission.QUERY_USERS}) public android.os.UserHandle getPreviousForegroundUser();
11227    method @NonNull public String getProfileLabel();
11228    method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.INTERACT_ACROSS_USERS}) public android.os.UserHandle getProfileParent(@NonNull android.os.UserHandle);
11229    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS, android.Manifest.permission.QUERY_USERS}) public int getRemainingCreatableProfileCount(@NonNull String);
11230    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS, android.Manifest.permission.QUERY_USERS}) public int getRemainingCreatableUserCount(@NonNull String);
11231    method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS, android.Manifest.permission.QUERY_USERS}) public android.os.UserHandle getRestrictedProfileParent();
11232    method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public String getSeedAccountName();
11233    method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public android.os.PersistableBundle getSeedAccountOptions();
11234    method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public String getSeedAccountType();
11235    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS}) public long[] getSerialNumbersOfUsers(boolean);
11236    method @NonNull public android.graphics.drawable.Drawable getUserBadge();
11237    method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS}) public java.util.List<android.os.UserHandle> getUserHandles(boolean);
11238    method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.GET_ACCOUNTS_PRIVILEGED}) public android.graphics.Bitmap getUserIcon();
11239    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);
11240    method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.QUERY_USERS}) public int getUserRestrictionSource(String, android.os.UserHandle);
11241    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);
11242    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.INTERACT_ACROSS_USERS}) public int getUserSwitchability();
11243    method @NonNull @RequiresPermission(anyOf={"android.permission.INTERACT_ACROSS_USERS", "android.permission.MANAGE_USERS"}) public java.util.Set<android.os.UserHandle> getVisibleUsers();
11244    method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public boolean hasRestrictedProfiles();
11245    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);
11246    method public boolean isCloneProfile();
11247    method @Deprecated public boolean isCredentialSharableWithParent();
11248    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS, android.Manifest.permission.QUERY_USERS}) public boolean isGuestUser();
11249    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS, android.Manifest.permission.QUERY_USERS}) public boolean isMainUser();
11250    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);
11251    method @Deprecated public boolean isMediaSharedWithParent();
11252    method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS, android.Manifest.permission.QUERY_USERS}) public boolean isPrimaryUser();
11253    method public boolean isPrivateProfile();
11254    method public static boolean isRemoveResultSuccessful(int);
11255    method public boolean isRestrictedProfile();
11256    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);
11257    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.QUERY_USERS}) public boolean isSameProfileGroup(@NonNull android.os.UserHandle, @NonNull android.os.UserHandle);
11258    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();
11259    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS, android.Manifest.permission.QUERY_USERS}) public boolean isUserOfType(@NonNull String);
11260    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.INTERACT_ACROSS_USERS}, conditional=true) public boolean isUserUnlockingOrUnlocked(@NonNull android.os.UserHandle);
11261    method public boolean isUserVisible();
11262    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS}) public boolean removeUser(@NonNull android.os.UserHandle);
11263    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS}) public int removeUserWhenPossible(@NonNull android.os.UserHandle, boolean);
11264    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS}) public void setBootUser(@NonNull android.os.UserHandle);
11265    method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public void setUserIcon(@NonNull android.graphics.Bitmap) throws android.os.UserManager.UserOperationException;
11266    method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public void setUserName(@Nullable String);
11267    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS}) public boolean someUserHasAccount(@NonNull String, @NonNull String);
11268    field @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public static final String ACTION_CREATE_SUPERVISED_USER = "android.os.action.CREATE_SUPERVISED_USER";
11269    field public static final String ACTION_USER_RESTRICTIONS_CHANGED = "android.os.action.USER_RESTRICTIONS_CHANGED";
11270    field @Deprecated public static final String DISALLOW_OEM_UNLOCK = "no_oem_unlock";
11271    field public static final String DISALLOW_RUN_IN_BACKGROUND = "no_run_in_background";
11272    field public static final int REMOVE_RESULT_ALREADY_BEING_REMOVED = 2; // 0x2
11273    field public static final int REMOVE_RESULT_DEFERRED = 1; // 0x1
11274    field public static final int REMOVE_RESULT_ERROR_MAIN_USER_PERMANENT_ADMIN = -5; // 0xfffffffb
11275    field public static final int REMOVE_RESULT_ERROR_SYSTEM_USER = -4; // 0xfffffffc
11276    field public static final int REMOVE_RESULT_ERROR_UNKNOWN = -1; // 0xffffffff
11277    field public static final int REMOVE_RESULT_ERROR_USER_NOT_FOUND = -3; // 0xfffffffd
11278    field public static final int REMOVE_RESULT_ERROR_USER_RESTRICTION = -2; // 0xfffffffe
11279    field public static final int REMOVE_RESULT_REMOVED = 0; // 0x0
11280    field public static final int RESTRICTION_NOT_SET = 0; // 0x0
11281    field public static final int RESTRICTION_SOURCE_DEVICE_OWNER = 2; // 0x2
11282    field public static final int RESTRICTION_SOURCE_PROFILE_OWNER = 4; // 0x4
11283    field public static final int RESTRICTION_SOURCE_SYSTEM = 1; // 0x1
11284    field public static final int SWITCHABILITY_STATUS_OK = 0; // 0x0
11285    field public static final int SWITCHABILITY_STATUS_SYSTEM_USER_LOCKED = 4; // 0x4
11286    field public static final int SWITCHABILITY_STATUS_USER_IN_CALL = 1; // 0x1
11287    field public static final int SWITCHABILITY_STATUS_USER_SWITCH_DISALLOWED = 2; // 0x2
11288    field public static final int USER_OPERATION_ERROR_USER_ACCOUNT_ALREADY_EXISTS = 7; // 0x7
11289    field public static final String USER_TYPE_FULL_GUEST = "android.os.usertype.full.GUEST";
11290    field public static final String USER_TYPE_FULL_SECONDARY = "android.os.usertype.full.SECONDARY";
11291    field public static final String USER_TYPE_FULL_SYSTEM = "android.os.usertype.full.SYSTEM";
11292    field public static final String USER_TYPE_SYSTEM_HEADLESS = "android.os.usertype.system.HEADLESS";
11293  }
11294
11295  public static final class UserManager.EnforcingUser implements android.os.Parcelable {
11296    method public int describeContents();
11297    method public android.os.UserHandle getUserHandle();
11298    method public int getUserRestrictionSource();
11299    method public void writeToParcel(android.os.Parcel, int);
11300    field @NonNull public static final android.os.Parcelable.Creator<android.os.UserManager.EnforcingUser> CREATOR;
11301  }
11302
11303  public abstract class Vibrator {
11304    method @RequiresPermission(android.Manifest.permission.ACCESS_VIBRATOR_STATE) public void addVibratorStateListener(@NonNull android.os.Vibrator.OnVibratorStateChangedListener);
11305    method @RequiresPermission(android.Manifest.permission.ACCESS_VIBRATOR_STATE) public void addVibratorStateListener(@NonNull java.util.concurrent.Executor, @NonNull android.os.Vibrator.OnVibratorStateChangedListener);
11306    method @RequiresPermission(android.Manifest.permission.ACCESS_VIBRATOR_STATE) public boolean isVibrating();
11307    method @RequiresPermission(android.Manifest.permission.ACCESS_VIBRATOR_STATE) public void removeVibratorStateListener(@NonNull android.os.Vibrator.OnVibratorStateChangedListener);
11308  }
11309
11310  public static interface Vibrator.OnVibratorStateChangedListener {
11311    method public void onVibratorStateChanged(boolean);
11312  }
11313
11314  public class WorkSource implements android.os.Parcelable {
11315    ctor public WorkSource(int);
11316    ctor public WorkSource(int, @NonNull String);
11317    method public android.os.WorkSource.WorkChain createWorkChain();
11318    method @Nullable public String getPackageName(int);
11319    method public int getUid(int);
11320    method @Nullable public java.util.List<android.os.WorkSource.WorkChain> getWorkChains();
11321    method public boolean isEmpty();
11322    method public int size();
11323    method @NonNull public android.os.WorkSource withoutNames();
11324  }
11325
11326  public static final class WorkSource.WorkChain implements android.os.Parcelable {
11327    ctor public WorkSource.WorkChain();
11328    method public android.os.WorkSource.WorkChain addNode(int, @Nullable String);
11329    method public int describeContents();
11330    method public String getAttributionTag();
11331    method public int getAttributionUid();
11332    method public void writeToParcel(android.os.Parcel, int);
11333    field @NonNull public static final android.os.Parcelable.Creator<android.os.WorkSource.WorkChain> CREATOR;
11334  }
11335
11336}
11337
11338package android.os.connectivity {
11339
11340  public final class CellularBatteryStats implements android.os.Parcelable {
11341    method public int describeContents();
11342    method public long getEnergyConsumedMaMillis();
11343    method public long getIdleTimeMillis();
11344    method public long getKernelActiveTimeMillis();
11345    method public long getLoggingDurationMillis();
11346    method public long getMonitoredRailChargeConsumedMaMillis();
11347    method public long getNumBytesRx();
11348    method public long getNumBytesTx();
11349    method public long getNumPacketsRx();
11350    method public long getNumPacketsTx();
11351    method public long getRxTimeMillis();
11352    method public long getSleepTimeMillis();
11353    method @NonNull public long getTimeInRatMicros(int);
11354    method @NonNull public long getTimeInRxSignalStrengthLevelMicros(@IntRange(from=android.telephony.CellSignalStrength.SIGNAL_STRENGTH_NONE_OR_UNKNOWN, to=android.telephony.CellSignalStrength.SIGNAL_STRENGTH_GREAT) int);
11355    method public void writeToParcel(@NonNull android.os.Parcel, int);
11356    field @NonNull public static final android.os.Parcelable.Creator<android.os.connectivity.CellularBatteryStats> CREATOR;
11357  }
11358
11359  public final class WifiActivityEnergyInfo implements android.os.Parcelable {
11360    ctor public WifiActivityEnergyInfo(long, int, @IntRange(from=0) long, @IntRange(from=0) long, @IntRange(from=0) long, @IntRange(from=0) long);
11361    method public int describeContents();
11362    method @IntRange(from=0) public long getControllerEnergyUsedMicroJoules();
11363    method @IntRange(from=0) public long getControllerIdleDurationMillis();
11364    method @IntRange(from=0) public long getControllerRxDurationMillis();
11365    method @IntRange(from=0) public long getControllerScanDurationMillis();
11366    method @IntRange(from=0) public long getControllerTxDurationMillis();
11367    method public int getStackState();
11368    method public long getTimeSinceBootMillis();
11369    method public void writeToParcel(@NonNull android.os.Parcel, int);
11370    field @NonNull public static final android.os.Parcelable.Creator<android.os.connectivity.WifiActivityEnergyInfo> CREATOR;
11371    field public static final int STACK_STATE_INVALID = 0; // 0x0
11372    field public static final int STACK_STATE_STATE_ACTIVE = 1; // 0x1
11373    field public static final int STACK_STATE_STATE_IDLE = 3; // 0x3
11374    field public static final int STACK_STATE_STATE_SCANNING = 2; // 0x2
11375  }
11376
11377  public final class WifiBatteryStats implements android.os.Parcelable {
11378    method public int describeContents();
11379    method public long getAppScanRequestCount();
11380    method public long getEnergyConsumedMaMillis();
11381    method public long getIdleTimeMillis();
11382    method public long getKernelActiveTimeMillis();
11383    method public long getLoggingDurationMillis();
11384    method public long getMonitoredRailChargeConsumedMaMillis();
11385    method public long getNumBytesRx();
11386    method public long getNumBytesTx();
11387    method public long getNumPacketsRx();
11388    method public long getNumPacketsTx();
11389    method public long getRxTimeMillis();
11390    method public long getScanTimeMillis();
11391    method public long getSleepTimeMillis();
11392    method public long getTxTimeMillis();
11393    method public void writeToParcel(@NonNull android.os.Parcel, int);
11394    field @NonNull public static final android.os.Parcelable.Creator<android.os.connectivity.WifiBatteryStats> CREATOR;
11395  }
11396
11397}
11398
11399package android.os.image {
11400
11401  public class DynamicSystemClient {
11402    ctor public DynamicSystemClient(@NonNull android.content.Context);
11403    method @RequiresPermission(android.Manifest.permission.INSTALL_DYNAMIC_SYSTEM) public void bind();
11404    method public void setOnStatusChangedListener(@NonNull java.util.concurrent.Executor, @NonNull android.os.image.DynamicSystemClient.OnStatusChangedListener);
11405    method public void setOnStatusChangedListener(@NonNull android.os.image.DynamicSystemClient.OnStatusChangedListener);
11406    method @RequiresPermission(android.Manifest.permission.INSTALL_DYNAMIC_SYSTEM) public void start(@NonNull android.net.Uri, long);
11407    method @RequiresPermission(android.Manifest.permission.INSTALL_DYNAMIC_SYSTEM) public void start(@NonNull android.net.Uri, long, long);
11408    method @RequiresPermission(android.Manifest.permission.INSTALL_DYNAMIC_SYSTEM) public void unbind();
11409    field public static final int CAUSE_ERROR_EXCEPTION = 6; // 0x6
11410    field public static final int CAUSE_ERROR_INVALID_URL = 4; // 0x4
11411    field public static final int CAUSE_ERROR_IO = 3; // 0x3
11412    field public static final int CAUSE_ERROR_IPC = 5; // 0x5
11413    field public static final int CAUSE_INSTALL_CANCELLED = 2; // 0x2
11414    field public static final int CAUSE_INSTALL_COMPLETED = 1; // 0x1
11415    field public static final int CAUSE_NOT_SPECIFIED = 0; // 0x0
11416    field public static final int STATUS_IN_PROGRESS = 2; // 0x2
11417    field public static final int STATUS_IN_USE = 4; // 0x4
11418    field public static final int STATUS_NOT_STARTED = 1; // 0x1
11419    field public static final int STATUS_READY = 3; // 0x3
11420    field public static final int STATUS_UNKNOWN = 0; // 0x0
11421  }
11422
11423  public static interface DynamicSystemClient.OnStatusChangedListener {
11424    method public void onStatusChanged(int, int, long, @Nullable Throwable);
11425  }
11426
11427}
11428
11429package android.os.storage {
11430
11431  public class StorageManager {
11432    method @WorkerThread public void allocateBytes(@NonNull java.util.UUID, long, @RequiresPermission int) throws java.io.IOException;
11433    method @WorkerThread public void allocateBytes(java.io.FileDescriptor, long, @RequiresPermission int) throws java.io.IOException;
11434    method @WorkerThread public long getAllocatableBytes(@NonNull java.util.UUID, @RequiresPermission int) throws java.io.IOException;
11435    method @RequiresPermission(android.Manifest.permission.WRITE_MEDIA_STORAGE) public int getExternalStorageMountMode(int, @NonNull String);
11436    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getInternalStorageRemainingLifetime();
11437    method public static boolean hasIsolatedStorage();
11438    method public void updateExternalStorageFileQuotaType(@NonNull java.io.File, int) throws java.io.IOException;
11439    field @RequiresPermission(android.Manifest.permission.ALLOCATE_AGGRESSIVE) public static final int FLAG_ALLOCATE_AGGRESSIVE = 1; // 0x1
11440    field public static final int MOUNT_MODE_EXTERNAL_ANDROID_WRITABLE = 4; // 0x4
11441    field public static final int MOUNT_MODE_EXTERNAL_DEFAULT = 1; // 0x1
11442    field public static final int MOUNT_MODE_EXTERNAL_INSTALLER = 2; // 0x2
11443    field public static final int MOUNT_MODE_EXTERNAL_NONE = 0; // 0x0
11444    field public static final int MOUNT_MODE_EXTERNAL_PASS_THROUGH = 3; // 0x3
11445    field public static final int QUOTA_TYPE_MEDIA_AUDIO = 2; // 0x2
11446    field public static final int QUOTA_TYPE_MEDIA_IMAGE = 1; // 0x1
11447    field public static final int QUOTA_TYPE_MEDIA_NONE = 0; // 0x0
11448    field public static final int QUOTA_TYPE_MEDIA_VIDEO = 3; // 0x3
11449  }
11450
11451  public final class StorageVolume implements android.os.Parcelable {
11452    method @NonNull public String getId();
11453    method public boolean isExternallyManaged();
11454  }
11455
11456}
11457
11458package android.permission {
11459
11460  public final class AdminPermissionControlParams implements android.os.Parcelable {
11461    method public boolean canAdminGrantSensorsPermissions();
11462    method public int describeContents();
11463    method public int getGrantState();
11464    method @NonNull public String getGranteePackageName();
11465    method @NonNull public String getPermission();
11466    method public void writeToParcel(@NonNull android.os.Parcel, int);
11467    field @NonNull public static final android.os.Parcelable.Creator<android.permission.AdminPermissionControlParams> CREATOR;
11468  }
11469
11470  public final class PermissionControllerManager {
11471    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>);
11472    method @RequiresPermission(android.Manifest.permission.MANAGE_APP_HIBERNATION) public void getHibernationEligibility(@NonNull String, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.IntConsumer);
11473    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[]>);
11474    method public void getUnusedAppCount(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.IntConsumer);
11475    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);
11476    method @RequiresPermission(anyOf={android.Manifest.permission.GRANT_RUNTIME_PERMISSIONS, android.Manifest.permission.RESTORE_RUNTIME_PERMISSIONS}) public void stageAndApplyRuntimePermissionsBackup(@NonNull byte[], @NonNull android.os.UserHandle);
11477    field public static final int COUNT_ONLY_WHEN_GRANTED = 1; // 0x1
11478    field public static final int COUNT_WHEN_SYSTEM = 2; // 0x2
11479    field public static final int HIBERNATION_ELIGIBILITY_ELIGIBLE = 0; // 0x0
11480    field public static final int HIBERNATION_ELIGIBILITY_EXEMPT_BY_SYSTEM = 1; // 0x1
11481    field public static final int HIBERNATION_ELIGIBILITY_EXEMPT_BY_USER = 2; // 0x2
11482    field public static final int HIBERNATION_ELIGIBILITY_UNKNOWN = -1; // 0xffffffff
11483    field public static final int REASON_INSTALLER_POLICY_VIOLATION = 2; // 0x2
11484    field public static final int REASON_MALWARE = 1; // 0x1
11485  }
11486
11487  public abstract static class PermissionControllerManager.OnRevokeRuntimePermissionsCallback {
11488    ctor public PermissionControllerManager.OnRevokeRuntimePermissionsCallback();
11489    method public abstract void onRevokeRuntimePermissions(@NonNull java.util.Map<java.lang.String,java.util.List<java.lang.String>>);
11490  }
11491
11492  public abstract class PermissionControllerService extends android.app.Service {
11493    ctor public PermissionControllerService();
11494    method @Deprecated @NonNull @RequiresPermission("android.permission.MANAGE_COMPANION_DEVICES") public String getPrivilegesDescriptionStringForProfile(@NonNull String);
11495    method @BinderThread public void onApplyStagedRuntimePermissionBackup(@NonNull String, @NonNull android.os.UserHandle, @NonNull java.util.function.Consumer<java.lang.Boolean>);
11496    method @NonNull public final android.os.IBinder onBind(android.content.Intent);
11497    method @BinderThread public abstract void onCountPermissionApps(@NonNull java.util.List<java.lang.String>, int, @NonNull java.util.function.IntConsumer);
11498    method @BinderThread public abstract void onGetAppPermissions(@NonNull String, @NonNull java.util.function.Consumer<java.util.List<android.permission.RuntimePermissionPresentationInfo>>);
11499    method @BinderThread public void onGetGroupOfPlatformPermission(@NonNull String, @NonNull java.util.function.Consumer<java.lang.String>);
11500    method @RequiresPermission(android.Manifest.permission.MANAGE_APP_HIBERNATION) public void onGetHibernationEligibility(@NonNull String, @NonNull java.util.function.IntConsumer);
11501    method @BinderThread public abstract void onGetPermissionUsages(boolean, long, @NonNull java.util.function.Consumer<java.util.List<android.permission.RuntimePermissionUsageInfo>>);
11502    method @BinderThread public void onGetPlatformPermissionsForGroup(@NonNull String, @NonNull java.util.function.Consumer<java.util.List<java.lang.String>>);
11503    method @BinderThread public abstract void onGetRuntimePermissionsBackup(@NonNull android.os.UserHandle, @NonNull java.io.OutputStream, @NonNull Runnable);
11504    method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_APP_HIBERNATION) public void onGetUnusedAppCount(@NonNull java.util.function.IntConsumer);
11505    method @BinderThread public abstract void onGrantOrUpgradeDefaultRuntimePermissions(@NonNull Runnable);
11506    method @Deprecated @BinderThread public void onOneTimePermissionSessionTimeout(@NonNull String);
11507    method @BinderThread public void onOneTimePermissionSessionTimeout(@NonNull String, int);
11508    method @Deprecated @BinderThread public void onRestoreDelayedRuntimePermissionsBackup(@NonNull String, @NonNull android.os.UserHandle, @NonNull java.util.function.Consumer<java.lang.Boolean>);
11509    method @Deprecated @BinderThread public void onRestoreRuntimePermissionsBackup(@NonNull android.os.UserHandle, @NonNull java.io.InputStream, @NonNull Runnable);
11510    method @BinderThread public abstract void onRevokeRuntimePermission(@NonNull String, @NonNull String, @NonNull Runnable);
11511    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>>>);
11512    method @Deprecated @BinderThread public void onRevokeSelfPermissionsOnKill(@NonNull String, @NonNull java.util.List<java.lang.String>, @NonNull Runnable);
11513    method @BinderThread public void onRevokeSelfPermissionsOnKill(@NonNull String, @NonNull java.util.List<java.lang.String>, int, @NonNull Runnable);
11514    method @Deprecated @BinderThread public abstract void onSetRuntimePermissionGrantStateByDeviceAdmin(@NonNull String, @NonNull String, @NonNull String, int, @NonNull java.util.function.Consumer<java.lang.Boolean>);
11515    method @BinderThread public void onSetRuntimePermissionGrantStateByDeviceAdmin(@NonNull String, @NonNull android.permission.AdminPermissionControlParams, @NonNull java.util.function.Consumer<java.lang.Boolean>);
11516    method @BinderThread public void onStageAndApplyRuntimePermissionsBackup(@NonNull android.os.UserHandle, @NonNull java.io.InputStream, @NonNull Runnable);
11517    method @BinderThread public void onUpdateUserSensitivePermissionFlags(int, @NonNull java.util.concurrent.Executor, @NonNull Runnable);
11518    method @BinderThread public void onUpdateUserSensitivePermissionFlags(int, @NonNull Runnable);
11519    field public static final String SERVICE_INTERFACE = "android.permission.PermissionControllerService";
11520  }
11521
11522  public final class PermissionGroupUsage implements android.os.Parcelable {
11523    method public int describeContents();
11524    method @Nullable public CharSequence getAttributionLabel();
11525    method @Nullable public CharSequence getAttributionTag();
11526    method public long getLastAccessTimeMillis();
11527    method @NonNull public String getPackageName();
11528    method @NonNull public String getPermissionGroupName();
11529    method @NonNull public String getPersistentDeviceId();
11530    method @Nullable public CharSequence getProxyLabel();
11531    method public int getUid();
11532    method public boolean isActive();
11533    method public boolean isPhoneCall();
11534    method public void writeToParcel(@NonNull android.os.Parcel, int);
11535    field @NonNull public static final android.os.Parcelable.Creator<android.permission.PermissionGroupUsage> CREATOR;
11536  }
11537
11538  public final class PermissionManager {
11539    method public int checkDeviceIdentifierAccess(@Nullable String, @Nullable String, @Nullable String, int, int);
11540    method public int checkPermission(@NonNull String, @NonNull String, @NonNull String);
11541    method @RequiresPermission(value=android.Manifest.permission.UPDATE_APP_OPS_STATS, conditional=true) public int checkPermissionForDataDelivery(@NonNull String, @NonNull android.content.AttributionSource, @Nullable String);
11542    method @RequiresPermission(value=android.Manifest.permission.UPDATE_APP_OPS_STATS, conditional=true) public int checkPermissionForDataDeliveryFromDataSource(@NonNull String, @NonNull android.content.AttributionSource, @Nullable String);
11543    method public int checkPermissionForPreflight(@NonNull String, @NonNull android.content.AttributionSource);
11544    method @RequiresPermission(value=android.Manifest.permission.UPDATE_APP_OPS_STATS, conditional=true) public int checkPermissionForStartDataDelivery(@NonNull String, @NonNull android.content.AttributionSource, @Nullable String);
11545    method public void finishDataDelivery(@NonNull String, @NonNull android.content.AttributionSource);
11546    method @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);
11547    method @NonNull @RequiresPermission(android.Manifest.permission.ADJUST_RUNTIME_PERMISSIONS_POLICY) public java.util.Set<java.lang.String> getAutoRevokeExemptionGrantedPackages();
11548    method @NonNull @RequiresPermission(android.Manifest.permission.ADJUST_RUNTIME_PERMISSIONS_POLICY) public java.util.Set<java.lang.String> getAutoRevokeExemptionRequestedPackages();
11549    method @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);
11550    method @IntRange(from=0) @RequiresPermission(anyOf={android.Manifest.permission.ADJUST_RUNTIME_PERMISSIONS_POLICY, android.Manifest.permission.UPGRADE_RUNTIME_PERMISSIONS}) public int getRuntimePermissionsVersion();
11551    method @NonNull public java.util.List<android.permission.PermissionManager.SplitPermissionInfo> getSplitPermissions();
11552    method @RequiresPermission(android.Manifest.permission.GRANT_RUNTIME_PERMISSIONS) public void grantRuntimePermission(@NonNull String, @NonNull String, @NonNull String);
11553    method @RequiresPermission(android.Manifest.permission.REVOKE_RUNTIME_PERMISSIONS) public void revokeRuntimePermission(@NonNull String, @NonNull String, @NonNull String, @Nullable String);
11554    method @RequiresPermission(anyOf={android.Manifest.permission.ADJUST_RUNTIME_PERMISSIONS_POLICY, android.Manifest.permission.UPGRADE_RUNTIME_PERMISSIONS}) public void setRuntimePermissionsVersion(@IntRange(from=0) int);
11555    method @Deprecated @RequiresPermission(android.Manifest.permission.MANAGE_ONE_TIME_PERMISSION_SESSIONS) public void startOneTimePermissionSession(@NonNull String, long, int, int);
11556    method @RequiresPermission(android.Manifest.permission.MANAGE_ONE_TIME_PERMISSION_SESSIONS) public void startOneTimePermissionSession(@NonNull String, long, long, int, int);
11557    method @RequiresPermission(android.Manifest.permission.MANAGE_ONE_TIME_PERMISSION_SESSIONS) public void stopOneTimePermissionSession(@NonNull String);
11558    method @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);
11559    field @RequiresPermission(android.Manifest.permission.START_REVIEW_PERMISSION_DECISIONS) public static final String ACTION_REVIEW_PERMISSION_DECISIONS = "android.permission.action.REVIEW_PERMISSION_DECISIONS";
11560    field public static final String EXTRA_PERMISSION_USAGES = "android.permission.extra.PERMISSION_USAGES";
11561    field public static final int PERMISSION_GRANTED = 0; // 0x0
11562    field public static final int PERMISSION_HARD_DENIED = 2; // 0x2
11563    field public static final int PERMISSION_SOFT_DENIED = 1; // 0x1
11564  }
11565
11566  public static final class PermissionManager.PermissionState implements android.os.Parcelable {
11567    method public int describeContents();
11568    method public int getFlags();
11569    method public boolean isGranted();
11570    method public void writeToParcel(@NonNull android.os.Parcel, int);
11571    field @NonNull public static final android.os.Parcelable.Creator<android.permission.PermissionManager.PermissionState> CREATOR;
11572  }
11573
11574  public static final class PermissionManager.SplitPermissionInfo {
11575    method @NonNull public java.util.List<java.lang.String> getNewPermissions();
11576    method @NonNull public String getSplitPermission();
11577    method public int getTargetSdk();
11578  }
11579
11580  public final class RuntimePermissionPresentationInfo implements android.os.Parcelable {
11581    ctor public RuntimePermissionPresentationInfo(@NonNull CharSequence, boolean, boolean);
11582    method public int describeContents();
11583    method @NonNull public CharSequence getLabel();
11584    method public boolean isGranted();
11585    method public boolean isStandard();
11586    method public void writeToParcel(android.os.Parcel, int);
11587    field @NonNull public static final android.os.Parcelable.Creator<android.permission.RuntimePermissionPresentationInfo> CREATOR;
11588  }
11589
11590  public final class RuntimePermissionUsageInfo implements android.os.Parcelable {
11591    ctor public RuntimePermissionUsageInfo(@NonNull String, int);
11592    method public int describeContents();
11593    method public int getAppAccessCount();
11594    method @NonNull public String getName();
11595    method public void writeToParcel(android.os.Parcel, int);
11596    field @NonNull public static final android.os.Parcelable.Creator<android.permission.RuntimePermissionUsageInfo> CREATOR;
11597  }
11598
11599}
11600
11601package android.permissionpresenterservice {
11602
11603  @Deprecated public abstract class RuntimePermissionPresenterService extends android.app.Service {
11604    ctor @Deprecated public RuntimePermissionPresenterService();
11605    method @Deprecated public final void attachBaseContext(android.content.Context);
11606    method @Deprecated public final android.os.IBinder onBind(android.content.Intent);
11607    method @Deprecated public abstract java.util.List<android.content.pm.permission.RuntimePermissionPresentationInfo> onGetAppPermissions(@NonNull String);
11608    field @Deprecated public static final String SERVICE_INTERFACE = "android.permissionpresenterservice.RuntimePermissionPresenterService";
11609  }
11610
11611}
11612
11613package android.preference {
11614
11615  @Deprecated public class PreferenceManager {
11616    method @Deprecated public boolean isStorageCredentialProtected();
11617    method @Deprecated public void setStorageCredentialProtected();
11618  }
11619
11620}
11621
11622package android.print {
11623
11624  public final class PrintManager {
11625    method @RequiresPermission(android.Manifest.permission.READ_PRINT_SERVICE_RECOMMENDATIONS) public void addPrintServiceRecommendationsChangeListener(@NonNull android.print.PrintManager.PrintServiceRecommendationsChangeListener, @Nullable android.os.Handler);
11626    method @RequiresPermission(android.Manifest.permission.READ_PRINT_SERVICES) public void addPrintServicesChangeListener(@NonNull android.print.PrintManager.PrintServicesChangeListener, @Nullable android.os.Handler);
11627    method @NonNull @RequiresPermission(android.Manifest.permission.READ_PRINT_SERVICE_RECOMMENDATIONS) public java.util.List<android.printservice.recommendation.RecommendationInfo> getPrintServiceRecommendations();
11628    method @NonNull @RequiresPermission(android.Manifest.permission.READ_PRINT_SERVICES) public java.util.List<android.printservice.PrintServiceInfo> getPrintServices(int);
11629    method @RequiresPermission(android.Manifest.permission.READ_PRINT_SERVICE_RECOMMENDATIONS) public void removePrintServiceRecommendationsChangeListener(@NonNull android.print.PrintManager.PrintServiceRecommendationsChangeListener);
11630    method @RequiresPermission(android.Manifest.permission.READ_PRINT_SERVICES) public void removePrintServicesChangeListener(@NonNull android.print.PrintManager.PrintServicesChangeListener);
11631    field public static final int ENABLED_SERVICES = 1; // 0x1
11632  }
11633
11634  public static interface PrintManager.PrintServiceRecommendationsChangeListener {
11635    method public void onPrintServiceRecommendationsChanged();
11636  }
11637
11638  public static interface PrintManager.PrintServicesChangeListener {
11639    method public void onPrintServicesChanged();
11640  }
11641
11642}
11643
11644package android.printservice {
11645
11646  public final class PrintServiceInfo implements android.os.Parcelable {
11647    method public int describeContents();
11648    method @NonNull public android.content.ComponentName getComponentName();
11649    method public void writeToParcel(android.os.Parcel, int);
11650    field @NonNull public static final android.os.Parcelable.Creator<android.printservice.PrintServiceInfo> CREATOR;
11651  }
11652
11653}
11654
11655package android.printservice.recommendation {
11656
11657  public final class RecommendationInfo implements android.os.Parcelable {
11658    ctor public RecommendationInfo(@NonNull CharSequence, @NonNull CharSequence, @NonNull java.util.List<java.net.InetAddress>, boolean);
11659    ctor @Deprecated public RecommendationInfo(@NonNull CharSequence, @NonNull CharSequence, @IntRange(from=0) int, boolean);
11660    method public int describeContents();
11661    method @NonNull public java.util.List<java.net.InetAddress> getDiscoveredPrinters();
11662    method public CharSequence getName();
11663    method public int getNumDiscoveredPrinters();
11664    method public CharSequence getPackageName();
11665    method public boolean recommendsMultiVendorService();
11666    method public void writeToParcel(android.os.Parcel, int);
11667    field @NonNull public static final android.os.Parcelable.Creator<android.printservice.recommendation.RecommendationInfo> CREATOR;
11668  }
11669
11670  public abstract class RecommendationService extends android.app.Service {
11671    ctor public RecommendationService();
11672    method public final android.os.IBinder onBind(android.content.Intent);
11673    method public abstract void onConnected();
11674    method public abstract void onDisconnected();
11675    method public final void updateRecommendations(@Nullable java.util.List<android.printservice.recommendation.RecommendationInfo>);
11676    field public static final String SERVICE_INTERFACE = "android.printservice.recommendation.RecommendationService";
11677  }
11678
11679}
11680
11681package android.provider {
11682
11683  public class CallLog {
11684    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>);
11685  }
11686
11687  public static class CallLog.CallComposerLoggingException extends java.lang.Throwable {
11688    ctor public CallLog.CallComposerLoggingException(int);
11689    method public int getErrorCode();
11690    field public static final int ERROR_INPUT_CLOSED = 3; // 0x3
11691    field public static final int ERROR_REMOTE_END_CLOSED = 1; // 0x1
11692    field public static final int ERROR_STORAGE_FULL = 2; // 0x2
11693    field public static final int ERROR_UNKNOWN = 0; // 0x0
11694  }
11695
11696  @Deprecated public static final class ContactsContract.MetadataSync implements android.provider.BaseColumns android.provider.ContactsContract.MetadataSyncColumns {
11697    field @Deprecated public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/contact_metadata";
11698    field @Deprecated public static final String CONTENT_TYPE = "vnd.android.cursor.dir/contact_metadata";
11699    field @Deprecated public static final android.net.Uri CONTENT_URI;
11700    field @Deprecated public static final String METADATA_AUTHORITY = "com.android.contacts.metadata";
11701    field @Deprecated public static final android.net.Uri METADATA_AUTHORITY_URI;
11702  }
11703
11704  @Deprecated protected static interface ContactsContract.MetadataSyncColumns {
11705    field @Deprecated public static final String ACCOUNT_NAME = "account_name";
11706    field @Deprecated public static final String ACCOUNT_TYPE = "account_type";
11707    field @Deprecated public static final String DATA = "data";
11708    field @Deprecated public static final String DATA_SET = "data_set";
11709    field @Deprecated public static final String DELETED = "deleted";
11710    field @Deprecated public static final String RAW_CONTACT_BACKUP_ID = "raw_contact_backup_id";
11711  }
11712
11713  @Deprecated public static final class ContactsContract.MetadataSyncState implements android.provider.BaseColumns android.provider.ContactsContract.MetadataSyncStateColumns {
11714    field @Deprecated public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/contact_metadata_sync_state";
11715    field @Deprecated public static final String CONTENT_TYPE = "vnd.android.cursor.dir/contact_metadata_sync_state";
11716    field @Deprecated public static final android.net.Uri CONTENT_URI;
11717  }
11718
11719  @Deprecated protected static interface ContactsContract.MetadataSyncStateColumns {
11720    field @Deprecated public static final String ACCOUNT_NAME = "account_name";
11721    field @Deprecated public static final String ACCOUNT_TYPE = "account_type";
11722    field @Deprecated public static final String DATA_SET = "data_set";
11723    field @Deprecated public static final String STATE = "state";
11724  }
11725
11726  public static final class ContactsContract.Settings implements android.provider.ContactsContract.SettingsColumns {
11727    method @RequiresPermission(android.Manifest.permission.SET_DEFAULT_ACCOUNT_FOR_CONTACTS) public static void setDefaultAccount(@NonNull android.content.ContentResolver, @Nullable android.accounts.Account);
11728  }
11729
11730  public static final class ContactsContract.SimContacts {
11731    method @RequiresPermission("android.contacts.permission.MANAGE_SIM_ACCOUNTS") public static void addSimAccount(@NonNull android.content.ContentResolver, @NonNull String, @NonNull String, int, int);
11732    method @RequiresPermission("android.contacts.permission.MANAGE_SIM_ACCOUNTS") public static void removeSimAccounts(@NonNull android.content.ContentResolver, int);
11733  }
11734
11735  public final class DocumentsContract {
11736    method @NonNull public static android.net.Uri buildDocumentUriAsUser(@NonNull String, @NonNull String, @NonNull android.os.UserHandle);
11737    method public static boolean isManageMode(@NonNull android.net.Uri);
11738    method @NonNull public static android.net.Uri setManageMode(@NonNull android.net.Uri);
11739    field public static final String ACTION_DOCUMENT_ROOT_SETTINGS = "android.provider.action.DOCUMENT_ROOT_SETTINGS";
11740    field public static final String ACTION_MANAGE_DOCUMENT = "android.provider.action.MANAGE_DOCUMENT";
11741    field public static final String DOWNLOADS_PROVIDER_AUTHORITY = "downloads";
11742    field public static final String EXTERNAL_STORAGE_PROVIDER_AUTHORITY = "com.android.externalstorage.documents";
11743    field public static final String EXTRA_SHOW_ADVANCED = "android.provider.extra.SHOW_ADVANCED";
11744  }
11745
11746  public static final class DocumentsContract.Root {
11747    field public static final int FLAG_ADVANCED = 65536; // 0x10000
11748    field public static final int FLAG_HAS_SETTINGS = 131072; // 0x20000
11749    field public static final int FLAG_REMOVABLE_SD = 262144; // 0x40000
11750    field public static final int FLAG_REMOVABLE_USB = 524288; // 0x80000
11751  }
11752
11753  public final class E2eeContactKeysManager {
11754    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);
11755    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);
11756    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);
11757  }
11758
11759  public abstract class SearchIndexableData {
11760    ctor public SearchIndexableData();
11761    ctor public SearchIndexableData(android.content.Context);
11762    field public String className;
11763    field public android.content.Context context;
11764    field public boolean enabled;
11765    field public int iconResId;
11766    field public String intentAction;
11767    field public String intentTargetClass;
11768    field public String intentTargetPackage;
11769    field public String key;
11770    field public java.util.Locale locale;
11771    field public String packageName;
11772    field public int rank;
11773    field public int userId;
11774  }
11775
11776  public class SearchIndexableResource extends android.provider.SearchIndexableData {
11777    ctor public SearchIndexableResource(int, int, String, int);
11778    ctor public SearchIndexableResource(android.content.Context);
11779    field public int xmlResId;
11780  }
11781
11782  public class SearchIndexablesContract {
11783    ctor public SearchIndexablesContract();
11784    field public static final int COLUMN_INDEX_NON_INDEXABLE_KEYS_KEY_VALUE = 0; // 0x0
11785    field public static final int COLUMN_INDEX_RAW_CLASS_NAME = 7; // 0x7
11786    field public static final int COLUMN_INDEX_RAW_ENTRIES = 4; // 0x4
11787    field public static final int COLUMN_INDEX_RAW_ICON_RESID = 8; // 0x8
11788    field public static final int COLUMN_INDEX_RAW_INTENT_ACTION = 9; // 0x9
11789    field public static final int COLUMN_INDEX_RAW_INTENT_TARGET_CLASS = 11; // 0xb
11790    field public static final int COLUMN_INDEX_RAW_INTENT_TARGET_PACKAGE = 10; // 0xa
11791    field public static final int COLUMN_INDEX_RAW_KEY = 12; // 0xc
11792    field public static final int COLUMN_INDEX_RAW_KEYWORDS = 5; // 0x5
11793    field public static final int COLUMN_INDEX_RAW_RANK = 0; // 0x0
11794    field public static final int COLUMN_INDEX_RAW_SCREEN_TITLE = 6; // 0x6
11795    field public static final int COLUMN_INDEX_RAW_SUMMARY_OFF = 3; // 0x3
11796    field public static final int COLUMN_INDEX_RAW_SUMMARY_ON = 2; // 0x2
11797    field public static final int COLUMN_INDEX_RAW_TITLE = 1; // 0x1
11798    field public static final int COLUMN_INDEX_RAW_USER_ID = 13; // 0xd
11799    field public static final int COLUMN_INDEX_XML_RES_CLASS_NAME = 2; // 0x2
11800    field public static final int COLUMN_INDEX_XML_RES_ICON_RESID = 3; // 0x3
11801    field public static final int COLUMN_INDEX_XML_RES_INTENT_ACTION = 4; // 0x4
11802    field public static final int COLUMN_INDEX_XML_RES_INTENT_TARGET_CLASS = 6; // 0x6
11803    field public static final int COLUMN_INDEX_XML_RES_INTENT_TARGET_PACKAGE = 5; // 0x5
11804    field public static final int COLUMN_INDEX_XML_RES_RANK = 0; // 0x0
11805    field public static final int COLUMN_INDEX_XML_RES_RESID = 1; // 0x1
11806    field public static final String DYNAMIC_INDEXABLES_RAW = "dynamic_indexables_raw";
11807    field public static final String DYNAMIC_INDEXABLES_RAW_PATH = "settings/dynamic_indexables_raw";
11808    field public static final String INDEXABLES_RAW = "indexables_raw";
11809    field public static final String[] INDEXABLES_RAW_COLUMNS;
11810    field public static final String INDEXABLES_RAW_PATH = "settings/indexables_raw";
11811    field public static final String INDEXABLES_XML_RES = "indexables_xml_res";
11812    field public static final String[] INDEXABLES_XML_RES_COLUMNS;
11813    field public static final String INDEXABLES_XML_RES_PATH = "settings/indexables_xml_res";
11814    field public static final String NON_INDEXABLES_KEYS = "non_indexables_key";
11815    field public static final String[] NON_INDEXABLES_KEYS_COLUMNS;
11816    field public static final String NON_INDEXABLES_KEYS_PATH = "settings/non_indexables_key";
11817    field public static final String PROVIDER_INTERFACE = "android.content.action.SEARCH_INDEXABLES_PROVIDER";
11818    field public static final String SLICE_URI_PAIRS = "slice_uri_pairs";
11819    field @NonNull public static final String[] SLICE_URI_PAIRS_COLUMNS;
11820    field public static final String SLICE_URI_PAIRS_PATH = "settings/slice_uri_pairs";
11821  }
11822
11823  public static class SearchIndexablesContract.BaseColumns {
11824    field public static final String COLUMN_CLASS_NAME = "className";
11825    field public static final String COLUMN_ICON_RESID = "iconResId";
11826    field public static final String COLUMN_INTENT_ACTION = "intentAction";
11827    field public static final String COLUMN_INTENT_TARGET_CLASS = "intentTargetClass";
11828    field public static final String COLUMN_INTENT_TARGET_PACKAGE = "intentTargetPackage";
11829    field public static final String COLUMN_RANK = "rank";
11830  }
11831
11832  public static final class SearchIndexablesContract.NonIndexableKey extends android.provider.SearchIndexablesContract.BaseColumns {
11833    field public static final String COLUMN_KEY_VALUE = "key";
11834    field public static final String MIME_TYPE = "vnd.android.cursor.dir/non_indexables_key";
11835  }
11836
11837  public static final class SearchIndexablesContract.RawData extends android.provider.SearchIndexablesContract.BaseColumns {
11838    field public static final String COLUMN_ENTRIES = "entries";
11839    field public static final String COLUMN_KEY = "key";
11840    field public static final String COLUMN_KEYWORDS = "keywords";
11841    field public static final String COLUMN_SCREEN_TITLE = "screenTitle";
11842    field public static final String COLUMN_SUMMARY_OFF = "summaryOff";
11843    field public static final String COLUMN_SUMMARY_ON = "summaryOn";
11844    field public static final String COLUMN_TITLE = "title";
11845    field public static final String COLUMN_USER_ID = "user_id";
11846    field public static final String MIME_TYPE = "vnd.android.cursor.dir/indexables_raw";
11847  }
11848
11849  public static final class SearchIndexablesContract.SliceUriPairColumns {
11850    field public static final String KEY = "key";
11851    field public static final String SLICE_URI = "slice_uri";
11852  }
11853
11854  public static final class SearchIndexablesContract.XmlResource extends android.provider.SearchIndexablesContract.BaseColumns {
11855    field public static final String COLUMN_XML_RESID = "xmlResId";
11856    field public static final String MIME_TYPE = "vnd.android.cursor.dir/indexables_xml_res";
11857  }
11858
11859  public abstract class SearchIndexablesProvider extends android.content.ContentProvider {
11860    ctor public SearchIndexablesProvider();
11861    method public final int delete(android.net.Uri, String, String[]);
11862    method public String getType(android.net.Uri);
11863    method public final android.net.Uri insert(android.net.Uri, android.content.ContentValues);
11864    method public android.database.Cursor query(android.net.Uri, String[], String, String[], String);
11865    method @Nullable public android.database.Cursor queryDynamicRawData(@Nullable String[]);
11866    method public abstract android.database.Cursor queryNonIndexableKeys(String[]);
11867    method public abstract android.database.Cursor queryRawData(String[]);
11868    method @Nullable public android.database.Cursor querySliceUriPairs();
11869    method public abstract android.database.Cursor queryXmlResources(String[]);
11870    method public final int update(android.net.Uri, android.content.ContentValues, String, String[]);
11871  }
11872
11873  public final class Settings {
11874    method @Deprecated public static boolean checkAndNoteWriteSettingsOperation(@NonNull android.content.Context, int, @NonNull String, boolean);
11875    method public static boolean checkAndNoteWriteSettingsOperation(@NonNull android.content.Context, int, @NonNull String, @Nullable String, boolean);
11876    field public static final String ACTION_ACCESSIBILITY_DETAILS_SETTINGS = "android.settings.ACCESSIBILITY_DETAILS_SETTINGS";
11877    field @RequiresPermission(android.Manifest.permission.LAUNCH_PERMISSION_SETTINGS) public static final String ACTION_APP_PERMISSIONS_SETTINGS = "android.settings.APP_PERMISSIONS_SETTINGS";
11878    field public static final String ACTION_BEDTIME_SETTINGS = "android.settings.BEDTIME_SETTINGS";
11879    field public static final String ACTION_BUGREPORT_HANDLER_SETTINGS = "android.settings.BUGREPORT_HANDLER_SETTINGS";
11880    field public static final String ACTION_ENTERPRISE_PRIVACY_SETTINGS = "android.settings.ENTERPRISE_PRIVACY_SETTINGS";
11881    field public static final String ACTION_LOCATION_CONTROLLER_EXTRA_PACKAGE_SETTINGS = "android.settings.LOCATION_CONTROLLER_EXTRA_PACKAGE_SETTINGS";
11882    field public static final String ACTION_MANAGE_APP_OVERLAY_PERMISSION = "android.settings.MANAGE_APP_OVERLAY_PERMISSION";
11883    field public static final String ACTION_MANAGE_DOMAIN_URLS = "android.settings.MANAGE_DOMAIN_URLS";
11884    field public static final String ACTION_MANAGE_MORE_DEFAULT_APPS_SETTINGS = "android.settings.MANAGE_MORE_DEFAULT_APPS_SETTINGS";
11885    field public static final String ACTION_NOTIFICATION_POLICY_ACCESS_DETAIL_SETTINGS = "android.settings.NOTIFICATION_POLICY_ACCESS_DETAIL_SETTINGS";
11886    field public static final String ACTION_REQUEST_ENABLE_CONTENT_CAPTURE = "android.settings.REQUEST_ENABLE_CONTENT_CAPTURE";
11887    field public static final String ACTION_SHOW_ADMIN_SUPPORT_DETAILS = "android.settings.SHOW_ADMIN_SUPPORT_DETAILS";
11888    field public static final String ACTION_SHOW_RESTRICTED_SETTING_DIALOG = "android.settings.SHOW_RESTRICTED_SETTING_DIALOG";
11889    field public static final String ACTION_TETHER_PROVISIONING_UI = "android.settings.TETHER_PROVISIONING_UI";
11890    field public static final String ACTION_TETHER_SETTINGS = "android.settings.TETHER_SETTINGS";
11891    field public static final String ACTION_TETHER_UNSUPPORTED_CARRIER_UI = "android.settings.TETHER_UNSUPPORTED_CARRIER_UI";
11892    field public static final String ACTION_USER_SETTINGS = "android.settings.USER_SETTINGS";
11893  }
11894
11895  public static final class Settings.Global extends android.provider.Settings.NameValueTable {
11896    method @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public static boolean putString(@NonNull android.content.ContentResolver, @NonNull String, @Nullable String, @Nullable String, boolean);
11897    method @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public static void resetToDefaults(@NonNull android.content.ContentResolver, @Nullable String);
11898    field public static final String AIRPLANE_MODE_TOGGLEABLE_RADIOS = "airplane_mode_toggleable_radios";
11899    field public static final String APP_STANDBY_ENABLED = "app_standby_enabled";
11900    field @Deprecated public static final String AUTOFILL_COMPAT_MODE_ALLOWED_PACKAGES = "autofill_compat_mode_allowed_packages";
11901    field public static final String CARRIER_APP_NAMES = "carrier_app_names";
11902    field public static final String CARRIER_APP_WHITELIST = "carrier_app_whitelist";
11903    field public static final String DEFAULT_SM_DP_PLUS = "default_sm_dp_plus";
11904    field public static final String DEVICE_DEMO_MODE = "device_demo_mode";
11905    field public static final String DEVICE_PROVISIONING_MOBILE_DATA_ENABLED = "device_provisioning_mobile_data";
11906    field public static final String EUICC_PROVISIONED = "euicc_provisioned";
11907    field public static final String EUICC_SUPPORTED_COUNTRIES = "euicc_supported_countries";
11908    field public static final String EUICC_UNSUPPORTED_COUNTRIES = "euicc_unsupported_countries";
11909    field public static final String INSTALL_CARRIER_APP_NOTIFICATION_PERSISTENT = "install_carrier_app_notification_persistent";
11910    field public static final String INSTALL_CARRIER_APP_NOTIFICATION_SLEEP_MILLIS = "install_carrier_app_notification_sleep_millis";
11911    field public static final String OTA_DISABLE_AUTOMATIC_UPDATE = "ota_disable_automatic_update";
11912    field public static final String REQUIRE_PASSWORD_TO_DECRYPT = "require_password_to_decrypt";
11913    field public static final String TETHER_OFFLOAD_DISABLED = "tether_offload_disabled";
11914    field public static final String TETHER_SUPPORTED = "tether_supported";
11915    field public static final String THEATER_MODE_ON = "theater_mode_on";
11916    field public static final String WEBVIEW_MULTIPROCESS = "webview_multiprocess";
11917    field public static final String WIFI_BADGING_THRESHOLDS = "wifi_badging_thresholds";
11918    field @Deprecated public static final String WIFI_WAKEUP_ENABLED = "wifi_wakeup_enabled";
11919  }
11920
11921  public static final class Settings.Secure extends android.provider.Settings.NameValueTable {
11922    method @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public static boolean putString(@NonNull android.content.ContentResolver, @NonNull String, @Nullable String, @Nullable String, boolean);
11923    method @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public static void resetToDefaults(@NonNull android.content.ContentResolver, @Nullable String);
11924    field @Deprecated public static final String ACCESSIBILITY_DISPLAY_MAGNIFICATION_NAVBAR_ENABLED = "accessibility_display_magnification_navbar_enabled";
11925    field public static final String ASSIST_GESTURE_SETUP_COMPLETE = "assist_gesture_setup_complete";
11926    field public static final String AUTOFILL_FEATURE_FIELD_CLASSIFICATION = "autofill_field_classification";
11927    field public static final String AUTOFILL_USER_DATA_MAX_CATEGORY_COUNT = "autofill_user_data_max_category_count";
11928    field public static final String AUTOFILL_USER_DATA_MAX_FIELD_CLASSIFICATION_IDS_SIZE = "autofill_user_data_max_field_classification_size";
11929    field public static final String AUTOFILL_USER_DATA_MAX_USER_DATA_SIZE = "autofill_user_data_max_user_data_size";
11930    field public static final String AUTOFILL_USER_DATA_MAX_VALUE_LENGTH = "autofill_user_data_max_value_length";
11931    field public static final String AUTOFILL_USER_DATA_MIN_VALUE_LENGTH = "autofill_user_data_min_value_length";
11932    field public static final String AUTO_REVOKE_DISABLED = "auto_revoke_disabled";
11933    field public static final String COMPLETED_CATEGORY_PREFIX = "suggested.completed_category.";
11934    field public static final String DOZE_ALWAYS_ON = "doze_always_on";
11935    field public static final String HUSH_GESTURE_USED = "hush_gesture_used";
11936    field public static final String INSTANT_APPS_ENABLED = "instant_apps_enabled";
11937    field public static final String LAST_SETUP_SHOWN = "last_setup_shown";
11938    field @Deprecated public static final String LOCATION_ACCESS_CHECK_DELAY_MILLIS = "location_access_check_delay_millis";
11939    field @Deprecated public static final String LOCATION_ACCESS_CHECK_INTERVAL_MILLIS = "location_access_check_interval_millis";
11940    field public static final int LOCATION_MODE_ON = 3; // 0x3
11941    field @Deprecated public static final String LOCATION_PERMISSIONS_UPGRADE_TO_Q_MODE = "location_permissions_upgrade_to_q_mode";
11942    field public static final String LOCK_SCREEN_ALLOW_PRIVATE_NOTIFICATIONS = "lock_screen_allow_private_notifications";
11943    field public static final String LOCK_SCREEN_SHOW_NOTIFICATIONS = "lock_screen_show_notifications";
11944    field public static final String ODI_CAPTIONS_ENABLED = "odi_captions_enabled";
11945    field public static final String THEME_CUSTOMIZATION_OVERLAY_PACKAGES = "theme_customization_overlay_packages";
11946    field public static final String UI_TRANSLATION_ENABLED = "ui_translation_enabled";
11947    field public static final String USER_SETUP_COMPLETE = "user_setup_complete";
11948    field public static final int USER_SETUP_PERSONALIZATION_COMPLETE = 10; // 0xa
11949    field public static final int USER_SETUP_PERSONALIZATION_NOT_STARTED = 0; // 0x0
11950    field public static final int USER_SETUP_PERSONALIZATION_PAUSED = 2; // 0x2
11951    field public static final int USER_SETUP_PERSONALIZATION_STARTED = 1; // 0x1
11952    field public static final String USER_SETUP_PERSONALIZATION_STATE = "user_setup_personalization_state";
11953    field public static final String VOLUME_HUSH_GESTURE = "volume_hush_gesture";
11954    field public static final int VOLUME_HUSH_MUTE = 2; // 0x2
11955    field public static final int VOLUME_HUSH_OFF = 0; // 0x0
11956    field public static final int VOLUME_HUSH_VIBRATE = 1; // 0x1
11957  }
11958
11959  public static final class Settings.System extends android.provider.Settings.NameValueTable {
11960    method @RequiresPermission(android.Manifest.permission.MODIFY_SETTINGS_OVERRIDEABLE_BY_RESTORE) public static boolean putString(@NonNull android.content.ContentResolver, @NonNull String, @Nullable String, boolean);
11961    method @RequiresPermission(android.Manifest.permission.MODIFY_SETTINGS_OVERRIDEABLE_BY_RESTORE) public static boolean putString(@NonNull android.content.ContentResolver, @NonNull String, @Nullable String, boolean, boolean);
11962    method public static void resetToDefaults(@NonNull android.content.ContentResolver, @Nullable String);
11963  }
11964
11965  public static final class SimPhonebookContract.SimRecords {
11966    field public static final String QUERY_ARG_PIN2 = "android:query-arg-pin2";
11967  }
11968
11969  public static final class Telephony.Carriers implements android.provider.BaseColumns {
11970    field public static final String APN_SET_ID = "apn_set_id";
11971    field public static final int CARRIER_EDITED = 4; // 0x4
11972    field public static final String EDITED_STATUS = "edited";
11973    field public static final int MATCH_ALL_APN_SET_ID = -1; // 0xffffffff
11974    field public static final String MAX_CONNECTIONS = "max_conns";
11975    field public static final String MODEM_PERSIST = "modem_cognitive";
11976    field @Deprecated public static final String MTU = "mtu";
11977    field public static final int NO_APN_SET_ID = 0; // 0x0
11978    field public static final String TIME_LIMIT_FOR_MAX_CONNECTIONS = "max_conns_time";
11979    field public static final int UNEDITED = 0; // 0x0
11980    field public static final int USER_DELETED = 2; // 0x2
11981    field public static final int USER_EDITED = 1; // 0x1
11982    field public static final String WAIT_TIME_RETRY = "wait_time";
11983  }
11984
11985  public static final class Telephony.CellBroadcasts implements android.provider.BaseColumns {
11986    field @NonNull public static final String AUTHORITY_LEGACY = "cellbroadcast-legacy";
11987    field @NonNull public static final android.net.Uri AUTHORITY_LEGACY_URI;
11988    field @NonNull public static final String CALL_METHOD_GET_PREFERENCE = "get_preference";
11989    field public static final String CID = "cid";
11990    field public static final String CMAS_CATEGORY = "cmas_category";
11991    field public static final String CMAS_CERTAINTY = "cmas_certainty";
11992    field public static final String CMAS_MESSAGE_CLASS = "cmas_message_class";
11993    field public static final String CMAS_RESPONSE_TYPE = "cmas_response_type";
11994    field public static final String CMAS_SEVERITY = "cmas_severity";
11995    field public static final String CMAS_URGENCY = "cmas_urgency";
11996    field @NonNull public static final android.net.Uri CONTENT_URI;
11997    field public static final String DATA_CODING_SCHEME = "dcs";
11998    field public static final String DEFAULT_SORT_ORDER = "date DESC";
11999    field public static final String DELIVERY_TIME = "date";
12000    field public static final String ETWS_IS_PRIMARY = "etws_is_primary";
12001    field public static final String ETWS_WARNING_TYPE = "etws_warning_type";
12002    field public static final String GEOGRAPHICAL_SCOPE = "geo_scope";
12003    field public static final String GEOMETRIES = "geometries";
12004    field public static final String LAC = "lac";
12005    field public static final String LANGUAGE_CODE = "language";
12006    field public static final String LOCATION_CHECK_TIME = "location_check_time";
12007    field public static final String MAXIMUM_WAIT_TIME = "maximum_wait_time";
12008    field public static final String MESSAGE_BODY = "body";
12009    field public static final String MESSAGE_BROADCASTED = "message_broadcasted";
12010    field public static final String MESSAGE_DISPLAYED = "message_displayed";
12011    field public static final String MESSAGE_FORMAT = "format";
12012    field @NonNull @RequiresPermission(android.Manifest.permission.READ_CELL_BROADCASTS) public static final android.net.Uri MESSAGE_HISTORY_URI;
12013    field public static final String MESSAGE_PRIORITY = "priority";
12014    field public static final String MESSAGE_READ = "read";
12015    field public static final String PLMN = "plmn";
12016    field public static final String RECEIVED_TIME = "received_time";
12017    field public static final String SERIAL_NUMBER = "serial_number";
12018    field public static final String SERVICE_CATEGORY = "service_category";
12019    field public static final String SLOT_INDEX = "slot_index";
12020    field public static final String SUBSCRIPTION_ID = "sub_id";
12021  }
12022
12023  public static final class Telephony.CellBroadcasts.Preference {
12024    field @NonNull public static final String ENABLE_ALERT_VIBRATION_PREF = "enable_alert_vibrate";
12025    field @NonNull public static final String ENABLE_AREA_UPDATE_INFO_PREF = "enable_area_update_info_alerts";
12026    field @NonNull public static final String ENABLE_CMAS_AMBER_PREF = "enable_cmas_amber_alerts";
12027    field @NonNull public static final String ENABLE_CMAS_EXTREME_THREAT_PREF = "enable_cmas_extreme_threat_alerts";
12028    field @NonNull public static final String ENABLE_CMAS_IN_SECOND_LANGUAGE_PREF = "receive_cmas_in_second_language";
12029    field @NonNull public static final String ENABLE_CMAS_PRESIDENTIAL_PREF = "enable_cmas_presidential_alerts";
12030    field @NonNull public static final String ENABLE_CMAS_SEVERE_THREAT_PREF = "enable_cmas_severe_threat_alerts";
12031    field @NonNull public static final String ENABLE_EMERGENCY_PERF = "enable_emergency_alerts";
12032    field @NonNull public static final String ENABLE_PUBLIC_SAFETY_PREF = "enable_public_safety_messages";
12033    field @NonNull public static final String ENABLE_STATE_LOCAL_TEST_PREF = "enable_state_local_test_alerts";
12034    field @NonNull public static final String ENABLE_TEST_ALERT_PREF = "enable_test_alerts";
12035  }
12036
12037  public static final class Telephony.Sms.Intents {
12038    field public static final String ACTION_SMS_EMERGENCY_CB_RECEIVED = "android.provider.action.SMS_EMERGENCY_CB_RECEIVED";
12039  }
12040
12041  public final class TimeZoneRulesDataContract {
12042    field public static final String AUTHORITY = "com.android.timezone";
12043  }
12044
12045  public static final class TimeZoneRulesDataContract.Operation {
12046    field public static final String COLUMN_DISTRO_MAJOR_VERSION = "distro_major_version";
12047    field public static final String COLUMN_DISTRO_MINOR_VERSION = "distro_minor_version";
12048    field public static final String COLUMN_REVISION = "revision";
12049    field public static final String COLUMN_RULES_VERSION = "rules_version";
12050    field public static final String COLUMN_TYPE = "type";
12051    field public static final android.net.Uri CONTENT_URI;
12052    field public static final String TYPE_INSTALL = "INSTALL";
12053    field public static final String TYPE_NO_OP = "NOOP";
12054    field public static final String TYPE_UNINSTALL = "UNINSTALL";
12055  }
12056
12057}
12058
12059package android.se.omapi {
12060
12061  public final class Reader {
12062    method @RequiresPermission(android.Manifest.permission.SECURE_ELEMENT_PRIVILEGED_OPERATION) public boolean reset();
12063  }
12064
12065}
12066
12067package android.security {
12068
12069  public final class FileIntegrityManager {
12070    method @Nullable public byte[] getFsVerityDigest(@NonNull java.io.File) throws java.io.IOException;
12071    method public void setupFsVerity(@NonNull java.io.File) throws java.io.IOException;
12072  }
12073
12074  public final class KeyChain {
12075    method @Nullable @WorkerThread public static String getWifiKeyGrantAsUser(@NonNull android.content.Context, @NonNull android.os.UserHandle, @NonNull String);
12076    method @WorkerThread public static boolean hasWifiKeyGrantAsUser(@NonNull android.content.Context, @NonNull android.os.UserHandle, @NonNull String);
12077  }
12078
12079}
12080
12081package android.security.keystore {
12082
12083  public class AndroidKeyStoreProvider extends java.security.Provider {
12084    method @NonNull public static java.security.KeyStore getKeyStoreForUid(int) throws java.security.KeyStoreException, java.security.NoSuchProviderException;
12085  }
12086
12087  public abstract class AttestationUtils {
12088    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;
12089    field public static final int ID_TYPE_IMEI = 2; // 0x2
12090    field public static final int ID_TYPE_MEID = 3; // 0x3
12091    field public static final int ID_TYPE_SERIAL = 1; // 0x1
12092    field public static final int USE_INDIVIDUAL_ATTESTATION = 4; // 0x4
12093  }
12094
12095  public class DeviceIdAttestationException extends java.lang.Exception {
12096    ctor public DeviceIdAttestationException(@Nullable String);
12097    ctor public DeviceIdAttestationException(@Nullable String, @Nullable Throwable);
12098  }
12099
12100  public final class KeyGenParameterSpec implements java.security.spec.AlgorithmParameterSpec {
12101    method @NonNull public int[] getAttestationIds();
12102    method public int getNamespace();
12103  }
12104
12105  public static final class KeyGenParameterSpec.Builder {
12106    method @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setAttestationIds(@NonNull int[]);
12107    method @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setNamespace(int);
12108    method @Deprecated @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setUid(int);
12109  }
12110
12111  public abstract class KeyProperties {
12112    field public static final int NAMESPACE_APPLICATION = -1; // 0xffffffff
12113    field public static final int NAMESPACE_WIFI = 102; // 0x66
12114  }
12115
12116}
12117
12118package android.security.keystore.recovery {
12119
12120  public class DecryptionFailedException extends java.security.GeneralSecurityException {
12121    ctor public DecryptionFailedException(String);
12122  }
12123
12124  public class InternalRecoveryServiceException extends java.security.GeneralSecurityException {
12125    ctor public InternalRecoveryServiceException(String);
12126    ctor public InternalRecoveryServiceException(String, Throwable);
12127  }
12128
12129  public final class KeyChainProtectionParams implements android.os.Parcelable {
12130    method public void clearSecret();
12131    method public int describeContents();
12132    method @NonNull public android.security.keystore.recovery.KeyDerivationParams getKeyDerivationParams();
12133    method public int getLockScreenUiFormat();
12134    method @NonNull public byte[] getSecret();
12135    method public int getUserSecretType();
12136    method public void writeToParcel(android.os.Parcel, int);
12137    field @NonNull public static final android.os.Parcelable.Creator<android.security.keystore.recovery.KeyChainProtectionParams> CREATOR;
12138    field public static final int TYPE_LOCKSCREEN = 100; // 0x64
12139    field public static final int UI_FORMAT_PASSWORD = 2; // 0x2
12140    field public static final int UI_FORMAT_PATTERN = 3; // 0x3
12141    field public static final int UI_FORMAT_PIN = 1; // 0x1
12142  }
12143
12144  public static class KeyChainProtectionParams.Builder {
12145    ctor public KeyChainProtectionParams.Builder();
12146    method @NonNull public android.security.keystore.recovery.KeyChainProtectionParams build();
12147    method @NonNull public android.security.keystore.recovery.KeyChainProtectionParams.Builder setKeyDerivationParams(@NonNull android.security.keystore.recovery.KeyDerivationParams);
12148    method @NonNull public android.security.keystore.recovery.KeyChainProtectionParams.Builder setLockScreenUiFormat(int);
12149    method @NonNull public android.security.keystore.recovery.KeyChainProtectionParams.Builder setSecret(@NonNull byte[]);
12150    method @NonNull public android.security.keystore.recovery.KeyChainProtectionParams.Builder setUserSecretType(int);
12151  }
12152
12153  public final class KeyChainSnapshot implements android.os.Parcelable {
12154    method public int describeContents();
12155    method public long getCounterId();
12156    method @NonNull public byte[] getEncryptedRecoveryKeyBlob();
12157    method @NonNull public java.util.List<android.security.keystore.recovery.KeyChainProtectionParams> getKeyChainProtectionParams();
12158    method public int getMaxAttempts();
12159    method @NonNull public byte[] getServerParams();
12160    method public int getSnapshotVersion();
12161    method @NonNull public java.security.cert.CertPath getTrustedHardwareCertPath();
12162    method @NonNull public java.util.List<android.security.keystore.recovery.WrappedApplicationKey> getWrappedApplicationKeys();
12163    method public void writeToParcel(android.os.Parcel, int);
12164    field @NonNull public static final android.os.Parcelable.Creator<android.security.keystore.recovery.KeyChainSnapshot> CREATOR;
12165  }
12166
12167  public final class KeyDerivationParams implements android.os.Parcelable {
12168    method @NonNull public static android.security.keystore.recovery.KeyDerivationParams createScryptParams(@NonNull byte[], int);
12169    method @NonNull public static android.security.keystore.recovery.KeyDerivationParams createSha256Params(@NonNull byte[]);
12170    method public int describeContents();
12171    method public int getAlgorithm();
12172    method public int getMemoryDifficulty();
12173    method @NonNull public byte[] getSalt();
12174    method public void writeToParcel(android.os.Parcel, int);
12175    field public static final int ALGORITHM_SCRYPT = 2; // 0x2
12176    field public static final int ALGORITHM_SHA256 = 1; // 0x1
12177    field @NonNull public static final android.os.Parcelable.Creator<android.security.keystore.recovery.KeyDerivationParams> CREATOR;
12178  }
12179
12180  public class LockScreenRequiredException extends java.security.GeneralSecurityException {
12181    ctor public LockScreenRequiredException(String);
12182  }
12183
12184  public class RecoveryController {
12185    method @NonNull @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public android.security.keystore.recovery.RecoverySession createRecoverySession();
12186    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;
12187    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;
12188    method @NonNull @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public java.util.List<java.lang.String> getAliases() throws android.security.keystore.recovery.InternalRecoveryServiceException;
12189    method @NonNull @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public static android.security.keystore.recovery.RecoveryController getInstance(@NonNull android.content.Context);
12190    method @Nullable @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public java.security.Key getKey(@NonNull String) throws android.security.keystore.recovery.InternalRecoveryServiceException, java.security.UnrecoverableKeyException;
12191    method @Nullable @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public android.security.keystore.recovery.KeyChainSnapshot getKeyChainSnapshot() throws android.security.keystore.recovery.InternalRecoveryServiceException;
12192    method @NonNull @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public int[] getRecoverySecretTypes() throws android.security.keystore.recovery.InternalRecoveryServiceException;
12193    method @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public int getRecoveryStatus(@NonNull String) throws android.security.keystore.recovery.InternalRecoveryServiceException;
12194    method @NonNull @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public java.util.Map<java.lang.String,java.security.cert.X509Certificate> getRootCertificates();
12195    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;
12196    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;
12197    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;
12198    method @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public static boolean isRecoverableKeyStoreEnabled(@NonNull android.content.Context);
12199    method @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public void removeKey(@NonNull String) throws android.security.keystore.recovery.InternalRecoveryServiceException;
12200    method @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public void setRecoverySecretTypes(@NonNull int[]) throws android.security.keystore.recovery.InternalRecoveryServiceException;
12201    method @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public void setRecoveryStatus(@NonNull String, int) throws android.security.keystore.recovery.InternalRecoveryServiceException;
12202    method @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public void setServerParams(@NonNull byte[]) throws android.security.keystore.recovery.InternalRecoveryServiceException;
12203    method @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public void setSnapshotCreatedPendingIntent(@Nullable android.app.PendingIntent) throws android.security.keystore.recovery.InternalRecoveryServiceException;
12204    field public static final int RECOVERY_STATUS_PERMANENT_FAILURE = 3; // 0x3
12205    field public static final int RECOVERY_STATUS_SYNCED = 0; // 0x0
12206    field public static final int RECOVERY_STATUS_SYNC_IN_PROGRESS = 1; // 0x1
12207  }
12208
12209  public class RecoverySession implements java.lang.AutoCloseable {
12210    method @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public void close();
12211    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;
12212    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;
12213  }
12214
12215  public class SessionExpiredException extends java.security.GeneralSecurityException {
12216    ctor public SessionExpiredException(String);
12217  }
12218
12219  public final class WrappedApplicationKey implements android.os.Parcelable {
12220    method public int describeContents();
12221    method @NonNull public String getAlias();
12222    method @NonNull public byte[] getEncryptedKeyMaterial();
12223    method @Nullable public byte[] getMetadata();
12224    method public void writeToParcel(android.os.Parcel, int);
12225    field @NonNull public static final android.os.Parcelable.Creator<android.security.keystore.recovery.WrappedApplicationKey> CREATOR;
12226  }
12227
12228  public static class WrappedApplicationKey.Builder {
12229    ctor public WrappedApplicationKey.Builder();
12230    method @NonNull public android.security.keystore.recovery.WrappedApplicationKey build();
12231    method @NonNull public android.security.keystore.recovery.WrappedApplicationKey.Builder setAlias(@NonNull String);
12232    method @NonNull public android.security.keystore.recovery.WrappedApplicationKey.Builder setEncryptedKeyMaterial(@NonNull byte[]);
12233    method @NonNull public android.security.keystore.recovery.WrappedApplicationKey.Builder setMetadata(@Nullable byte[]);
12234  }
12235
12236}
12237
12238package android.service.ambientcontext {
12239
12240  public final class AmbientContextDetectionResult implements android.os.Parcelable {
12241    method public int describeContents();
12242    method @NonNull public java.util.List<android.app.ambientcontext.AmbientContextEvent> getEvents();
12243    method @NonNull public String getPackageName();
12244    method public void writeToParcel(@NonNull android.os.Parcel, int);
12245    field @NonNull public static final android.os.Parcelable.Creator<android.service.ambientcontext.AmbientContextDetectionResult> CREATOR;
12246  }
12247
12248  public static final class AmbientContextDetectionResult.Builder {
12249    ctor public AmbientContextDetectionResult.Builder(@NonNull String);
12250    method @NonNull public android.service.ambientcontext.AmbientContextDetectionResult.Builder addEvent(@NonNull android.app.ambientcontext.AmbientContextEvent);
12251    method @NonNull public android.service.ambientcontext.AmbientContextDetectionResult.Builder addEvents(@NonNull java.util.List<android.app.ambientcontext.AmbientContextEvent>);
12252    method @NonNull public android.service.ambientcontext.AmbientContextDetectionResult build();
12253    method @NonNull public android.service.ambientcontext.AmbientContextDetectionResult.Builder clearEvents();
12254  }
12255
12256  public abstract class AmbientContextDetectionService extends android.app.Service {
12257    ctor public AmbientContextDetectionService();
12258    method @Nullable public final android.os.IBinder onBind(@NonNull android.content.Intent);
12259    method @BinderThread public abstract void onQueryServiceStatus(@NonNull int[], @NonNull String, @NonNull java.util.function.Consumer<android.service.ambientcontext.AmbientContextDetectionServiceStatus>);
12260    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>);
12261    method public abstract void onStopDetection(@NonNull String);
12262    field public static final String SERVICE_INTERFACE = "android.service.ambientcontext.AmbientContextDetectionService";
12263  }
12264
12265  public final class AmbientContextDetectionServiceStatus implements android.os.Parcelable {
12266    method public int describeContents();
12267    method @NonNull public String getPackageName();
12268    method public int getStatusCode();
12269    method public void writeToParcel(@NonNull android.os.Parcel, int);
12270    field @NonNull public static final android.os.Parcelable.Creator<android.service.ambientcontext.AmbientContextDetectionServiceStatus> CREATOR;
12271  }
12272
12273  public static final class AmbientContextDetectionServiceStatus.Builder {
12274    ctor public AmbientContextDetectionServiceStatus.Builder(@NonNull String);
12275    method @NonNull public android.service.ambientcontext.AmbientContextDetectionServiceStatus build();
12276    method @NonNull public android.service.ambientcontext.AmbientContextDetectionServiceStatus.Builder setStatusCode(int);
12277  }
12278
12279}
12280
12281package android.service.appprediction {
12282
12283  public abstract class AppPredictionService extends android.app.Service {
12284    ctor public AppPredictionService();
12285    method @MainThread public abstract void onAppTargetEvent(@NonNull android.app.prediction.AppPredictionSessionId, @NonNull android.app.prediction.AppTargetEvent);
12286    method @NonNull public final android.os.IBinder onBind(@NonNull android.content.Intent);
12287    method public void onCreatePredictionSession(@NonNull android.app.prediction.AppPredictionContext, @NonNull android.app.prediction.AppPredictionSessionId);
12288    method @MainThread public void onDestroyPredictionSession(@NonNull android.app.prediction.AppPredictionSessionId);
12289    method @MainThread public abstract void onLaunchLocationShown(@NonNull android.app.prediction.AppPredictionSessionId, @NonNull String, @NonNull java.util.List<android.app.prediction.AppTargetId>);
12290    method @MainThread public abstract void onRequestPredictionUpdate(@NonNull android.app.prediction.AppPredictionSessionId);
12291    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>>);
12292    method @MainThread public void onStartPredictionUpdates();
12293    method @MainThread public void onStopPredictionUpdates();
12294    method public final void updatePredictions(@NonNull android.app.prediction.AppPredictionSessionId, @NonNull java.util.List<android.app.prediction.AppTarget>);
12295  }
12296
12297}
12298
12299package android.service.assist.classification {
12300
12301  public final class FieldClassification implements android.os.Parcelable {
12302    ctor public FieldClassification(@NonNull android.view.autofill.AutofillId, @NonNull java.util.Set<java.lang.String>, @NonNull java.util.Set<java.lang.String>);
12303    method @NonNull public java.util.Set<java.lang.String> getGroupHints();
12304  }
12305
12306  public final class FieldClassificationRequest implements android.os.Parcelable {
12307    ctor public FieldClassificationRequest(@NonNull android.app.assist.AssistStructure);
12308    method public int describeContents();
12309    method @NonNull public android.app.assist.AssistStructure getAssistStructure();
12310    method public void writeToParcel(@NonNull android.os.Parcel, int);
12311    field @NonNull public static final android.os.Parcelable.Creator<android.service.assist.classification.FieldClassificationRequest> CREATOR;
12312  }
12313
12314  public final class FieldClassificationResponse implements android.os.Parcelable {
12315    ctor public FieldClassificationResponse(@NonNull java.util.Set<android.service.assist.classification.FieldClassification>);
12316    method public int describeContents();
12317    method @NonNull public java.util.Set<android.service.assist.classification.FieldClassification> getClassifications();
12318    method public void writeToParcel(@NonNull android.os.Parcel, int);
12319    field @NonNull public static final android.os.Parcelable.Creator<android.service.assist.classification.FieldClassificationResponse> CREATOR;
12320  }
12321
12322  public abstract class FieldClassificationService extends android.app.Service {
12323    ctor public FieldClassificationService();
12324    method public final android.os.IBinder onBind(android.content.Intent);
12325    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>);
12326    method public void onConnected();
12327    method public void onDisconnected();
12328    field public static final String SERVICE_INTERFACE = "android.service.assist.classification.FieldClassificationService";
12329  }
12330
12331}
12332
12333package android.service.attention {
12334
12335  public abstract class AttentionService extends android.app.Service {
12336    ctor public AttentionService();
12337    method @Nullable public final android.os.IBinder onBind(@NonNull android.content.Intent);
12338    method public abstract void onCancelAttentionCheck(@NonNull android.service.attention.AttentionService.AttentionCallback);
12339    method public abstract void onCheckAttention(@NonNull android.service.attention.AttentionService.AttentionCallback);
12340    method public void onStartProximityUpdates(@NonNull android.service.attention.AttentionService.ProximityUpdateCallback);
12341    method public void onStopProximityUpdates();
12342    field public static final int ATTENTION_FAILURE_CAMERA_PERMISSION_ABSENT = 6; // 0x6
12343    field public static final int ATTENTION_FAILURE_CANCELLED = 3; // 0x3
12344    field public static final int ATTENTION_FAILURE_PREEMPTED = 4; // 0x4
12345    field public static final int ATTENTION_FAILURE_TIMED_OUT = 5; // 0x5
12346    field public static final int ATTENTION_FAILURE_UNKNOWN = 2; // 0x2
12347    field public static final int ATTENTION_SUCCESS_ABSENT = 0; // 0x0
12348    field public static final int ATTENTION_SUCCESS_PRESENT = 1; // 0x1
12349    field public static final double PROXIMITY_UNKNOWN = -1.0;
12350    field public static final String SERVICE_INTERFACE = "android.service.attention.AttentionService";
12351  }
12352
12353  public static final class AttentionService.AttentionCallback {
12354    method public void onFailure(int);
12355    method public void onSuccess(int, long);
12356  }
12357
12358  public static final class AttentionService.ProximityUpdateCallback {
12359    method public void onProximityUpdate(double);
12360  }
12361
12362}
12363
12364package android.service.autofill {
12365
12366  public abstract class AutofillFieldClassificationService extends android.app.Service {
12367    ctor public AutofillFieldClassificationService();
12368    method public android.os.IBinder onBind(android.content.Intent);
12369    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);
12370    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>);
12371    field public static final String REQUIRED_ALGORITHM_CREDIT_CARD = "CREDIT_CARD";
12372    field public static final String REQUIRED_ALGORITHM_EDIT_DISTANCE = "EDIT_DISTANCE";
12373    field public static final String REQUIRED_ALGORITHM_EXACT_MATCH = "EXACT_MATCH";
12374    field public static final String SERVICE_INTERFACE = "android.service.autofill.AutofillFieldClassificationService";
12375    field public static final String SERVICE_META_DATA_KEY_AVAILABLE_ALGORITHMS = "android.autofill.field_classification.available_algorithms";
12376    field public static final String SERVICE_META_DATA_KEY_DEFAULT_ALGORITHM = "android.autofill.field_classification.default_algorithm";
12377  }
12378
12379  public static final class Dataset.Builder {
12380    ctor @Deprecated public Dataset.Builder(@NonNull android.service.autofill.InlinePresentation);
12381    method @NonNull public android.service.autofill.Dataset.Builder setContent(@NonNull android.view.autofill.AutofillId, @Nullable android.content.ClipData);
12382    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);
12383  }
12384
12385  public abstract class InlineSuggestionRenderService extends android.app.Service {
12386    ctor public InlineSuggestionRenderService();
12387    method @Nullable public final android.os.IBinder onBind(@NonNull android.content.Intent);
12388    method @NonNull public android.os.Bundle onGetInlineSuggestionsRendererInfo();
12389    method @Nullable public android.view.View onRenderSuggestion(@NonNull android.service.autofill.InlinePresentation, int, int);
12390    method public final void startIntentSender(@NonNull android.content.IntentSender);
12391    field public static final String SERVICE_INTERFACE = "android.service.autofill.InlineSuggestionRenderService";
12392  }
12393
12394}
12395
12396package android.service.autofill.augmented {
12397
12398  public abstract class AugmentedAutofillService extends android.app.Service {
12399    ctor public AugmentedAutofillService();
12400    method protected final void dump(java.io.FileDescriptor, java.io.PrintWriter, String[]);
12401    method protected void dump(@NonNull java.io.PrintWriter, @NonNull String[]);
12402    method @Nullable public final android.service.autofill.FillEventHistory getFillEventHistory();
12403    method public final android.os.IBinder onBind(android.content.Intent);
12404    method public void onConnected();
12405    method public void onDisconnected();
12406    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);
12407    method public final boolean requestAutofill(@NonNull android.content.ComponentName, @NonNull android.view.autofill.AutofillId);
12408    field public static final String SERVICE_INTERFACE = "android.service.autofill.augmented.AugmentedAutofillService";
12409  }
12410
12411  public final class FillCallback {
12412    method public void onSuccess(@Nullable android.service.autofill.augmented.FillResponse);
12413  }
12414
12415  public final class FillController {
12416    method public void autofill(@NonNull java.util.List<android.util.Pair<android.view.autofill.AutofillId,android.view.autofill.AutofillValue>>);
12417  }
12418
12419  public final class FillRequest {
12420    method @NonNull public android.content.ComponentName getActivityComponent();
12421    method @NonNull public android.view.autofill.AutofillId getFocusedId();
12422    method @NonNull public android.view.autofill.AutofillValue getFocusedValue();
12423    method @Nullable public android.app.assist.AssistStructure.ViewNode getFocusedViewNode();
12424    method @Nullable public android.view.inputmethod.InlineSuggestionsRequest getInlineSuggestionsRequest();
12425    method @Nullable public android.service.autofill.augmented.PresentationParams getPresentationParams();
12426    method public int getTaskId();
12427  }
12428
12429  public final class FillResponse {
12430  }
12431
12432  public static final class FillResponse.Builder {
12433    ctor public FillResponse.Builder();
12434    method @NonNull public android.service.autofill.augmented.FillResponse build();
12435    method @NonNull public android.service.autofill.augmented.FillResponse.Builder setClientState(@NonNull android.os.Bundle);
12436    method @NonNull public android.service.autofill.augmented.FillResponse.Builder setFillWindow(@NonNull android.service.autofill.augmented.FillWindow);
12437    method @NonNull public android.service.autofill.augmented.FillResponse.Builder setInlineSuggestions(@NonNull java.util.List<android.service.autofill.Dataset>);
12438  }
12439
12440  public final class FillWindow implements java.lang.AutoCloseable {
12441    ctor public FillWindow();
12442    method public void close();
12443    method public void destroy();
12444    method public boolean update(@NonNull android.service.autofill.augmented.PresentationParams.Area, @NonNull android.view.View, long);
12445  }
12446
12447  public abstract class PresentationParams {
12448    method @Nullable public android.service.autofill.augmented.PresentationParams.Area getSuggestionArea();
12449  }
12450
12451  public abstract static class PresentationParams.Area {
12452    method @NonNull public android.graphics.Rect getBounds();
12453  }
12454
12455}
12456
12457package android.service.carrier {
12458
12459  public abstract class ApnService extends android.app.Service {
12460    ctor public ApnService();
12461    method @NonNull public android.os.IBinder onBind(@Nullable android.content.Intent);
12462    method @NonNull @WorkerThread public abstract java.util.List<android.content.ContentValues> onRestoreApns(int);
12463  }
12464
12465  public final class CarrierMessagingServiceWrapper implements java.lang.AutoCloseable {
12466    ctor public CarrierMessagingServiceWrapper();
12467    method public boolean bindToCarrierMessagingService(@NonNull android.content.Context, @NonNull String, @NonNull java.util.concurrent.Executor, @NonNull Runnable);
12468    method public void close();
12469    method public void disconnect();
12470    method public void downloadMms(@NonNull android.net.Uri, int, @NonNull android.net.Uri, @NonNull java.util.concurrent.Executor, @NonNull android.service.carrier.CarrierMessagingServiceWrapper.CarrierMessagingCallback);
12471    method public void receiveSms(@NonNull android.service.carrier.MessagePdu, @NonNull String, int, int, @NonNull java.util.concurrent.Executor, @NonNull android.service.carrier.CarrierMessagingServiceWrapper.CarrierMessagingCallback);
12472    method public void sendDataSms(@NonNull byte[], int, @NonNull String, int, int, @NonNull java.util.concurrent.Executor, @NonNull android.service.carrier.CarrierMessagingServiceWrapper.CarrierMessagingCallback);
12473    method public void sendMms(@NonNull android.net.Uri, int, @NonNull android.net.Uri, @NonNull java.util.concurrent.Executor, @NonNull android.service.carrier.CarrierMessagingServiceWrapper.CarrierMessagingCallback);
12474    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);
12475    method public void sendTextSms(@NonNull String, int, @NonNull String, int, @NonNull java.util.concurrent.Executor, @NonNull android.service.carrier.CarrierMessagingServiceWrapper.CarrierMessagingCallback);
12476  }
12477
12478  public static interface CarrierMessagingServiceWrapper.CarrierMessagingCallback {
12479    method public default void onDownloadMmsComplete(int);
12480    method public default void onReceiveSmsComplete(int);
12481    method public default void onSendMmsComplete(int, @Nullable byte[]);
12482    method public default void onSendMultipartSmsComplete(int, @Nullable int[]);
12483    method public default void onSendSmsComplete(int, int);
12484  }
12485
12486}
12487
12488package android.service.cloudsearch {
12489
12490  public abstract class CloudSearchService extends android.app.Service {
12491    ctor public CloudSearchService();
12492    method @NonNull public final android.os.IBinder onBind(@NonNull android.content.Intent);
12493    method public abstract void onSearch(@NonNull android.app.cloudsearch.SearchRequest);
12494    method public final void returnResults(@NonNull String, @NonNull android.app.cloudsearch.SearchResponse);
12495  }
12496
12497}
12498
12499package android.service.contentcapture {
12500
12501  public final class ActivityEvent implements android.os.Parcelable {
12502    method public int describeContents();
12503    method @NonNull public android.app.assist.ActivityId getActivityId();
12504    method @NonNull public android.content.ComponentName getComponentName();
12505    method public int getEventType();
12506    method public void writeToParcel(@NonNull android.os.Parcel, int);
12507    field @NonNull public static final android.os.Parcelable.Creator<android.service.contentcapture.ActivityEvent> CREATOR;
12508    field public static final int TYPE_ACTIVITY_DESTROYED = 24; // 0x18
12509    field public static final int TYPE_ACTIVITY_PAUSED = 2; // 0x2
12510    field public static final int TYPE_ACTIVITY_RESUMED = 1; // 0x1
12511    field public static final int TYPE_ACTIVITY_STOPPED = 23; // 0x17
12512  }
12513
12514  public abstract class ContentCaptureService extends android.app.Service {
12515    ctor public ContentCaptureService();
12516    method public final void disableSelf();
12517    method public void onActivityEvent(@NonNull android.service.contentcapture.ActivityEvent);
12518    method public void onActivitySnapshot(@NonNull android.view.contentcapture.ContentCaptureSessionId, @NonNull android.service.contentcapture.SnapshotData);
12519    method public final android.os.IBinder onBind(android.content.Intent);
12520    method public void onConnected();
12521    method public void onContentCaptureEvent(@NonNull android.view.contentcapture.ContentCaptureSessionId, @NonNull android.view.contentcapture.ContentCaptureEvent);
12522    method public void onCreateContentCaptureSession(@NonNull android.view.contentcapture.ContentCaptureContext, @NonNull android.view.contentcapture.ContentCaptureSessionId);
12523    method public void onDataRemovalRequest(@NonNull android.view.contentcapture.DataRemovalRequest);
12524    method public void onDataShareRequest(@NonNull android.view.contentcapture.DataShareRequest, @NonNull android.service.contentcapture.DataShareCallback);
12525    method public void onDestroyContentCaptureSession(@NonNull android.view.contentcapture.ContentCaptureSessionId);
12526    method public void onDisconnected();
12527    method public final void setContentCaptureConditions(@NonNull String, @Nullable java.util.Set<android.view.contentcapture.ContentCaptureCondition>);
12528    method public final void setContentCaptureWhitelist(@Nullable java.util.Set<java.lang.String>, @Nullable java.util.Set<android.content.ComponentName>);
12529    field public static final String SERVICE_INTERFACE = "android.service.contentcapture.ContentCaptureService";
12530    field public static final String SERVICE_META_DATA = "android.content_capture";
12531  }
12532
12533  public interface DataShareCallback {
12534    method public void onAccept(@NonNull java.util.concurrent.Executor, @NonNull android.service.contentcapture.DataShareReadAdapter);
12535    method public void onReject();
12536  }
12537
12538  public interface DataShareReadAdapter {
12539    method public void onError(int);
12540    method public void onStart(@NonNull android.os.ParcelFileDescriptor);
12541  }
12542
12543  public final class SnapshotData implements android.os.Parcelable {
12544    method public int describeContents();
12545    method @Nullable public android.app.assist.AssistContent getAssistContent();
12546    method @NonNull public android.os.Bundle getAssistData();
12547    method @NonNull public android.app.assist.AssistStructure getAssistStructure();
12548    method public void writeToParcel(@NonNull android.os.Parcel, int);
12549    field @NonNull public static final android.os.Parcelable.Creator<android.service.contentcapture.SnapshotData> CREATOR;
12550  }
12551
12552}
12553
12554package android.service.contentsuggestions {
12555
12556  public abstract class ContentSuggestionsService extends android.app.Service {
12557    ctor public ContentSuggestionsService();
12558    method public final android.os.IBinder onBind(android.content.Intent);
12559    method public abstract void onClassifyContentSelections(@NonNull android.app.contentsuggestions.ClassificationsRequest, @NonNull android.app.contentsuggestions.ContentSuggestionsManager.ClassificationsCallback);
12560    method public abstract void onNotifyInteraction(@NonNull String, @NonNull android.os.Bundle);
12561    method public abstract void onProcessContextImage(int, @Nullable android.graphics.Bitmap, @NonNull android.os.Bundle);
12562    method public abstract void onSuggestContentSelections(@NonNull android.app.contentsuggestions.SelectionsRequest, @NonNull android.app.contentsuggestions.ContentSuggestionsManager.SelectionsCallback);
12563    field public static final String SERVICE_INTERFACE = "android.service.contentsuggestions.ContentSuggestionsService";
12564  }
12565
12566}
12567
12568package android.service.dataloader {
12569
12570  public abstract class DataLoaderService extends android.app.Service {
12571    ctor public DataLoaderService();
12572    method @NonNull public final android.os.IBinder onBind(@NonNull android.content.Intent);
12573    method @Nullable public android.service.dataloader.DataLoaderService.DataLoader onCreateDataLoader(@NonNull android.content.pm.DataLoaderParams);
12574  }
12575
12576  public static interface DataLoaderService.DataLoader {
12577    method public boolean onCreate(@NonNull android.content.pm.DataLoaderParams, @NonNull android.service.dataloader.DataLoaderService.FileSystemConnector);
12578    method public boolean onPrepareImage(@NonNull java.util.Collection<android.content.pm.InstallationFile>, @NonNull java.util.Collection<java.lang.String>);
12579  }
12580
12581  public static final class DataLoaderService.FileSystemConnector {
12582    method @RequiresPermission(android.Manifest.permission.INSTALL_PACKAGES) public void writeData(@NonNull String, long, long, @NonNull android.os.ParcelFileDescriptor) throws java.io.IOException;
12583  }
12584
12585}
12586
12587package android.service.displayhash {
12588
12589  public final class DisplayHashParams implements android.os.Parcelable {
12590    method public int describeContents();
12591    method @Nullable public android.util.Size getBufferSize();
12592    method public boolean isGrayscaleBuffer();
12593    method public void writeToParcel(@NonNull android.os.Parcel, int);
12594    field @NonNull public static final android.os.Parcelable.Creator<android.service.displayhash.DisplayHashParams> CREATOR;
12595  }
12596
12597  public static final class DisplayHashParams.Builder {
12598    ctor public DisplayHashParams.Builder();
12599    method @NonNull public android.service.displayhash.DisplayHashParams build();
12600    method @NonNull public android.service.displayhash.DisplayHashParams.Builder setBufferSize(int, int);
12601    method @NonNull public android.service.displayhash.DisplayHashParams.Builder setGrayscaleBuffer(boolean);
12602  }
12603
12604  public abstract class DisplayHashingService extends android.app.Service {
12605    ctor public DisplayHashingService();
12606    method @NonNull public final android.os.IBinder onBind(@NonNull android.content.Intent);
12607    method public abstract void onGenerateDisplayHash(@NonNull byte[], @NonNull android.hardware.HardwareBuffer, @NonNull android.graphics.Rect, @NonNull String, @NonNull android.view.displayhash.DisplayHashResultCallback);
12608    method @NonNull public abstract java.util.Map<java.lang.String,android.service.displayhash.DisplayHashParams> onGetDisplayHashAlgorithms();
12609    method public abstract int onGetIntervalBetweenRequestsMillis();
12610    method @Nullable public abstract android.view.displayhash.VerifiedDisplayHash onVerifyDisplayHash(@NonNull byte[], @NonNull android.view.displayhash.DisplayHash);
12611    field public static final String SERVICE_INTERFACE = "android.service.displayhash.DisplayHashingService";
12612  }
12613
12614}
12615
12616package android.service.euicc {
12617
12618  public final class DownloadSubscriptionResult implements android.os.Parcelable {
12619    ctor public DownloadSubscriptionResult(int, int, int);
12620    method public int describeContents();
12621    method public int getCardId();
12622    method public int getResolvableErrors();
12623    method public int getResult();
12624    method public void writeToParcel(android.os.Parcel, int);
12625    field @NonNull public static final android.os.Parcelable.Creator<android.service.euicc.DownloadSubscriptionResult> CREATOR;
12626  }
12627
12628  public final class EuiccProfileInfo implements android.os.Parcelable {
12629    method public int describeContents();
12630    method public android.service.carrier.CarrierIdentifier getCarrierIdentifier();
12631    method public String getIccid();
12632    method @Nullable public String getNickname();
12633    method public int getPolicyRules();
12634    method public int getProfileClass();
12635    method public String getProfileName();
12636    method public String getServiceProviderName();
12637    method public int getState();
12638    method @Nullable public java.util.List<android.telephony.UiccAccessRule> getUiccAccessRules();
12639    method public boolean hasPolicyRule(int);
12640    method public boolean hasPolicyRules();
12641    method public void writeToParcel(android.os.Parcel, int);
12642    field @NonNull public static final android.os.Parcelable.Creator<android.service.euicc.EuiccProfileInfo> CREATOR;
12643    field public static final int POLICY_RULE_DELETE_AFTER_DISABLING = 4; // 0x4
12644    field public static final int POLICY_RULE_DO_NOT_DELETE = 2; // 0x2
12645    field public static final int POLICY_RULE_DO_NOT_DISABLE = 1; // 0x1
12646    field public static final int PROFILE_CLASS_OPERATIONAL = 2; // 0x2
12647    field public static final int PROFILE_CLASS_PROVISIONING = 1; // 0x1
12648    field public static final int PROFILE_CLASS_TESTING = 0; // 0x0
12649    field public static final int PROFILE_STATE_DISABLED = 0; // 0x0
12650    field public static final int PROFILE_STATE_ENABLED = 1; // 0x1
12651  }
12652
12653  public static final class EuiccProfileInfo.Builder {
12654    ctor public EuiccProfileInfo.Builder(String);
12655    ctor public EuiccProfileInfo.Builder(android.service.euicc.EuiccProfileInfo);
12656    method public android.service.euicc.EuiccProfileInfo build();
12657    method public android.service.euicc.EuiccProfileInfo.Builder setCarrierIdentifier(android.service.carrier.CarrierIdentifier);
12658    method public android.service.euicc.EuiccProfileInfo.Builder setIccid(String);
12659    method public android.service.euicc.EuiccProfileInfo.Builder setNickname(String);
12660    method public android.service.euicc.EuiccProfileInfo.Builder setPolicyRules(int);
12661    method public android.service.euicc.EuiccProfileInfo.Builder setProfileClass(int);
12662    method public android.service.euicc.EuiccProfileInfo.Builder setProfileName(String);
12663    method public android.service.euicc.EuiccProfileInfo.Builder setServiceProviderName(String);
12664    method public android.service.euicc.EuiccProfileInfo.Builder setState(int);
12665    method public android.service.euicc.EuiccProfileInfo.Builder setUiccAccessRule(@Nullable java.util.List<android.telephony.UiccAccessRule>);
12666  }
12667
12668  public abstract class EuiccService extends android.app.Service {
12669    ctor public EuiccService();
12670    method public void dump(@NonNull java.io.PrintWriter);
12671    method public int encodeSmdxSubjectAndReasonCode(@Nullable String, @Nullable String);
12672    method @CallSuper public android.os.IBinder onBind(android.content.Intent);
12673    method public abstract int onDeleteSubscription(int, String);
12674    method @Deprecated public android.service.euicc.DownloadSubscriptionResult onDownloadSubscription(int, @NonNull android.telephony.euicc.DownloadableSubscription, boolean, boolean, @Nullable android.os.Bundle);
12675    method @NonNull public android.service.euicc.DownloadSubscriptionResult onDownloadSubscription(int, int, @NonNull android.telephony.euicc.DownloadableSubscription, boolean, boolean, @NonNull android.os.Bundle);
12676    method @Deprecated public int onDownloadSubscription(int, @NonNull android.telephony.euicc.DownloadableSubscription, boolean, boolean);
12677    method @Deprecated public abstract int onEraseSubscriptions(int);
12678    method public int onEraseSubscriptions(int, int);
12679    method public long onGetAvailableMemoryInBytes(int);
12680    method public abstract android.service.euicc.GetDefaultDownloadableSubscriptionListResult onGetDefaultDownloadableSubscriptionList(int, boolean);
12681    method public abstract android.service.euicc.GetDownloadableSubscriptionMetadataResult onGetDownloadableSubscriptionMetadata(int, android.telephony.euicc.DownloadableSubscription, boolean);
12682    method @NonNull public android.service.euicc.GetDownloadableSubscriptionMetadataResult onGetDownloadableSubscriptionMetadata(int, int, @NonNull android.telephony.euicc.DownloadableSubscription, boolean);
12683    method public abstract String onGetEid(int);
12684    method @NonNull public abstract android.telephony.euicc.EuiccInfo onGetEuiccInfo(int);
12685    method @NonNull public abstract android.service.euicc.GetEuiccProfileInfoListResult onGetEuiccProfileInfoList(int);
12686    method public abstract int onGetOtaStatus(int);
12687    method public abstract int onRetainSubscriptionsForFactoryReset(int);
12688    method public abstract void onStartOtaIfNecessary(int, android.service.euicc.EuiccService.OtaStatusChangedCallback);
12689    method @Deprecated public abstract int onSwitchToSubscription(int, @Nullable String, boolean);
12690    method public int onSwitchToSubscriptionWithPort(int, int, @Nullable String, boolean);
12691    method public abstract int onUpdateSubscriptionNickname(int, String, String);
12692    field public static final String ACTION_BIND_CARRIER_PROVISIONING_SERVICE = "android.service.euicc.action.BIND_CARRIER_PROVISIONING_SERVICE";
12693    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";
12694    field public static final String ACTION_DELETE_SUBSCRIPTION_PRIVILEGED = "android.service.euicc.action.DELETE_SUBSCRIPTION_PRIVILEGED";
12695    field @RequiresPermission(android.Manifest.permission.BIND_EUICC_SERVICE) public static final String ACTION_MANAGE_EMBEDDED_SUBSCRIPTIONS = "android.service.euicc.action.MANAGE_EMBEDDED_SUBSCRIPTIONS";
12696    field @RequiresPermission(android.Manifest.permission.BIND_EUICC_SERVICE) public static final String ACTION_PROVISION_EMBEDDED_SUBSCRIPTION = "android.service.euicc.action.PROVISION_EMBEDDED_SUBSCRIPTION";
12697    field public static final String ACTION_RENAME_SUBSCRIPTION_PRIVILEGED = "android.service.euicc.action.RENAME_SUBSCRIPTION_PRIVILEGED";
12698    field @Deprecated public static final String ACTION_RESOLVE_CONFIRMATION_CODE = "android.service.euicc.action.RESOLVE_CONFIRMATION_CODE";
12699    field public static final String ACTION_RESOLVE_DEACTIVATE_SIM = "android.service.euicc.action.RESOLVE_DEACTIVATE_SIM";
12700    field public static final String ACTION_RESOLVE_NO_PRIVILEGES = "android.service.euicc.action.RESOLVE_NO_PRIVILEGES";
12701    field public static final String ACTION_RESOLVE_RESOLVABLE_ERRORS = "android.service.euicc.action.RESOLVE_RESOLVABLE_ERRORS";
12702    field public static final String ACTION_START_CARRIER_ACTIVATION = "android.service.euicc.action.START_CARRIER_ACTIVATION";
12703    field public static final String ACTION_START_EUICC_ACTIVATION = "android.service.euicc.action.START_EUICC_ACTIVATION";
12704    field public static final String ACTION_TOGGLE_SUBSCRIPTION_PRIVILEGED = "android.service.euicc.action.TOGGLE_SUBSCRIPTION_PRIVILEGED";
12705    field @RequiresPermission(android.Manifest.permission.BIND_EUICC_SERVICE) public static final String ACTION_TRANSFER_EMBEDDED_SUBSCRIPTIONS = "android.service.euicc.action.TRANSFER_EMBEDDED_SUBSCRIPTIONS";
12706    field public static final String CATEGORY_EUICC_UI = "android.service.euicc.category.EUICC_UI";
12707    field public static final String EUICC_SERVICE_INTERFACE = "android.service.euicc.EuiccService";
12708    field public static final String EXTRA_RESOLUTION_ALLOW_POLICY_RULES = "android.service.euicc.extra.RESOLUTION_ALLOW_POLICY_RULES";
12709    field public static final String EXTRA_RESOLUTION_CALLING_PACKAGE = "android.service.euicc.extra.RESOLUTION_CALLING_PACKAGE";
12710    field public static final String EXTRA_RESOLUTION_CARD_ID = "android.service.euicc.extra.RESOLUTION_CARD_ID";
12711    field public static final String EXTRA_RESOLUTION_CONFIRMATION_CODE = "android.service.euicc.extra.RESOLUTION_CONFIRMATION_CODE";
12712    field public static final String EXTRA_RESOLUTION_CONFIRMATION_CODE_RETRIED = "android.service.euicc.extra.RESOLUTION_CONFIRMATION_CODE_RETRIED";
12713    field public static final String EXTRA_RESOLUTION_CONSENT = "android.service.euicc.extra.RESOLUTION_CONSENT";
12714    field public static final String EXTRA_RESOLUTION_PORT_INDEX = "android.service.euicc.extra.RESOLUTION_PORT_INDEX";
12715    field public static final String EXTRA_RESOLUTION_SUBSCRIPTION_ID = "android.service.euicc.extra.RESOLUTION_SUBSCRIPTION_ID";
12716    field public static final String EXTRA_RESOLUTION_USE_PORT_INDEX = "android.service.euicc.extra.RESOLUTION_USE_PORT_INDEX";
12717    field public static final String EXTRA_RESOLVABLE_ERRORS = "android.service.euicc.extra.RESOLVABLE_ERRORS";
12718    field public static final int RESOLVABLE_ERROR_CONFIRMATION_CODE = 1; // 0x1
12719    field public static final int RESOLVABLE_ERROR_POLICY_RULES = 2; // 0x2
12720    field public static final int RESULT_FIRST_USER = 1; // 0x1
12721    field public static final int RESULT_MUST_DEACTIVATE_SIM = -1; // 0xffffffff
12722    field @Deprecated public static final int RESULT_NEED_CONFIRMATION_CODE = -2; // 0xfffffffe
12723    field public static final int RESULT_OK = 0; // 0x0
12724    field public static final int RESULT_RESOLVABLE_ERRORS = -2; // 0xfffffffe
12725  }
12726
12727  public abstract static class EuiccService.OtaStatusChangedCallback {
12728    ctor public EuiccService.OtaStatusChangedCallback();
12729    method public abstract void onOtaStatusChanged(int);
12730  }
12731
12732  public final class GetDefaultDownloadableSubscriptionListResult implements android.os.Parcelable {
12733    ctor public GetDefaultDownloadableSubscriptionListResult(int, @Nullable android.telephony.euicc.DownloadableSubscription[]);
12734    method public int describeContents();
12735    method @Nullable public java.util.List<android.telephony.euicc.DownloadableSubscription> getDownloadableSubscriptions();
12736    method public int getResult();
12737    method public void writeToParcel(android.os.Parcel, int);
12738    field @NonNull public static final android.os.Parcelable.Creator<android.service.euicc.GetDefaultDownloadableSubscriptionListResult> CREATOR;
12739  }
12740
12741  public final class GetDownloadableSubscriptionMetadataResult implements android.os.Parcelable {
12742    ctor public GetDownloadableSubscriptionMetadataResult(int, @Nullable android.telephony.euicc.DownloadableSubscription);
12743    method public int describeContents();
12744    method @Nullable public android.telephony.euicc.DownloadableSubscription getDownloadableSubscription();
12745    method public int getResult();
12746    method public void writeToParcel(android.os.Parcel, int);
12747    field @NonNull public static final android.os.Parcelable.Creator<android.service.euicc.GetDownloadableSubscriptionMetadataResult> CREATOR;
12748  }
12749
12750  public final class GetEuiccProfileInfoListResult implements android.os.Parcelable {
12751    ctor public GetEuiccProfileInfoListResult(int, @Nullable android.service.euicc.EuiccProfileInfo[], boolean);
12752    method public int describeContents();
12753    method public boolean getIsRemovable();
12754    method @Nullable public java.util.List<android.service.euicc.EuiccProfileInfo> getProfiles();
12755    method public int getResult();
12756    method public void writeToParcel(android.os.Parcel, int);
12757    field @NonNull public static final android.os.Parcelable.Creator<android.service.euicc.GetEuiccProfileInfoListResult> CREATOR;
12758  }
12759
12760}
12761
12762package android.service.games {
12763
12764  public final class CreateGameSessionRequest implements android.os.Parcelable {
12765    ctor public CreateGameSessionRequest(int, @NonNull String);
12766    method public int describeContents();
12767    method @NonNull public String getGamePackageName();
12768    method public int getTaskId();
12769    method public void writeToParcel(@NonNull android.os.Parcel, int);
12770    field @NonNull public static final android.os.Parcelable.Creator<android.service.games.CreateGameSessionRequest> CREATOR;
12771  }
12772
12773  public class GameService extends android.app.Service {
12774    ctor public GameService();
12775    method @RequiresPermission(android.Manifest.permission.MANAGE_GAME_ACTIVITY) public final void createGameSession(@IntRange(from=0) int);
12776    method @Nullable public final android.os.IBinder onBind(@Nullable android.content.Intent);
12777    method public void onConnected();
12778    method public void onDisconnected();
12779    method public void onGameStarted(@NonNull android.service.games.GameStartedEvent);
12780    field public static final String ACTION_GAME_SERVICE = "android.service.games.action.GAME_SERVICE";
12781    field public static final String SERVICE_META_DATA = "android.game_service";
12782  }
12783
12784  public abstract class GameSession {
12785    ctor public GameSession();
12786    method public void onCreate();
12787    method public void onDestroy();
12788    method public void onGameTaskFocusChanged(boolean);
12789    method public void onTransientSystemBarVisibilityFromRevealGestureChanged(boolean);
12790    method @RequiresPermission(android.Manifest.permission.MANAGE_GAME_ACTIVITY) public final boolean restartGame();
12791    method public void setTaskOverlayView(@NonNull android.view.View, @NonNull android.view.ViewGroup.LayoutParams);
12792    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);
12793    method @RequiresPermission(android.Manifest.permission.MANAGE_GAME_ACTIVITY) public void takeScreenshot(@NonNull java.util.concurrent.Executor, @NonNull android.service.games.GameSession.ScreenshotCallback);
12794  }
12795
12796  public static interface GameSession.ScreenshotCallback {
12797    method public void onFailure(int);
12798    method public void onSuccess();
12799    field public static final int ERROR_TAKE_SCREENSHOT_INTERNAL_ERROR = 0; // 0x0
12800  }
12801
12802  public interface GameSessionActivityCallback {
12803    method public void onActivityResult(int, @Nullable android.content.Intent);
12804    method public default void onActivityStartFailed(@NonNull Throwable);
12805  }
12806
12807  public abstract class GameSessionService extends android.app.Service {
12808    ctor public GameSessionService();
12809    method @Nullable public final android.os.IBinder onBind(@Nullable android.content.Intent);
12810    method @NonNull public abstract android.service.games.GameSession onNewSession(@NonNull android.service.games.CreateGameSessionRequest);
12811    field public static final String ACTION_GAME_SESSION_SERVICE = "android.service.games.action.GAME_SESSION_SERVICE";
12812  }
12813
12814  public final class GameStartedEvent implements android.os.Parcelable {
12815    ctor public GameStartedEvent(@IntRange(from=0) int, @NonNull String);
12816    method public int describeContents();
12817    method @NonNull public String getPackageName();
12818    method @IntRange(from=0) public int getTaskId();
12819    method public void writeToParcel(@NonNull android.os.Parcel, int);
12820    field @NonNull public static final android.os.Parcelable.Creator<android.service.games.GameStartedEvent> CREATOR;
12821  }
12822
12823}
12824
12825package android.service.notification {
12826
12827  public final class Adjustment implements android.os.Parcelable {
12828    ctor public Adjustment(String, String, android.os.Bundle, CharSequence, int);
12829    ctor public Adjustment(@NonNull String, @NonNull String, @NonNull android.os.Bundle, @NonNull CharSequence, @NonNull android.os.UserHandle);
12830    ctor protected Adjustment(android.os.Parcel);
12831    method public int describeContents();
12832    method @NonNull public CharSequence getExplanation();
12833    method @NonNull public String getKey();
12834    method @NonNull public String getPackage();
12835    method @NonNull public android.os.Bundle getSignals();
12836    method public int getUser();
12837    method @NonNull public android.os.UserHandle getUserHandle();
12838    method public void writeToParcel(android.os.Parcel, int);
12839    field @NonNull public static final android.os.Parcelable.Creator<android.service.notification.Adjustment> CREATOR;
12840    field public static final String KEY_CONTEXTUAL_ACTIONS = "key_contextual_actions";
12841    field public static final String KEY_IMPORTANCE = "key_importance";
12842    field public static final String KEY_IMPORTANCE_PROPOSAL = "key_importance_proposal";
12843    field public static final String KEY_NOT_CONVERSATION = "key_not_conversation";
12844    field public static final String KEY_PEOPLE = "key_people";
12845    field public static final String KEY_RANKING_SCORE = "key_ranking_score";
12846    field public static final String KEY_SENSITIVE_CONTENT = "key_sensitive_content";
12847    field public static final String KEY_SNOOZE_CRITERIA = "key_snooze_criteria";
12848    field public static final String KEY_TEXT_REPLIES = "key_text_replies";
12849    field public static final String KEY_USER_SENTIMENT = "key_user_sentiment";
12850  }
12851
12852  public abstract class NotificationAssistantService extends android.service.notification.NotificationListenerService {
12853    ctor public NotificationAssistantService();
12854    method public final void adjustNotification(@NonNull android.service.notification.Adjustment);
12855    method public final void adjustNotifications(@NonNull java.util.List<android.service.notification.Adjustment>);
12856    method public void onActionInvoked(@NonNull String, @NonNull android.app.Notification.Action, int);
12857    method @Deprecated public void onAllowedAdjustmentsChanged();
12858    method @NonNull public final android.os.IBinder onBind(@Nullable android.content.Intent);
12859    method public void onNotificationClicked(@NonNull String);
12860    method public void onNotificationDirectReplied(@NonNull String);
12861    method @Nullable public abstract android.service.notification.Adjustment onNotificationEnqueued(@NonNull android.service.notification.StatusBarNotification);
12862    method @Nullable public android.service.notification.Adjustment onNotificationEnqueued(@NonNull android.service.notification.StatusBarNotification, @NonNull android.app.NotificationChannel);
12863    method @Nullable public android.service.notification.Adjustment onNotificationEnqueued(@NonNull android.service.notification.StatusBarNotification, @NonNull android.app.NotificationChannel, @NonNull android.service.notification.NotificationListenerService.RankingMap);
12864    method public void onNotificationExpansionChanged(@NonNull String, boolean, boolean);
12865    method public void onNotificationFeedbackReceived(@NonNull String, @NonNull android.service.notification.NotificationListenerService.RankingMap, @NonNull android.os.Bundle);
12866    method public abstract void onNotificationSnoozedUntilContext(@NonNull android.service.notification.StatusBarNotification, @NonNull String);
12867    method public void onNotificationVisibilityChanged(@NonNull String, boolean);
12868    method public void onNotificationsSeen(@NonNull java.util.List<java.lang.String>);
12869    method public void onPanelHidden();
12870    method public void onPanelRevealed(int);
12871    method public void onSuggestedReplySent(@NonNull String, @NonNull CharSequence, int);
12872    method public final void unsnoozeNotification(@NonNull String);
12873    field public static final String ACTION_NOTIFICATION_ASSISTANT_DETAIL_SETTINGS = "android.service.notification.action.NOTIFICATION_ASSISTANT_DETAIL_SETTINGS";
12874    field public static final String FEEDBACK_RATING = "feedback.rating";
12875    field public static final String SERVICE_INTERFACE = "android.service.notification.NotificationAssistantService";
12876    field public static final int SOURCE_FROM_APP = 0; // 0x0
12877    field public static final int SOURCE_FROM_ASSISTANT = 1; // 0x1
12878  }
12879
12880  public abstract class NotificationListenerService extends android.app.Service {
12881    method @UiThread public void onNotificationRemoved(@NonNull android.service.notification.StatusBarNotification, @NonNull android.service.notification.NotificationListenerService.RankingMap, @NonNull android.service.notification.NotificationStats, int);
12882  }
12883
12884  public static class NotificationListenerService.Ranking {
12885    method public int getProposedImportance();
12886    method public boolean hasSensitiveContent();
12887  }
12888
12889  public final class NotificationStats implements android.os.Parcelable {
12890    ctor public NotificationStats();
12891    ctor protected NotificationStats(android.os.Parcel);
12892    method public int describeContents();
12893    method public int getDismissalSentiment();
12894    method public int getDismissalSurface();
12895    method public boolean hasDirectReplied();
12896    method public boolean hasExpanded();
12897    method public boolean hasInteracted();
12898    method public boolean hasSeen();
12899    method public boolean hasSnoozed();
12900    method public boolean hasViewedSettings();
12901    method public void setDirectReplied();
12902    method public void setDismissalSentiment(int);
12903    method public void setDismissalSurface(int);
12904    method public void setExpanded();
12905    method public void setSeen();
12906    method public void setSnoozed();
12907    method public void setViewedSettings();
12908    method public void writeToParcel(android.os.Parcel, int);
12909    field @NonNull public static final android.os.Parcelable.Creator<android.service.notification.NotificationStats> CREATOR;
12910    field public static final int DISMISSAL_AOD = 2; // 0x2
12911    field public static final int DISMISSAL_NOT_DISMISSED = -1; // 0xffffffff
12912    field public static final int DISMISSAL_OTHER = 0; // 0x0
12913    field public static final int DISMISSAL_PEEK = 1; // 0x1
12914    field public static final int DISMISSAL_SHADE = 3; // 0x3
12915    field public static final int DISMISS_SENTIMENT_NEGATIVE = 0; // 0x0
12916    field public static final int DISMISS_SENTIMENT_NEUTRAL = 1; // 0x1
12917    field public static final int DISMISS_SENTIMENT_POSITIVE = 2; // 0x2
12918    field public static final int DISMISS_SENTIMENT_UNKNOWN = -1000; // 0xfffffc18
12919  }
12920
12921  public final class SnoozeCriterion implements android.os.Parcelable {
12922    ctor public SnoozeCriterion(String, CharSequence, CharSequence);
12923    ctor protected SnoozeCriterion(android.os.Parcel);
12924    method public int describeContents();
12925    method public CharSequence getConfirmation();
12926    method public CharSequence getExplanation();
12927    method public String getId();
12928    method public void writeToParcel(android.os.Parcel, int);
12929    field @NonNull public static final android.os.Parcelable.Creator<android.service.notification.SnoozeCriterion> CREATOR;
12930  }
12931
12932}
12933
12934package android.service.oemlock {
12935
12936  public class OemLockManager {
12937    method @Nullable @RequiresPermission(android.Manifest.permission.MANAGE_CARRIER_OEM_UNLOCK_STATE) public String getLockName();
12938    method @RequiresPermission(android.Manifest.permission.MANAGE_CARRIER_OEM_UNLOCK_STATE) public boolean isOemUnlockAllowedByCarrier();
12939    method @RequiresPermission(android.Manifest.permission.MANAGE_USER_OEM_UNLOCK_STATE) public boolean isOemUnlockAllowedByUser();
12940    method @RequiresPermission(android.Manifest.permission.MANAGE_CARRIER_OEM_UNLOCK_STATE) public void setOemUnlockAllowedByCarrier(boolean, @Nullable byte[]);
12941    method @RequiresPermission(android.Manifest.permission.MANAGE_USER_OEM_UNLOCK_STATE) public void setOemUnlockAllowedByUser(boolean);
12942  }
12943
12944}
12945
12946package android.service.ondeviceintelligence {
12947
12948  public abstract class OnDeviceIntelligenceService extends android.app.Service {
12949    ctor public OnDeviceIntelligenceService();
12950    method @Nullable public final android.os.IBinder onBind(@NonNull android.content.Intent);
12951    method public abstract void onDownloadFeature(int, @NonNull android.app.ondeviceintelligence.Feature, @Nullable android.os.CancellationSignal, @NonNull android.app.ondeviceintelligence.DownloadCallback);
12952    method public abstract void onGetFeature(int, int, @NonNull android.os.OutcomeReceiver<android.app.ondeviceintelligence.Feature,android.app.ondeviceintelligence.OnDeviceIntelligenceException>);
12953    method public abstract void onGetFeatureDetails(int, @NonNull android.app.ondeviceintelligence.Feature, @NonNull android.os.OutcomeReceiver<android.app.ondeviceintelligence.FeatureDetails,android.app.ondeviceintelligence.OnDeviceIntelligenceException>);
12954    method public abstract void onGetReadOnlyFeatureFileDescriptorMap(@NonNull android.app.ondeviceintelligence.Feature, @NonNull java.util.function.Consumer<java.util.Map<java.lang.String,android.os.ParcelFileDescriptor>>);
12955    method public abstract void onGetVersion(@NonNull java.util.function.LongConsumer);
12956    method public abstract void onInferenceServiceConnected();
12957    method public abstract void onInferenceServiceDisconnected();
12958    method public abstract void onListFeatures(int, @NonNull android.os.OutcomeReceiver<java.util.List<android.app.ondeviceintelligence.Feature>,android.app.ondeviceintelligence.OnDeviceIntelligenceException>);
12959    method public final void updateProcessingState(@NonNull android.os.Bundle, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<android.os.PersistableBundle,android.app.ondeviceintelligence.OnDeviceIntelligenceException>);
12960    field public static final String SERVICE_INTERFACE = "android.service.ondeviceintelligence.OnDeviceIntelligenceService";
12961  }
12962
12963  public abstract class OnDeviceSandboxedInferenceService extends android.app.Service {
12964    ctor public OnDeviceSandboxedInferenceService();
12965    method public final void fetchFeatureFileDescriptorMap(@NonNull android.app.ondeviceintelligence.Feature, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.util.Map<java.lang.String,android.os.ParcelFileDescriptor>>);
12966    method @NonNull public java.util.concurrent.Executor getCallbackExecutor();
12967    method public final void getReadOnlyFileDescriptor(@NonNull String, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<android.os.ParcelFileDescriptor>) throws java.io.FileNotFoundException;
12968    method @Nullable public final android.os.IBinder onBind(@NonNull android.content.Intent);
12969    method @NonNull public abstract void onProcessRequest(int, @NonNull android.app.ondeviceintelligence.Feature, @NonNull android.os.Bundle, int, @Nullable android.os.CancellationSignal, @Nullable android.app.ondeviceintelligence.ProcessingSignal, @NonNull android.app.ondeviceintelligence.ProcessingCallback);
12970    method @NonNull public abstract void onProcessRequestStreaming(int, @NonNull android.app.ondeviceintelligence.Feature, @NonNull android.os.Bundle, int, @Nullable android.os.CancellationSignal, @Nullable android.app.ondeviceintelligence.ProcessingSignal, @NonNull android.app.ondeviceintelligence.StreamingProcessingCallback);
12971    method @NonNull public abstract void onTokenInfoRequest(int, @NonNull android.app.ondeviceintelligence.Feature, @NonNull android.os.Bundle, @Nullable android.os.CancellationSignal, @NonNull android.os.OutcomeReceiver<android.app.ondeviceintelligence.TokenInfo,android.app.ondeviceintelligence.OnDeviceIntelligenceException>);
12972    method public abstract void onUpdateProcessingState(@NonNull android.os.Bundle, @NonNull android.os.OutcomeReceiver<android.os.PersistableBundle,android.app.ondeviceintelligence.OnDeviceIntelligenceException>);
12973    method public final java.io.FileInputStream openFileInput(@NonNull String) throws java.io.FileNotFoundException;
12974    field public static final String SERVICE_INTERFACE = "android.service.ondeviceintelligence.OnDeviceSandboxedInferenceService";
12975  }
12976
12977}
12978
12979package android.service.persistentdata {
12980
12981  public class PersistentDataBlockManager {
12982    method @RequiresPermission(android.Manifest.permission.CONFIGURE_FACTORY_RESET_PROTECTION) public boolean deactivateFactoryResetProtection(@NonNull byte[]);
12983    method @RequiresPermission(android.Manifest.permission.ACCESS_PDB_STATE) public int getDataBlockSize();
12984    method @RequiresPermission(anyOf={android.Manifest.permission.READ_OEM_UNLOCK_STATE, "android.permission.OEM_UNLOCK_STATE"}) public int getFlashLockState();
12985    method public long getMaximumDataBlockSize();
12986    method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.READ_OEM_UNLOCK_STATE, "android.permission.OEM_UNLOCK_STATE"}) public boolean getOemUnlockEnabled();
12987    method @NonNull @RequiresPermission(android.Manifest.permission.ACCESS_PDB_STATE) public String getPersistentDataPackageName();
12988    method @Nullable public byte[] read();
12989    method public boolean setFactoryResetProtectionSecret(@NonNull byte[]);
12990    method @Deprecated @RequiresPermission("android.permission.OEM_UNLOCK_STATE") public void setOemUnlockEnabled(boolean);
12991    method @RequiresPermission("android.permission.OEM_UNLOCK_STATE") public void wipe();
12992    method public int write(@Nullable byte[]);
12993    field public static final int FLASH_LOCK_LOCKED = 1; // 0x1
12994    field public static final int FLASH_LOCK_UNKNOWN = -1; // 0xffffffff
12995    field public static final int FLASH_LOCK_UNLOCKED = 0; // 0x0
12996  }
12997
12998}
12999
13000package android.service.quicksettings {
13001
13002  public class TileService extends android.app.Service {
13003    method public final void setStatusIcon(android.graphics.drawable.Icon, String);
13004  }
13005
13006}
13007
13008package android.service.remotelockscreenvalidation {
13009
13010  public abstract class RemoteLockscreenValidationService extends android.app.Service {
13011    ctor public RemoteLockscreenValidationService();
13012    method @Nullable public final android.os.IBinder onBind(@NonNull android.content.Intent);
13013    method public abstract void onValidateLockscreenGuess(@NonNull byte[], @NonNull android.os.OutcomeReceiver<android.app.RemoteLockscreenValidationResult,java.lang.Exception>);
13014    field public static final String SERVICE_INTERFACE = "android.service.remotelockscreenvalidation.RemoteLockscreenValidationService";
13015  }
13016
13017}
13018
13019package android.service.resolver {
13020
13021  public abstract class ResolverRankerService extends android.app.Service {
13022    ctor public ResolverRankerService();
13023    method public android.os.IBinder onBind(android.content.Intent);
13024    method public void onPredictSharingProbabilities(java.util.List<android.service.resolver.ResolverTarget>);
13025    method public void onTrainRankingModel(java.util.List<android.service.resolver.ResolverTarget>, int);
13026    field public static final String BIND_PERMISSION = "android.permission.BIND_RESOLVER_RANKER_SERVICE";
13027    field public static final String HOLD_PERMISSION = "android.permission.PROVIDE_RESOLVER_RANKER_SERVICE";
13028    field public static final String SERVICE_INTERFACE = "android.service.resolver.ResolverRankerService";
13029  }
13030
13031  public final class ResolverTarget implements android.os.Parcelable {
13032    ctor public ResolverTarget();
13033    method public int describeContents();
13034    method public float getChooserScore();
13035    method public float getLaunchScore();
13036    method public float getRecencyScore();
13037    method public float getSelectProbability();
13038    method public float getTimeSpentScore();
13039    method public void setChooserScore(float);
13040    method public void setLaunchScore(float);
13041    method public void setRecencyScore(float);
13042    method public void setSelectProbability(float);
13043    method public void setTimeSpentScore(float);
13044    method public void writeToParcel(android.os.Parcel, int);
13045    field @NonNull public static final android.os.Parcelable.Creator<android.service.resolver.ResolverTarget> CREATOR;
13046  }
13047
13048}
13049
13050package android.service.resumeonreboot {
13051
13052  public abstract class ResumeOnRebootService extends android.app.Service {
13053    ctor public ResumeOnRebootService();
13054    method @Nullable public android.os.IBinder onBind(@Nullable android.content.Intent);
13055    method @NonNull public abstract byte[] onUnwrap(@NonNull byte[]) throws java.io.IOException;
13056    method @NonNull public abstract byte[] onWrap(@NonNull byte[], long) throws java.io.IOException;
13057    field public static final String SERVICE_INTERFACE = "android.service.resumeonreboot.ResumeOnRebootService";
13058  }
13059
13060}
13061
13062package android.service.rotationresolver {
13063
13064  public final class RotationResolutionRequest implements android.os.Parcelable {
13065    ctor public RotationResolutionRequest(@NonNull String, int, int, boolean, long);
13066    method public int describeContents();
13067    method public int getCurrentRotation();
13068    method @NonNull public String getForegroundPackageName();
13069    method public int getProposedRotation();
13070    method public long getTimeoutMillis();
13071    method public boolean shouldUseCamera();
13072    method public void writeToParcel(@NonNull android.os.Parcel, int);
13073    field @NonNull public static final android.os.Parcelable.Creator<android.service.rotationresolver.RotationResolutionRequest> CREATOR;
13074  }
13075
13076  public abstract class RotationResolverService extends android.app.Service {
13077    ctor public RotationResolverService();
13078    method @Nullable public final android.os.IBinder onBind(@NonNull android.content.Intent);
13079    method public abstract void onResolveRotation(@NonNull android.service.rotationresolver.RotationResolutionRequest, @Nullable android.os.CancellationSignal, @NonNull android.service.rotationresolver.RotationResolverService.RotationResolverCallback);
13080    field public static final int ROTATION_RESULT_FAILURE_CANCELLED = 0; // 0x0
13081    field public static final int ROTATION_RESULT_FAILURE_NOT_SUPPORTED = 4; // 0x4
13082    field public static final int ROTATION_RESULT_FAILURE_PREEMPTED = 2; // 0x2
13083    field public static final int ROTATION_RESULT_FAILURE_TIMED_OUT = 1; // 0x1
13084    field public static final int ROTATION_RESULT_FAILURE_UNKNOWN = 3; // 0x3
13085    field public static final String SERVICE_INTERFACE = "android.service.rotationresolver.RotationResolverService";
13086  }
13087
13088  public static interface RotationResolverService.RotationResolverCallback {
13089    method public void onFailure(int);
13090    method public void onSuccess(int);
13091  }
13092
13093}
13094
13095package android.service.search {
13096
13097  public abstract class SearchUiService extends android.app.Service {
13098    ctor public SearchUiService();
13099    method @NonNull public final android.os.IBinder onBind(@NonNull android.content.Intent);
13100    method @MainThread public abstract void onDestroy(@NonNull android.app.search.SearchSessionId);
13101    method @MainThread public abstract void onNotifyEvent(@NonNull android.app.search.SearchSessionId, @NonNull android.app.search.Query, @NonNull android.app.search.SearchTargetEvent);
13102    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>>);
13103    method public void onSearchSessionCreated(@NonNull android.app.search.SearchContext, @NonNull android.app.search.SearchSessionId);
13104    method @MainThread public void onStartUpdateEmptyQueryResult();
13105    method @MainThread public void onStopUpdateEmptyQueryResult();
13106    method public final void updateEmptyQueryResult(@NonNull android.app.search.SearchSessionId, @NonNull java.util.List<android.app.search.SearchTarget>);
13107  }
13108
13109}
13110
13111package android.service.settings.suggestions {
13112
13113  public final class Suggestion implements android.os.Parcelable {
13114    method public int describeContents();
13115    method public int getFlags();
13116    method public android.graphics.drawable.Icon getIcon();
13117    method public String getId();
13118    method public android.app.PendingIntent getPendingIntent();
13119    method public CharSequence getSummary();
13120    method public CharSequence getTitle();
13121    method public void writeToParcel(android.os.Parcel, int);
13122    field @NonNull public static final android.os.Parcelable.Creator<android.service.settings.suggestions.Suggestion> CREATOR;
13123    field public static final int FLAG_HAS_BUTTON = 1; // 0x1
13124  }
13125
13126  public static class Suggestion.Builder {
13127    ctor public Suggestion.Builder(String);
13128    method public android.service.settings.suggestions.Suggestion build();
13129    method public android.service.settings.suggestions.Suggestion.Builder setFlags(int);
13130    method public android.service.settings.suggestions.Suggestion.Builder setIcon(android.graphics.drawable.Icon);
13131    method public android.service.settings.suggestions.Suggestion.Builder setPendingIntent(android.app.PendingIntent);
13132    method public android.service.settings.suggestions.Suggestion.Builder setSummary(CharSequence);
13133    method public android.service.settings.suggestions.Suggestion.Builder setTitle(CharSequence);
13134  }
13135
13136  public abstract class SuggestionService extends android.app.Service {
13137    ctor public SuggestionService();
13138    method public android.os.IBinder onBind(android.content.Intent);
13139    method public abstract java.util.List<android.service.settings.suggestions.Suggestion> onGetSuggestions();
13140    method public abstract void onSuggestionDismissed(android.service.settings.suggestions.Suggestion);
13141    method public abstract void onSuggestionLaunched(android.service.settings.suggestions.Suggestion);
13142  }
13143
13144}
13145
13146package android.service.smartspace {
13147
13148  public abstract class SmartspaceService extends android.app.Service {
13149    ctor public SmartspaceService();
13150    method @MainThread public abstract void notifySmartspaceEvent(@NonNull android.app.smartspace.SmartspaceSessionId, @NonNull android.app.smartspace.SmartspaceTargetEvent);
13151    method @NonNull public final android.os.IBinder onBind(@NonNull android.content.Intent);
13152    method public abstract void onCreateSmartspaceSession(@NonNull android.app.smartspace.SmartspaceConfig, @NonNull android.app.smartspace.SmartspaceSessionId);
13153    method @MainThread public abstract void onDestroy(@NonNull android.app.smartspace.SmartspaceSessionId);
13154    method public abstract void onDestroySmartspaceSession(@NonNull android.app.smartspace.SmartspaceSessionId);
13155    method @MainThread public abstract void onRequestSmartspaceUpdate(@NonNull android.app.smartspace.SmartspaceSessionId);
13156    method public final void updateSmartspaceTargets(@NonNull android.app.smartspace.SmartspaceSessionId, @NonNull java.util.List<android.app.smartspace.SmartspaceTarget>);
13157  }
13158
13159}
13160
13161package android.service.storage {
13162
13163  public abstract class ExternalStorageService extends android.app.Service {
13164    ctor public ExternalStorageService();
13165    method public void onAnrDelayStarted(@NonNull String, int, int, int);
13166    method @NonNull public final android.os.IBinder onBind(@NonNull android.content.Intent);
13167    method public abstract void onEndSession(@NonNull String) throws java.io.IOException;
13168    method public void onFreeCache(@NonNull java.util.UUID, long) throws java.io.IOException;
13169    method public abstract void onStartSession(@NonNull String, int, @NonNull android.os.ParcelFileDescriptor, @NonNull java.io.File, @NonNull java.io.File) throws java.io.IOException;
13170    method public abstract void onVolumeStateChanged(@NonNull android.os.storage.StorageVolume) throws java.io.IOException;
13171    field public static final int FLAG_SESSION_ATTRIBUTE_INDEXABLE = 2; // 0x2
13172    field public static final int FLAG_SESSION_TYPE_FUSE = 1; // 0x1
13173    field public static final String SERVICE_INTERFACE = "android.service.storage.ExternalStorageService";
13174  }
13175
13176}
13177
13178package android.service.textclassifier {
13179
13180  public abstract class TextClassifierService extends android.app.Service {
13181    ctor public TextClassifierService();
13182    method @NonNull public static android.view.textclassifier.TextClassifier getDefaultTextClassifierImplementation(@NonNull android.content.Context);
13183    method @Deprecated public final android.view.textclassifier.TextClassifier getLocalTextClassifier();
13184    method @Nullable public final android.os.IBinder onBind(@NonNull android.content.Intent);
13185    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>);
13186    method public void onConnected();
13187    method @MainThread public void onCreateTextClassificationSession(@NonNull android.view.textclassifier.TextClassificationContext, @NonNull android.view.textclassifier.TextClassificationSessionId);
13188    method @MainThread public void onDestroyTextClassificationSession(@NonNull android.view.textclassifier.TextClassificationSessionId);
13189    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>);
13190    method public void onDisconnected();
13191    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>);
13192    method @Deprecated @MainThread public void onSelectionEvent(@Nullable android.view.textclassifier.TextClassificationSessionId, @NonNull android.view.textclassifier.SelectionEvent);
13193    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>);
13194    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>);
13195    method @MainThread public void onTextClassifierEvent(@Nullable android.view.textclassifier.TextClassificationSessionId, @NonNull android.view.textclassifier.TextClassifierEvent);
13196    field public static final String SERVICE_INTERFACE = "android.service.textclassifier.TextClassifierService";
13197  }
13198
13199  public static interface TextClassifierService.Callback<T> {
13200    method public void onFailure(@NonNull CharSequence);
13201    method public void onSuccess(T);
13202  }
13203
13204}
13205
13206package android.service.timezone {
13207
13208  public abstract class TimeZoneProviderService extends android.app.Service {
13209    ctor public TimeZoneProviderService();
13210    method @NonNull public final android.os.IBinder onBind(@NonNull android.content.Intent);
13211    method public abstract void onStartUpdates(long);
13212    method public abstract void onStopUpdates();
13213    method public final void reportPermanentFailure(@NonNull Throwable);
13214    method public final void reportSuggestion(@NonNull android.service.timezone.TimeZoneProviderSuggestion);
13215    method public final void reportSuggestion(@NonNull android.service.timezone.TimeZoneProviderSuggestion, @NonNull android.service.timezone.TimeZoneProviderStatus);
13216    method public final void reportUncertain();
13217    method public final void reportUncertain(@NonNull android.service.timezone.TimeZoneProviderStatus);
13218    field public static final String PRIMARY_LOCATION_TIME_ZONE_PROVIDER_SERVICE_INTERFACE = "android.service.timezone.PrimaryLocationTimeZoneProviderService";
13219    field public static final String SECONDARY_LOCATION_TIME_ZONE_PROVIDER_SERVICE_INTERFACE = "android.service.timezone.SecondaryLocationTimeZoneProviderService";
13220  }
13221
13222  public final class TimeZoneProviderStatus implements android.os.Parcelable {
13223    method public int describeContents();
13224    method public int getConnectivityDependencyStatus();
13225    method public int getLocationDetectionDependencyStatus();
13226    method public int getTimeZoneResolutionOperationStatus();
13227    method public void writeToParcel(@NonNull android.os.Parcel, int);
13228    field @NonNull public static final android.os.Parcelable.Creator<android.service.timezone.TimeZoneProviderStatus> CREATOR;
13229    field public static final int DEPENDENCY_STATUS_BLOCKED_BY_ENVIRONMENT = 4; // 0x4
13230    field public static final int DEPENDENCY_STATUS_BLOCKED_BY_SETTINGS = 6; // 0x6
13231    field public static final int DEPENDENCY_STATUS_DEGRADED_BY_SETTINGS = 5; // 0x5
13232    field public static final int DEPENDENCY_STATUS_NOT_APPLICABLE = 1; // 0x1
13233    field public static final int DEPENDENCY_STATUS_OK = 2; // 0x2
13234    field public static final int DEPENDENCY_STATUS_TEMPORARILY_UNAVAILABLE = 3; // 0x3
13235    field public static final int OPERATION_STATUS_FAILED = 3; // 0x3
13236    field public static final int OPERATION_STATUS_NOT_APPLICABLE = 1; // 0x1
13237    field public static final int OPERATION_STATUS_OK = 2; // 0x2
13238  }
13239
13240  public static final class TimeZoneProviderStatus.Builder {
13241    ctor public TimeZoneProviderStatus.Builder();
13242    method @NonNull public android.service.timezone.TimeZoneProviderStatus build();
13243    method @NonNull public android.service.timezone.TimeZoneProviderStatus.Builder setConnectivityDependencyStatus(int);
13244    method @NonNull public android.service.timezone.TimeZoneProviderStatus.Builder setLocationDetectionDependencyStatus(int);
13245    method @NonNull public android.service.timezone.TimeZoneProviderStatus.Builder setTimeZoneResolutionOperationStatus(int);
13246  }
13247
13248  public final class TimeZoneProviderSuggestion implements android.os.Parcelable {
13249    method public int describeContents();
13250    method public long getElapsedRealtimeMillis();
13251    method @NonNull public java.util.List<java.lang.String> getTimeZoneIds();
13252    method public void writeToParcel(@NonNull android.os.Parcel, int);
13253    field @NonNull public static final android.os.Parcelable.Creator<android.service.timezone.TimeZoneProviderSuggestion> CREATOR;
13254  }
13255
13256  public static final class TimeZoneProviderSuggestion.Builder {
13257    ctor public TimeZoneProviderSuggestion.Builder();
13258    method @NonNull public android.service.timezone.TimeZoneProviderSuggestion build();
13259    method @NonNull public android.service.timezone.TimeZoneProviderSuggestion.Builder setElapsedRealtimeMillis(long);
13260    method @NonNull public android.service.timezone.TimeZoneProviderSuggestion.Builder setTimeZoneIds(@NonNull java.util.List<java.lang.String>);
13261  }
13262
13263}
13264
13265package android.service.tracing {
13266
13267  public class TraceReportService extends android.app.Service {
13268    ctor public TraceReportService();
13269    method @Nullable public final android.os.IBinder onBind(@NonNull android.content.Intent);
13270    method public void onReportTrace(@NonNull android.service.tracing.TraceReportService.TraceParams);
13271  }
13272
13273  public static final class TraceReportService.TraceParams {
13274    method @NonNull public android.os.ParcelFileDescriptor getFd();
13275    method @NonNull public java.util.UUID getUuid();
13276  }
13277
13278}
13279
13280package android.service.translation {
13281
13282  public abstract class TranslationService extends android.app.Service {
13283    ctor public TranslationService();
13284    method @Nullable public final android.os.IBinder onBind(@NonNull android.content.Intent);
13285    method public void onConnected();
13286    method public abstract void onCreateTranslationSession(@NonNull android.view.translation.TranslationContext, int, @NonNull java.util.function.Consumer<java.lang.Boolean>);
13287    method public void onDisconnected();
13288    method public abstract void onFinishTranslationSession(int);
13289    method public abstract void onTranslationCapabilitiesRequest(int, int, @NonNull java.util.function.Consumer<java.util.Set<android.view.translation.TranslationCapability>>);
13290    method public abstract void onTranslationRequest(@NonNull android.view.translation.TranslationRequest, int, @Nullable android.os.CancellationSignal, @NonNull java.util.function.Consumer<android.view.translation.TranslationResponse>);
13291    method public final void updateTranslationCapability(@NonNull android.view.translation.TranslationCapability);
13292    field public static final String SERVICE_INTERFACE = "android.service.translation.TranslationService";
13293    field public static final String SERVICE_META_DATA = "android.translation_service";
13294  }
13295
13296}
13297
13298package android.service.trust {
13299
13300  public final class GrantTrustResult implements android.os.Parcelable {
13301    ctor public GrantTrustResult(int);
13302    method public int describeContents();
13303    method public int getStatus();
13304    method @NonNull public static String statusToString(int);
13305    method public void writeToParcel(@NonNull android.os.Parcel, int);
13306    field @NonNull public static final android.os.Parcelable.Creator<android.service.trust.GrantTrustResult> CREATOR;
13307    field public static final int STATUS_UNKNOWN = 0; // 0x0
13308    field public static final int STATUS_UNLOCKED_BY_GRANT = 1; // 0x1
13309  }
13310
13311  public class TrustAgentService extends android.app.Service {
13312    ctor public TrustAgentService();
13313    method public final void addEscrowToken(byte[], android.os.UserHandle);
13314    method @Deprecated public final void grantTrust(CharSequence, long, boolean);
13315    method @Deprecated public final void grantTrust(CharSequence, long, int);
13316    method public final void grantTrust(@NonNull CharSequence, long, int, @Nullable java.util.function.Consumer<android.service.trust.GrantTrustResult>);
13317    method public final void isEscrowTokenActive(long, android.os.UserHandle);
13318    method public final void lockUser();
13319    method public final android.os.IBinder onBind(android.content.Intent);
13320    method public boolean onConfigure(java.util.List<android.os.PersistableBundle>);
13321    method public void onDeviceLocked();
13322    method public void onDeviceUnlockLockout(long);
13323    method public void onDeviceUnlocked();
13324    method public void onEscrowTokenAdded(byte[], long, android.os.UserHandle);
13325    method public void onEscrowTokenRemoved(long, boolean);
13326    method public void onEscrowTokenStateReceived(long, int);
13327    method public void onTrustTimeout();
13328    method public void onUnlockAttempt(boolean);
13329    method public void onUserMayRequestUnlock();
13330    method public void onUserRequestedUnlock(boolean);
13331    method public final void removeEscrowToken(long, android.os.UserHandle);
13332    method public final void revokeTrust();
13333    method public final void setManagingTrust(boolean);
13334    method public final void showKeyguardErrorMessage(@NonNull CharSequence);
13335    method public final void unlockUserWithToken(long, byte[], android.os.UserHandle);
13336    field public static final int FLAG_GRANT_TRUST_DISMISS_KEYGUARD = 2; // 0x2
13337    field public static final int FLAG_GRANT_TRUST_DISPLAY_MESSAGE = 8; // 0x8
13338    field public static final int FLAG_GRANT_TRUST_INITIATED_BY_USER = 1; // 0x1
13339    field public static final int FLAG_GRANT_TRUST_TEMPORARY_AND_RENEWABLE = 4; // 0x4
13340    field public static final String SERVICE_INTERFACE = "android.service.trust.TrustAgentService";
13341    field public static final int TOKEN_STATE_ACTIVE = 1; // 0x1
13342    field public static final int TOKEN_STATE_INACTIVE = 0; // 0x0
13343    field public static final String TRUST_AGENT_META_DATA = "android.service.trust.trustagent";
13344  }
13345
13346}
13347
13348package android.service.voice {
13349
13350  public class AlwaysOnHotwordDetector implements android.service.voice.HotwordDetector {
13351    method @Nullable public android.content.Intent createEnrollIntent();
13352    method @Nullable public android.content.Intent createReEnrollIntent();
13353    method @Nullable public android.content.Intent createUnEnrollIntent();
13354    method @RequiresPermission(allOf={android.Manifest.permission.RECORD_AUDIO, android.Manifest.permission.CAPTURE_AUDIO_HOTWORD}) public int getParameter(int);
13355    method public int getSupportedAudioCapabilities();
13356    method public int getSupportedRecognitionModes();
13357    method @Nullable @RequiresPermission(allOf={android.Manifest.permission.RECORD_AUDIO, android.Manifest.permission.CAPTURE_AUDIO_HOTWORD}) public android.service.voice.AlwaysOnHotwordDetector.ModelParamRange queryParameter(int);
13358    method @RequiresPermission(allOf={android.Manifest.permission.RECORD_AUDIO, android.Manifest.permission.CAPTURE_AUDIO_HOTWORD}) public int setParameter(int, int);
13359    method @RequiresPermission(allOf={android.Manifest.permission.RECORD_AUDIO, android.Manifest.permission.CAPTURE_AUDIO_HOTWORD}) public boolean startRecognition(int, @NonNull byte[]);
13360    method @RequiresPermission(allOf={android.Manifest.permission.RECORD_AUDIO, android.Manifest.permission.CAPTURE_AUDIO_HOTWORD}) public boolean startRecognition(int);
13361    method @RequiresPermission(allOf={android.Manifest.permission.RECORD_AUDIO, android.Manifest.permission.CAPTURE_AUDIO_HOTWORD}) public boolean startRecognition();
13362    method public boolean startRecognition(@NonNull android.os.ParcelFileDescriptor, @NonNull android.media.AudioFormat, @Nullable android.os.PersistableBundle);
13363    method @RequiresPermission(allOf={android.Manifest.permission.RECORD_AUDIO, android.Manifest.permission.CAPTURE_AUDIO_HOTWORD}) public boolean stopRecognition();
13364    method public final void updateState(@Nullable android.os.PersistableBundle, @Nullable android.os.SharedMemory);
13365    field public static final int AUDIO_CAPABILITY_ECHO_CANCELLATION = 1; // 0x1
13366    field public static final int AUDIO_CAPABILITY_NOISE_SUPPRESSION = 2; // 0x2
13367    field public static final int MODEL_PARAM_THRESHOLD_FACTOR = 0; // 0x0
13368    field public static final int RECOGNITION_FLAG_ALLOW_MULTIPLE_TRIGGERS = 2; // 0x2
13369    field public static final int RECOGNITION_FLAG_CAPTURE_TRIGGER_AUDIO = 1; // 0x1
13370    field public static final int RECOGNITION_FLAG_ENABLE_AUDIO_ECHO_CANCELLATION = 4; // 0x4
13371    field public static final int RECOGNITION_FLAG_ENABLE_AUDIO_NOISE_SUPPRESSION = 8; // 0x8
13372    field public static final int RECOGNITION_FLAG_RUN_IN_BATTERY_SAVER = 16; // 0x10
13373    field public static final int RECOGNITION_MODE_USER_IDENTIFICATION = 2; // 0x2
13374    field public static final int RECOGNITION_MODE_VOICE_TRIGGER = 1; // 0x1
13375    field public static final int STATE_ERROR = 3; // 0x3
13376    field public static final int STATE_HARDWARE_UNAVAILABLE = -2; // 0xfffffffe
13377    field public static final int STATE_KEYPHRASE_ENROLLED = 2; // 0x2
13378    field public static final int STATE_KEYPHRASE_UNENROLLED = 1; // 0x1
13379    field @Deprecated public static final int STATE_KEYPHRASE_UNSUPPORTED = -1; // 0xffffffff
13380  }
13381
13382  public abstract static class AlwaysOnHotwordDetector.Callback implements android.service.voice.HotwordDetector.Callback {
13383    ctor public AlwaysOnHotwordDetector.Callback();
13384    method public abstract void onAvailabilityChanged(int);
13385    method public void onFailure(@NonNull android.service.voice.SoundTriggerFailure);
13386    method public void onHotwordDetectionServiceInitialized(int);
13387    method public void onHotwordDetectionServiceRestarted();
13388    method public void onRejected(@NonNull android.service.voice.HotwordRejectedResult);
13389  }
13390
13391  public static class AlwaysOnHotwordDetector.EventPayload {
13392    method @Nullable public android.os.ParcelFileDescriptor getAudioStream();
13393    method @Nullable public android.media.AudioFormat getCaptureAudioFormat();
13394    method @Nullable public byte[] getData();
13395    method public int getDataFormat();
13396    method public long getHalEventReceivedMillis();
13397    method @Nullable public android.service.voice.HotwordDetectedResult getHotwordDetectedResult();
13398    method @NonNull public java.util.List<android.hardware.soundtrigger.SoundTrigger.KeyphraseRecognitionExtra> getKeyphraseRecognitionExtras();
13399    method @Deprecated @Nullable public byte[] getTriggerAudio();
13400    method public boolean isRecognitionStopped();
13401    field public static final int DATA_FORMAT_RAW = 0; // 0x0
13402    field public static final int DATA_FORMAT_TRIGGER_AUDIO = 1; // 0x1
13403  }
13404
13405  public static final class AlwaysOnHotwordDetector.ModelParamRange {
13406    method public int getEnd();
13407    method public int getStart();
13408  }
13409
13410  public final class FailureSuggestedAction {
13411    field public static final int DISABLE_DETECTION = 2; // 0x2
13412    field public static final int NONE = 1; // 0x1
13413    field public static final int RECREATE_DETECTOR = 3; // 0x3
13414    field public static final int RESTART_RECOGNITION = 4; // 0x4
13415    field public static final int UNKNOWN = 0; // 0x0
13416  }
13417
13418  public final class HotwordAudioStream implements android.os.Parcelable {
13419    method public int describeContents();
13420    method @NonNull public android.media.AudioFormat getAudioFormat();
13421    method @NonNull public android.os.ParcelFileDescriptor getAudioStreamParcelFileDescriptor();
13422    method @NonNull public byte[] getInitialAudio();
13423    method @NonNull public android.os.PersistableBundle getMetadata();
13424    method @Nullable public android.media.AudioTimestamp getTimestamp();
13425    method public void writeToParcel(@NonNull android.os.Parcel, int);
13426    field @NonNull public static final android.os.Parcelable.Creator<android.service.voice.HotwordAudioStream> CREATOR;
13427    field public static final String KEY_AUDIO_STREAM_COPY_BUFFER_LENGTH_BYTES = "android.service.voice.key.AUDIO_STREAM_COPY_BUFFER_LENGTH_BYTES";
13428  }
13429
13430  public static final class HotwordAudioStream.Builder {
13431    ctor public HotwordAudioStream.Builder(@NonNull android.media.AudioFormat, @NonNull android.os.ParcelFileDescriptor);
13432    method @NonNull public android.service.voice.HotwordAudioStream build();
13433    method @NonNull public android.service.voice.HotwordAudioStream.Builder setAudioFormat(@NonNull android.media.AudioFormat);
13434    method @NonNull public android.service.voice.HotwordAudioStream.Builder setAudioStreamParcelFileDescriptor(@NonNull android.os.ParcelFileDescriptor);
13435    method @NonNull public android.service.voice.HotwordAudioStream.Builder setInitialAudio(@NonNull byte[]);
13436    method @NonNull public android.service.voice.HotwordAudioStream.Builder setMetadata(@NonNull android.os.PersistableBundle);
13437    method @NonNull public android.service.voice.HotwordAudioStream.Builder setTimestamp(@NonNull android.media.AudioTimestamp);
13438  }
13439
13440  public final class HotwordDetectedResult implements android.os.Parcelable {
13441    method public int describeContents();
13442    method public int getAudioChannel();
13443    method @NonNull public java.util.List<android.service.voice.HotwordAudioStream> getAudioStreams();
13444    method public int getBackgroundAudioPower();
13445    method public int getConfidenceLevel();
13446    method @NonNull public android.os.PersistableBundle getExtras();
13447    method public int getHotwordDurationMillis();
13448    method public int getHotwordOffsetMillis();
13449    method public int getHotwordPhraseId();
13450    method public static int getMaxBackgroundAudioPower();
13451    method public static int getMaxBundleSize();
13452    method public static int getMaxHotwordPhraseId();
13453    method public static int getMaxScore();
13454    method public static int getMaxSpeakerId();
13455    method @Nullable public android.media.MediaSyncEvent getMediaSyncEvent();
13456    method public int getPersonalizedScore();
13457    method public int getProximity();
13458    method public int getScore();
13459    method public int getSpeakerId();
13460    method public boolean isHotwordDetectionPersonalized();
13461    method public void writeToParcel(@NonNull android.os.Parcel, int);
13462    field public static final int AUDIO_CHANNEL_UNSET = -1; // 0xffffffff
13463    field public static final int BACKGROUND_AUDIO_POWER_UNSET = -1; // 0xffffffff
13464    field public static final int CONFIDENCE_LEVEL_HIGH = 5; // 0x5
13465    field public static final int CONFIDENCE_LEVEL_LOW = 1; // 0x1
13466    field public static final int CONFIDENCE_LEVEL_LOW_MEDIUM = 2; // 0x2
13467    field public static final int CONFIDENCE_LEVEL_MEDIUM = 3; // 0x3
13468    field public static final int CONFIDENCE_LEVEL_MEDIUM_HIGH = 4; // 0x4
13469    field public static final int CONFIDENCE_LEVEL_NONE = 0; // 0x0
13470    field public static final int CONFIDENCE_LEVEL_VERY_HIGH = 6; // 0x6
13471    field @NonNull public static final android.os.Parcelable.Creator<android.service.voice.HotwordDetectedResult> CREATOR;
13472    field public static final int HOTWORD_OFFSET_UNSET = -1; // 0xffffffff
13473    field public static final int PROXIMITY_FAR = 2; // 0x2
13474    field public static final int PROXIMITY_NEAR = 1; // 0x1
13475    field public static final int PROXIMITY_UNKNOWN = -1; // 0xffffffff
13476  }
13477
13478  public static final class HotwordDetectedResult.Builder {
13479    ctor public HotwordDetectedResult.Builder();
13480    method @NonNull public android.service.voice.HotwordDetectedResult build();
13481    method @NonNull public android.service.voice.HotwordDetectedResult.Builder setAudioChannel(int);
13482    method @NonNull public android.service.voice.HotwordDetectedResult.Builder setAudioStreams(@NonNull java.util.List<android.service.voice.HotwordAudioStream>);
13483    method @NonNull public android.service.voice.HotwordDetectedResult.Builder setBackgroundAudioPower(int);
13484    method @NonNull public android.service.voice.HotwordDetectedResult.Builder setConfidenceLevel(int);
13485    method @NonNull public android.service.voice.HotwordDetectedResult.Builder setExtras(@NonNull android.os.PersistableBundle);
13486    method @NonNull public android.service.voice.HotwordDetectedResult.Builder setHotwordDetectionPersonalized(boolean);
13487    method @NonNull public android.service.voice.HotwordDetectedResult.Builder setHotwordDurationMillis(int);
13488    method @NonNull public android.service.voice.HotwordDetectedResult.Builder setHotwordOffsetMillis(int);
13489    method @NonNull public android.service.voice.HotwordDetectedResult.Builder setHotwordPhraseId(int);
13490    method @NonNull public android.service.voice.HotwordDetectedResult.Builder setMediaSyncEvent(@NonNull android.media.MediaSyncEvent);
13491    method @NonNull public android.service.voice.HotwordDetectedResult.Builder setPersonalizedScore(int);
13492    method @NonNull public android.service.voice.HotwordDetectedResult.Builder setScore(int);
13493    method @NonNull public android.service.voice.HotwordDetectedResult.Builder setSpeakerId(int);
13494  }
13495
13496  public abstract class HotwordDetectionService extends android.app.Service implements android.service.voice.SandboxedDetectionInitializer {
13497    ctor public HotwordDetectionService();
13498    method @Deprecated public static int getMaxCustomInitializationStatus();
13499    method @Nullable public final android.os.IBinder onBind(@NonNull android.content.Intent);
13500    method public void onDetect(@NonNull android.service.voice.AlwaysOnHotwordDetector.EventPayload, long, @NonNull android.service.voice.HotwordDetectionService.Callback);
13501    method public void onDetect(@NonNull android.service.voice.HotwordDetectionService.Callback);
13502    method public void onDetect(@NonNull android.os.ParcelFileDescriptor, @NonNull android.media.AudioFormat, @Nullable android.os.PersistableBundle, @NonNull android.service.voice.HotwordDetectionService.Callback);
13503    method public void onStopDetection();
13504    method public void onUpdateState(@Nullable android.os.PersistableBundle, @Nullable android.os.SharedMemory, long, @Nullable java.util.function.IntConsumer);
13505    field @Deprecated public static final int INITIALIZATION_STATUS_SUCCESS = 0; // 0x0
13506    field @Deprecated public static final int INITIALIZATION_STATUS_UNKNOWN = 100; // 0x64
13507    field public static final String KEY_SYSTEM_WILL_CLOSE_AUDIO_STREAM_AFTER_CALLBACK = "android.service.voice.HotwordDetectionService.KEY_SYSTEM_WILL_CLOSE_AUDIO_STREAM_AFTER_CALLBACK";
13508    field public static final String SERVICE_INTERFACE = "android.service.voice.HotwordDetectionService";
13509  }
13510
13511  public static final class HotwordDetectionService.Callback {
13512    method public void onDetected(@NonNull android.service.voice.HotwordDetectedResult);
13513    method public void onRejected(@NonNull android.service.voice.HotwordRejectedResult);
13514  }
13515
13516  public final class HotwordDetectionServiceFailure implements android.os.Parcelable {
13517    method public int describeContents();
13518    method public int getErrorCode();
13519    method @NonNull public String getErrorMessage();
13520    method public int getSuggestedAction();
13521    method public void writeToParcel(@NonNull android.os.Parcel, int);
13522    field @NonNull public static final android.os.Parcelable.Creator<android.service.voice.HotwordDetectionServiceFailure> CREATOR;
13523    field public static final int ERROR_CODE_BINDING_DIED = 2; // 0x2
13524    field public static final int ERROR_CODE_BIND_FAILURE = 1; // 0x1
13525    field public static final int ERROR_CODE_COPY_AUDIO_DATA_FAILURE = 3; // 0x3
13526    field public static final int ERROR_CODE_DETECT_TIMEOUT = 4; // 0x4
13527    field public static final int ERROR_CODE_ON_DETECTED_SECURITY_EXCEPTION = 5; // 0x5
13528    field public static final int ERROR_CODE_ON_DETECTED_STREAM_COPY_FAILURE = 6; // 0x6
13529    field public static final int ERROR_CODE_REMOTE_EXCEPTION = 7; // 0x7
13530    field public static final int ERROR_CODE_UNKNOWN = 0; // 0x0
13531  }
13532
13533  public interface HotwordDetector {
13534    method public default void destroy();
13535    method @RequiresPermission(allOf={android.Manifest.permission.RECORD_AUDIO, android.Manifest.permission.CAPTURE_AUDIO_HOTWORD}) public boolean startRecognition();
13536    method public boolean startRecognition(@NonNull android.os.ParcelFileDescriptor, @NonNull android.media.AudioFormat, @Nullable android.os.PersistableBundle);
13537    method public boolean stopRecognition();
13538    method public void updateState(@Nullable android.os.PersistableBundle, @Nullable android.os.SharedMemory);
13539  }
13540
13541  public static interface HotwordDetector.Callback {
13542    method public void onDetected(@NonNull android.service.voice.AlwaysOnHotwordDetector.EventPayload);
13543    method @Deprecated public void onError();
13544    method public default void onFailure(@NonNull android.service.voice.HotwordDetectionServiceFailure);
13545    method public void onHotwordDetectionServiceInitialized(int);
13546    method public void onHotwordDetectionServiceRestarted();
13547    method public void onRecognitionPaused();
13548    method public void onRecognitionResumed();
13549    method public void onRejected(@NonNull android.service.voice.HotwordRejectedResult);
13550    method public default void onUnknownFailure(@NonNull String);
13551  }
13552
13553  public final class HotwordRejectedResult implements android.os.Parcelable {
13554    method public int describeContents();
13555    method public int getConfidenceLevel();
13556    method public void writeToParcel(@NonNull android.os.Parcel, int);
13557    field public static final int CONFIDENCE_LEVEL_HIGH = 3; // 0x3
13558    field public static final int CONFIDENCE_LEVEL_LOW = 1; // 0x1
13559    field public static final int CONFIDENCE_LEVEL_MEDIUM = 2; // 0x2
13560    field public static final int CONFIDENCE_LEVEL_NONE = 0; // 0x0
13561    field public static final int CONFIDENCE_LEVEL_VERY_HIGH = 4; // 0x4
13562    field @NonNull public static final android.os.Parcelable.Creator<android.service.voice.HotwordRejectedResult> CREATOR;
13563  }
13564
13565  public static final class HotwordRejectedResult.Builder {
13566    ctor public HotwordRejectedResult.Builder();
13567    method @NonNull public android.service.voice.HotwordRejectedResult build();
13568    method @NonNull public android.service.voice.HotwordRejectedResult.Builder setConfidenceLevel(int);
13569  }
13570
13571  public interface SandboxedDetectionInitializer {
13572    method public static int getMaxCustomInitializationStatus();
13573    method public void onUpdateState(@Nullable android.os.PersistableBundle, @Nullable android.os.SharedMemory, long, @Nullable java.util.function.IntConsumer);
13574    field public static final int INITIALIZATION_STATUS_SUCCESS = 0; // 0x0
13575    field public static final int INITIALIZATION_STATUS_UNKNOWN = 100; // 0x64
13576  }
13577
13578  public final class SoundTriggerFailure implements android.os.Parcelable {
13579    method public int describeContents();
13580    method public int getErrorCode();
13581    method @NonNull public String getErrorMessage();
13582    method public int getSuggestedAction();
13583    method public void writeToParcel(@NonNull android.os.Parcel, int);
13584    field @NonNull public static final android.os.Parcelable.Creator<android.service.voice.SoundTriggerFailure> CREATOR;
13585    field public static final int ERROR_CODE_MODULE_DIED = 1; // 0x1
13586    field public static final int ERROR_CODE_RECOGNITION_RESUME_FAILED = 2; // 0x2
13587    field public static final int ERROR_CODE_UNEXPECTED_PREEMPTION = 3; // 0x3
13588    field public static final int ERROR_CODE_UNKNOWN = 0; // 0x0
13589  }
13590
13591  public final class VisualQueryAttentionResult implements android.os.Parcelable {
13592    method public int describeContents();
13593    method @IntRange(from=1, to=100) public int getEngagementLevel();
13594    method public int getInteractionIntention();
13595    method public void writeToParcel(@NonNull android.os.Parcel, int);
13596    field @NonNull public static final android.os.Parcelable.Creator<android.service.voice.VisualQueryAttentionResult> CREATOR;
13597    field public static final int INTERACTION_INTENTION_AUDIO_VISUAL = 0; // 0x0
13598    field public static final int INTERACTION_INTENTION_VISUAL_ACCESSIBILITY = 1; // 0x1
13599  }
13600
13601  public static final class VisualQueryAttentionResult.Builder {
13602    ctor public VisualQueryAttentionResult.Builder();
13603    method @NonNull public android.service.voice.VisualQueryAttentionResult build();
13604    method @NonNull public android.service.voice.VisualQueryAttentionResult.Builder setEngagementLevel(@IntRange(from=1, to=100) int);
13605    method @NonNull public android.service.voice.VisualQueryAttentionResult.Builder setInteractionIntention(int);
13606  }
13607
13608  public final class VisualQueryDetectedResult implements android.os.Parcelable {
13609    method public int describeContents();
13610    method @Nullable public byte[] getAccessibilityDetectionData();
13611    method public static int getMaxSpeakerId();
13612    method @NonNull public String getPartialQuery();
13613    method public int getSpeakerId();
13614    method public void writeToParcel(@NonNull android.os.Parcel, int);
13615    field @NonNull public static final android.os.Parcelable.Creator<android.service.voice.VisualQueryDetectedResult> CREATOR;
13616  }
13617
13618  public static final class VisualQueryDetectedResult.Builder {
13619    ctor public VisualQueryDetectedResult.Builder();
13620    method @NonNull public android.service.voice.VisualQueryDetectedResult build();
13621    method @NonNull public android.service.voice.VisualQueryDetectedResult.Builder setAccessibilityDetectionData(@NonNull byte...);
13622    method @NonNull public android.service.voice.VisualQueryDetectedResult.Builder setPartialQuery(@NonNull String);
13623    method @NonNull public android.service.voice.VisualQueryDetectedResult.Builder setSpeakerId(int);
13624  }
13625
13626  public abstract class VisualQueryDetectionService extends android.app.Service implements android.service.voice.SandboxedDetectionInitializer {
13627    ctor public VisualQueryDetectionService();
13628    method public final void finishQuery() throws java.lang.IllegalStateException;
13629    method public final void gainedAttention();
13630    method public final void gainedAttention(@NonNull android.service.voice.VisualQueryAttentionResult);
13631    method public final void lostAttention();
13632    method public final void lostAttention(int);
13633    method @Nullable public android.os.IBinder onBind(@NonNull android.content.Intent);
13634    method public void onStartDetection();
13635    method public void onStopDetection();
13636    method public void onUpdateState(@Nullable android.os.PersistableBundle, @Nullable android.os.SharedMemory, long, @Nullable java.util.function.IntConsumer);
13637    method public final void rejectQuery() throws java.lang.IllegalStateException;
13638    method public final void streamQuery(@NonNull String) throws java.lang.IllegalStateException;
13639    method public final void streamQuery(@NonNull android.service.voice.VisualQueryDetectedResult);
13640    field public static final String SERVICE_INTERFACE = "android.service.voice.VisualQueryDetectionService";
13641  }
13642
13643  public final class VisualQueryDetectionServiceFailure implements android.os.Parcelable {
13644    method public int describeContents();
13645    method public int getErrorCode();
13646    method @NonNull public String getErrorMessage();
13647    method public int getSuggestedAction();
13648    method public void writeToParcel(@NonNull android.os.Parcel, int);
13649    field @NonNull public static final android.os.Parcelable.Creator<android.service.voice.VisualQueryDetectionServiceFailure> CREATOR;
13650    field public static final int ERROR_CODE_BINDING_DIED = 2; // 0x2
13651    field public static final int ERROR_CODE_BIND_FAILURE = 1; // 0x1
13652    field public static final int ERROR_CODE_ILLEGAL_ATTENTION_STATE = 3; // 0x3
13653    field public static final int ERROR_CODE_ILLEGAL_STREAMING_STATE = 4; // 0x4
13654    field public static final int ERROR_CODE_REMOTE_EXCEPTION = 5; // 0x5
13655    field public static final int ERROR_CODE_UNKNOWN = 0; // 0x0
13656  }
13657
13658  public class VisualQueryDetector {
13659    method public void clearAccessibilityDetectionEnabledListener();
13660    method public void destroy();
13661    method public boolean isAccessibilityDetectionEnabled();
13662    method public void setAccessibilityDetectionEnabledListener(@NonNull java.util.function.Consumer<java.lang.Boolean>);
13663    method @RequiresPermission(allOf={android.Manifest.permission.CAMERA, android.Manifest.permission.RECORD_AUDIO}) public boolean startRecognition();
13664    method @RequiresPermission(allOf={android.Manifest.permission.CAMERA, android.Manifest.permission.RECORD_AUDIO}) public boolean stopRecognition();
13665    method public void updateState(@Nullable android.os.PersistableBundle, @Nullable android.os.SharedMemory);
13666  }
13667
13668  public static interface VisualQueryDetector.Callback {
13669    method public void onFailure(@NonNull android.service.voice.VisualQueryDetectionServiceFailure);
13670    method public void onQueryDetected(@NonNull String);
13671    method public default void onQueryDetected(@NonNull android.service.voice.VisualQueryDetectedResult);
13672    method public void onQueryFinished();
13673    method public void onQueryRejected();
13674    method public void onUnknownFailure(@NonNull String);
13675    method public void onVisualQueryDetectionServiceInitialized(int);
13676    method public void onVisualQueryDetectionServiceRestarted();
13677  }
13678
13679  public class VoiceInteractionService extends android.app.Service {
13680    method @Deprecated @NonNull public final android.service.voice.AlwaysOnHotwordDetector createAlwaysOnHotwordDetector(String, java.util.Locale, android.service.voice.AlwaysOnHotwordDetector.Callback);
13681    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);
13682    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);
13683    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);
13684    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);
13685    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);
13686    method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_VOICE_KEYPHRASES) public final android.media.voice.KeyphraseModelManager createKeyphraseModelManager();
13687    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);
13688  }
13689
13690}
13691
13692package android.service.wallpaper {
13693
13694  public class WallpaperService.Engine {
13695    method public boolean isInAmbientMode();
13696    method @MainThread public void onAmbientModeChanged(boolean, long);
13697  }
13698
13699}
13700
13701package android.service.wallpapereffectsgeneration {
13702
13703  public abstract class WallpaperEffectsGenerationService extends android.app.Service {
13704    ctor public WallpaperEffectsGenerationService();
13705    method @NonNull public final android.os.IBinder onBind(@NonNull android.content.Intent);
13706    method @MainThread public abstract void onGenerateCinematicEffect(@NonNull android.app.wallpapereffectsgeneration.CinematicEffectRequest);
13707    method public final void returnCinematicEffectResponse(@NonNull android.app.wallpapereffectsgeneration.CinematicEffectResponse);
13708    field public static final String SERVICE_INTERFACE = "android.service.wallpapereffectsgeneration.WallpaperEffectsGenerationService";
13709  }
13710
13711}
13712
13713package android.service.watchdog {
13714
13715  public abstract class ExplicitHealthCheckService extends android.app.Service {
13716    ctor public ExplicitHealthCheckService();
13717    method public final void notifyHealthCheckPassed(@NonNull String);
13718    method @NonNull public final android.os.IBinder onBind(@NonNull android.content.Intent);
13719    method public abstract void onCancelHealthCheck(@NonNull String);
13720    method @NonNull public abstract java.util.List<java.lang.String> onGetRequestedPackages();
13721    method @NonNull public abstract java.util.List<android.service.watchdog.ExplicitHealthCheckService.PackageConfig> onGetSupportedPackages();
13722    method public abstract void onRequestHealthCheck(@NonNull String);
13723    field public static final String BIND_PERMISSION = "android.permission.BIND_EXPLICIT_HEALTH_CHECK_SERVICE";
13724    field public static final String SERVICE_INTERFACE = "android.service.watchdog.ExplicitHealthCheckService";
13725  }
13726
13727  public static final class ExplicitHealthCheckService.PackageConfig implements android.os.Parcelable {
13728    ctor public ExplicitHealthCheckService.PackageConfig(@NonNull String, long);
13729    method public int describeContents();
13730    method public long getHealthCheckTimeoutMillis();
13731    method @NonNull public String getPackageName();
13732    method public void writeToParcel(android.os.Parcel, int);
13733    field @NonNull public static final android.os.Parcelable.Creator<android.service.watchdog.ExplicitHealthCheckService.PackageConfig> CREATOR;
13734  }
13735
13736}
13737
13738package android.service.wearable {
13739
13740  public interface WearableSensingDataRequester {
13741    method public void requestData(@NonNull android.app.wearable.WearableSensingDataRequest, @NonNull java.util.function.Consumer<java.lang.Integer>);
13742    field public static final int STATUS_OBSERVER_CANCELLED = 2; // 0x2
13743    field public static final int STATUS_SUCCESS = 1; // 0x1
13744    field public static final int STATUS_TOO_FREQUENT = 4; // 0x4
13745    field public static final int STATUS_TOO_LARGE = 3; // 0x3
13746    field public static final int STATUS_UNKNOWN = 0; // 0x0
13747  }
13748
13749  public abstract class WearableSensingService extends android.app.Service {
13750    ctor public WearableSensingService();
13751    method @Nullable public final android.os.IBinder onBind(@NonNull android.content.Intent);
13752    method @BinderThread public abstract void onDataProvided(@NonNull android.os.PersistableBundle, @Nullable android.os.SharedMemory, @NonNull java.util.function.Consumer<java.lang.Integer>);
13753    method @BinderThread public void onDataRequestObserverRegistered(int, @NonNull String, @NonNull android.service.wearable.WearableSensingDataRequester, @NonNull java.util.function.Consumer<java.lang.Integer>);
13754    method @BinderThread public void onDataRequestObserverUnregistered(int, @NonNull String, @NonNull android.service.wearable.WearableSensingDataRequester, @NonNull java.util.function.Consumer<java.lang.Integer>);
13755    method @BinderThread public abstract void onDataStreamProvided(@NonNull android.os.ParcelFileDescriptor, @NonNull java.util.function.Consumer<java.lang.Integer>);
13756    method @BinderThread public abstract void onQueryServiceStatus(@NonNull java.util.Set<java.lang.Integer>, @NonNull String, @NonNull java.util.function.Consumer<android.service.ambientcontext.AmbientContextDetectionServiceStatus>);
13757    method @BinderThread public void onSecureConnectionProvided(@NonNull android.os.ParcelFileDescriptor, @NonNull java.util.function.Consumer<java.lang.Integer>);
13758    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>);
13759    method @BinderThread public void onStartHotwordRecognition(@NonNull java.util.function.Consumer<android.service.voice.HotwordAudioStream>, @NonNull java.util.function.Consumer<java.lang.Integer>);
13760    method public abstract void onStopDetection(@NonNull String);
13761    method @BinderThread public void onStopHotwordAudioStream();
13762    method @BinderThread public void onStopHotwordRecognition(@NonNull java.util.function.Consumer<java.lang.Integer>);
13763    method @BinderThread public void onValidatedByHotwordDetectionService();
13764    field public static final String SERVICE_INTERFACE = "android.service.wearable.WearableSensingService";
13765  }
13766
13767}
13768
13769package android.telecom {
13770
13771  @Deprecated public class AudioState implements android.os.Parcelable {
13772    ctor @Deprecated public AudioState(boolean, int, int);
13773    ctor @Deprecated public AudioState(android.telecom.AudioState);
13774    ctor @Deprecated public AudioState(android.telecom.CallAudioState);
13775    method @Deprecated public static String audioRouteToString(int);
13776    method @Deprecated public int describeContents();
13777    method @Deprecated public int getRoute();
13778    method @Deprecated public int getSupportedRouteMask();
13779    method @Deprecated public boolean isMuted();
13780    method @Deprecated public void writeToParcel(android.os.Parcel, int);
13781    field @Deprecated @NonNull public static final android.os.Parcelable.Creator<android.telecom.AudioState> CREATOR;
13782    field @Deprecated public static final int ROUTE_BLUETOOTH = 2; // 0x2
13783    field @Deprecated public static final int ROUTE_EARPIECE = 1; // 0x1
13784    field @Deprecated public static final int ROUTE_SPEAKER = 8; // 0x8
13785    field @Deprecated public static final int ROUTE_WIRED_HEADSET = 4; // 0x4
13786    field @Deprecated public static final int ROUTE_WIRED_OR_EARPIECE = 5; // 0x5
13787  }
13788
13789  public final class BluetoothCallQualityReport implements android.os.Parcelable {
13790    method public int describeContents();
13791    method @IntRange(from=0) public int getNegativeAcknowledgementCount();
13792    method @IntRange(from=0) public int getPacketsNotReceivedCount();
13793    method @IntRange(from=0) public int getRetransmittedPacketsCount();
13794    method @IntRange(from=0xffffff81, to=20) public int getRssiDbm();
13795    method public long getSentTimestampMillis();
13796    method public int getSnrDb();
13797    method public boolean isChoppyVoice();
13798    method public void writeToParcel(@NonNull android.os.Parcel, int);
13799    field @NonNull public static final android.os.Parcelable.Creator<android.telecom.BluetoothCallQualityReport> CREATOR;
13800    field public static final String EVENT_BLUETOOTH_CALL_QUALITY_REPORT = "android.telecom.event.BLUETOOTH_CALL_QUALITY_REPORT";
13801    field public static final String EXTRA_BLUETOOTH_CALL_QUALITY_REPORT = "android.telecom.extra.BLUETOOTH_CALL_QUALITY_REPORT";
13802  }
13803
13804  public static final class BluetoothCallQualityReport.Builder {
13805    ctor public BluetoothCallQualityReport.Builder();
13806    method @NonNull public android.telecom.BluetoothCallQualityReport build();
13807    method @NonNull public android.telecom.BluetoothCallQualityReport.Builder setChoppyVoice(boolean);
13808    method @NonNull public android.telecom.BluetoothCallQualityReport.Builder setNegativeAcknowledgementCount(int);
13809    method @NonNull public android.telecom.BluetoothCallQualityReport.Builder setPacketsNotReceivedCount(int);
13810    method @NonNull public android.telecom.BluetoothCallQualityReport.Builder setRetransmittedPacketsCount(int);
13811    method @NonNull public android.telecom.BluetoothCallQualityReport.Builder setRssiDbm(int);
13812    method @NonNull public android.telecom.BluetoothCallQualityReport.Builder setSentTimestampMillis(long);
13813    method @NonNull public android.telecom.BluetoothCallQualityReport.Builder setSnrDb(int);
13814  }
13815
13816  public final class Call {
13817    method @Deprecated public void addListener(android.telecom.Call.Listener);
13818    method public void enterBackgroundAudioProcessing();
13819    method public void exitBackgroundAudioProcessing(boolean);
13820    method @Deprecated public void removeListener(android.telecom.Call.Listener);
13821    field @Deprecated public static final int STATE_PRE_DIAL_WAIT = 8; // 0x8
13822  }
13823
13824  @Deprecated public abstract static class Call.Listener extends android.telecom.Call.Callback {
13825    ctor @Deprecated public Call.Listener();
13826  }
13827
13828  public abstract class CallDiagnosticService extends android.app.Service {
13829    ctor public CallDiagnosticService();
13830    method @NonNull public java.util.concurrent.Executor getExecutor();
13831    method @Nullable public android.os.IBinder onBind(@NonNull android.content.Intent);
13832    method public abstract void onBluetoothCallQualityReportReceived(@NonNull android.telecom.BluetoothCallQualityReport);
13833    method public abstract void onCallAudioStateChanged(@NonNull android.telecom.CallAudioState);
13834    method @NonNull public abstract android.telecom.CallDiagnostics onInitializeCallDiagnostics(@NonNull android.telecom.Call.Details);
13835    method public abstract void onRemoveCallDiagnostics(@NonNull android.telecom.CallDiagnostics);
13836    field public static final String SERVICE_INTERFACE = "android.telecom.CallDiagnosticService";
13837  }
13838
13839  public abstract class CallDiagnostics {
13840    ctor public CallDiagnostics();
13841    method public final void clearDiagnosticMessage(int);
13842    method public final void displayDiagnosticMessage(int, @NonNull CharSequence);
13843    method public abstract void onCallDetailsChanged(@NonNull android.telecom.Call.Details);
13844    method @Nullable public abstract CharSequence onCallDisconnected(int, int);
13845    method @Nullable public abstract CharSequence onCallDisconnected(@NonNull android.telephony.ims.ImsReasonInfo);
13846    method public abstract void onCallQualityReceived(@NonNull android.telephony.CallQuality);
13847    method public abstract void onReceiveDeviceToDeviceMessage(int, int);
13848    method public final void sendDeviceToDeviceMessage(int, int);
13849    field public static final int BATTERY_STATE_CHARGING = 3; // 0x3
13850    field public static final int BATTERY_STATE_GOOD = 2; // 0x2
13851    field public static final int BATTERY_STATE_LOW = 1; // 0x1
13852    field public static final int COVERAGE_GOOD = 2; // 0x2
13853    field public static final int COVERAGE_POOR = 1; // 0x1
13854    field public static final int MESSAGE_CALL_AUDIO_CODEC = 2; // 0x2
13855    field public static final int MESSAGE_CALL_NETWORK_TYPE = 1; // 0x1
13856    field public static final int MESSAGE_DEVICE_BATTERY_STATE = 3; // 0x3
13857    field public static final int MESSAGE_DEVICE_NETWORK_COVERAGE = 4; // 0x4
13858  }
13859
13860  public static class CallScreeningService.CallResponse.Builder {
13861    method @NonNull @RequiresPermission(android.Manifest.permission.CAPTURE_AUDIO_OUTPUT) public android.telecom.CallScreeningService.CallResponse.Builder setShouldScreenCallViaAudioProcessing(boolean);
13862  }
13863
13864  public abstract class CallStreamingService extends android.app.Service {
13865    ctor public CallStreamingService();
13866    method @Nullable public android.os.IBinder onBind(@NonNull android.content.Intent);
13867    method public void onCallStreamingStarted(@NonNull android.telecom.StreamingCall);
13868    method public void onCallStreamingStateChanged(int);
13869    method public void onCallStreamingStopped();
13870    field public static final String SERVICE_INTERFACE = "android.telecom.CallStreamingService";
13871    field public static final int STREAMING_FAILED_ALREADY_STREAMING = 1; // 0x1
13872    field public static final int STREAMING_FAILED_NO_SENDER = 2; // 0x2
13873    field public static final int STREAMING_FAILED_SENDER_BINDING_ERROR = 3; // 0x3
13874    field public static final int STREAMING_FAILED_UNKNOWN = 0; // 0x0
13875  }
13876
13877  public abstract class Conference extends android.telecom.Conferenceable {
13878    method @Deprecated public final android.telecom.AudioState getAudioState();
13879    method @Deprecated public final long getConnectTimeMillis();
13880    method public android.telecom.Connection getPrimaryConnection();
13881    method @NonNull public final String getTelecomCallId();
13882    method @Deprecated public void onAudioStateChanged(android.telecom.AudioState);
13883    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public final void setAddress(@NonNull android.net.Uri, int);
13884    method public final void setCallerDisplayName(@NonNull String, int);
13885    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setConferenceState(boolean);
13886    method @Deprecated public final void setConnectTimeMillis(long);
13887  }
13888
13889  public abstract class Connection extends android.telecom.Conferenceable {
13890    method @Deprecated public final android.telecom.AudioState getAudioState();
13891    method @IntRange(from=0) public final long getConnectTimeMillis();
13892    method public final long getConnectionStartElapsedRealtimeMillis();
13893    method @Nullable public android.telecom.PhoneAccountHandle getPhoneAccountHandle();
13894    method @Nullable public final String getTelecomCallId();
13895    method @Deprecated public void onAudioStateChanged(android.telecom.AudioState);
13896    method @RequiresPermission(android.Manifest.permission.READ_CONTACTS) public void onCallFilteringCompleted(@NonNull android.telecom.Connection.CallFilteringCompletionInfo);
13897    method public final void resetConnectionTime();
13898    method public void setCallDirection(int);
13899    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public final void setConnectTimeMillis(@IntRange(from=0) long);
13900    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public final void setConnectionStartElapsedRealtimeMillis(long);
13901    method public void setPhoneAccountHandle(@NonNull android.telecom.PhoneAccountHandle);
13902    method public void setTelecomCallId(@NonNull String);
13903    field public static final int CAPABILITY_CONFERENCE_HAS_NO_CHILDREN = 2097152; // 0x200000
13904    field public static final int CAPABILITY_SPEED_UP_MT_AUDIO = 262144; // 0x40000
13905    field public static final String EVENT_DEVICE_TO_DEVICE_MESSAGE = "android.telecom.event.DEVICE_TO_DEVICE_MESSAGE";
13906    field public static final String EXTRA_DEVICE_TO_DEVICE_MESSAGE_TYPE = "android.telecom.extra.DEVICE_TO_DEVICE_MESSAGE_TYPE";
13907    field public static final String EXTRA_DEVICE_TO_DEVICE_MESSAGE_VALUE = "android.telecom.extra.DEVICE_TO_DEVICE_MESSAGE_VALUE";
13908    field public static final String EXTRA_DISABLE_ADD_CALL = "android.telecom.extra.DISABLE_ADD_CALL";
13909    field public static final int PROPERTY_EMERGENCY_CALLBACK_MODE = 1; // 0x1
13910    field public static final int PROPERTY_GENERIC_CONFERENCE = 2; // 0x2
13911    field public static final int PROPERTY_IS_DOWNGRADED_CONFERENCE = 64; // 0x40
13912    field public static final int PROPERTY_REMOTELY_HOSTED = 2048; // 0x800
13913  }
13914
13915  public static final class Connection.CallFilteringCompletionInfo implements android.os.Parcelable {
13916    ctor public Connection.CallFilteringCompletionInfo(boolean, boolean, @Nullable android.telecom.CallScreeningService.CallResponse, @Nullable android.content.ComponentName);
13917    method public int describeContents();
13918    method @Nullable public android.telecom.CallScreeningService.CallResponse getCallResponse();
13919    method @Nullable public android.content.ComponentName getCallScreeningComponent();
13920    method public boolean isBlocked();
13921    method public boolean isInContacts();
13922    method public void writeToParcel(android.os.Parcel, int);
13923    field @NonNull public static final android.os.Parcelable.Creator<android.telecom.Connection.CallFilteringCompletionInfo> CREATOR;
13924  }
13925
13926  public final class ConnectionRequest implements android.os.Parcelable {
13927    method @Nullable public String getTelecomCallId();
13928  }
13929
13930  public abstract class ConnectionService extends android.app.Service {
13931    method public final void addExistingConnection(@NonNull android.telecom.PhoneAccountHandle, @NonNull android.telecom.Connection, @NonNull android.telecom.Conference);
13932  }
13933
13934  public abstract class InCallService extends android.app.Service {
13935    method @Deprecated public android.telecom.Phone getPhone();
13936    method @Deprecated public void onPhoneCreated(android.telecom.Phone);
13937    method @Deprecated public void onPhoneDestroyed(android.telecom.Phone);
13938  }
13939
13940  public class ParcelableCallAnalytics implements android.os.Parcelable {
13941    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>);
13942    ctor public ParcelableCallAnalytics(android.os.Parcel);
13943    method public java.util.List<android.telecom.ParcelableCallAnalytics.AnalyticsEvent> analyticsEvents();
13944    method public int describeContents();
13945    method public long getCallDurationMillis();
13946    method public int getCallTechnologies();
13947    method public int getCallTerminationCode();
13948    method public int getCallType();
13949    method public String getConnectionService();
13950    method public java.util.List<android.telecom.ParcelableCallAnalytics.EventTiming> getEventTimings();
13951    method public long getStartTimeMillis();
13952    method public boolean isAdditionalCall();
13953    method public boolean isCreatedFromExistingConnection();
13954    method public boolean isEmergencyCall();
13955    method public boolean isInterrupted();
13956    method public void writeToParcel(android.os.Parcel, int);
13957    field public static final int CALLTYPE_INCOMING = 1; // 0x1
13958    field public static final int CALLTYPE_OUTGOING = 2; // 0x2
13959    field public static final int CALLTYPE_UNKNOWN = 0; // 0x0
13960    field public static final int CDMA_PHONE = 1; // 0x1
13961    field @NonNull public static final android.os.Parcelable.Creator<android.telecom.ParcelableCallAnalytics> CREATOR;
13962    field public static final int GSM_PHONE = 2; // 0x2
13963    field public static final int IMS_PHONE = 4; // 0x4
13964    field public static final long MILLIS_IN_1_SECOND = 1000L; // 0x3e8L
13965    field public static final long MILLIS_IN_5_MINUTES = 300000L; // 0x493e0L
13966    field public static final int SIP_PHONE = 8; // 0x8
13967    field public static final int STILL_CONNECTED = -1; // 0xffffffff
13968    field public static final int THIRD_PARTY_PHONE = 16; // 0x10
13969  }
13970
13971  public static final class ParcelableCallAnalytics.AnalyticsEvent implements android.os.Parcelable {
13972    ctor public ParcelableCallAnalytics.AnalyticsEvent(int, long);
13973    method public int describeContents();
13974    method public int getEventName();
13975    method public long getTimeSinceLastEvent();
13976    method public void writeToParcel(android.os.Parcel, int);
13977    field public static final int AUDIO_ROUTE_BT = 204; // 0xcc
13978    field public static final int AUDIO_ROUTE_EARPIECE = 205; // 0xcd
13979    field public static final int AUDIO_ROUTE_HEADSET = 206; // 0xce
13980    field public static final int AUDIO_ROUTE_SPEAKER = 207; // 0xcf
13981    field public static final int BIND_CS = 5; // 0x5
13982    field public static final int BLOCK_CHECK_FINISHED = 105; // 0x69
13983    field public static final int BLOCK_CHECK_INITIATED = 104; // 0x68
13984    field public static final int CONFERENCE_WITH = 300; // 0x12c
13985    field @NonNull public static final android.os.Parcelable.Creator<android.telecom.ParcelableCallAnalytics.AnalyticsEvent> CREATOR;
13986    field public static final int CS_BOUND = 6; // 0x6
13987    field public static final int DIRECT_TO_VM_FINISHED = 103; // 0x67
13988    field public static final int DIRECT_TO_VM_INITIATED = 102; // 0x66
13989    field public static final int DND_CHECK_COMPLETED = 110; // 0x6e
13990    field public static final int DND_CHECK_INITIATED = 109; // 0x6d
13991    field public static final int FILTERING_COMPLETED = 107; // 0x6b
13992    field public static final int FILTERING_INITIATED = 106; // 0x6a
13993    field public static final int FILTERING_TIMED_OUT = 108; // 0x6c
13994    field public static final int MUTE = 202; // 0xca
13995    field public static final int REMOTELY_HELD = 402; // 0x192
13996    field public static final int REMOTELY_UNHELD = 403; // 0x193
13997    field public static final int REQUEST_ACCEPT = 7; // 0x7
13998    field public static final int REQUEST_HOLD = 400; // 0x190
13999    field public static final int REQUEST_PULL = 500; // 0x1f4
14000    field public static final int REQUEST_REJECT = 8; // 0x8
14001    field public static final int REQUEST_UNHOLD = 401; // 0x191
14002    field public static final int SCREENING_COMPLETED = 101; // 0x65
14003    field public static final int SCREENING_SENT = 100; // 0x64
14004    field public static final int SET_ACTIVE = 1; // 0x1
14005    field public static final int SET_DIALING = 4; // 0x4
14006    field public static final int SET_DISCONNECTED = 2; // 0x2
14007    field public static final int SET_HOLD = 404; // 0x194
14008    field public static final int SET_PARENT = 302; // 0x12e
14009    field public static final int SET_SELECT_PHONE_ACCOUNT = 0; // 0x0
14010    field public static final int SILENCE = 201; // 0xc9
14011    field public static final int SKIP_RINGING = 200; // 0xc8
14012    field public static final int SPLIT_CONFERENCE = 301; // 0x12d
14013    field public static final int START_CONNECTION = 3; // 0x3
14014    field public static final int SWAP = 405; // 0x195
14015    field public static final int UNMUTE = 203; // 0xcb
14016  }
14017
14018  public static final class ParcelableCallAnalytics.EventTiming implements android.os.Parcelable {
14019    ctor public ParcelableCallAnalytics.EventTiming(int, long);
14020    method public int describeContents();
14021    method public int getName();
14022    method public long getTime();
14023    method public void writeToParcel(android.os.Parcel, int);
14024    field public static final int ACCEPT_TIMING = 0; // 0x0
14025    field public static final int BIND_CS_TIMING = 6; // 0x6
14026    field public static final int BLOCK_CHECK_FINISHED_TIMING = 9; // 0x9
14027    field @NonNull public static final android.os.Parcelable.Creator<android.telecom.ParcelableCallAnalytics.EventTiming> CREATOR;
14028    field public static final int DIRECT_TO_VM_FINISHED_TIMING = 8; // 0x8
14029    field public static final int DISCONNECT_TIMING = 2; // 0x2
14030    field public static final int DND_PRE_CALL_PRE_CHECK_TIMING = 12; // 0xc
14031    field public static final int FILTERING_COMPLETED_TIMING = 10; // 0xa
14032    field public static final int FILTERING_TIMED_OUT_TIMING = 11; // 0xb
14033    field public static final int HOLD_TIMING = 3; // 0x3
14034    field public static final int INVALID = 999999; // 0xf423f
14035    field public static final int OUTGOING_TIME_TO_DIALING_TIMING = 5; // 0x5
14036    field public static final int REJECT_TIMING = 1; // 0x1
14037    field public static final int SCREENING_COMPLETED_TIMING = 7; // 0x7
14038    field public static final int UNHOLD_TIMING = 4; // 0x4
14039  }
14040
14041  @Deprecated public final class Phone {
14042    method @Deprecated public void addListener(android.telecom.Phone.Listener);
14043    method @Deprecated public boolean canAddCall();
14044    method @Deprecated public android.telecom.AudioState getAudioState();
14045    method @Deprecated public android.telecom.CallAudioState getCallAudioState();
14046    method @Deprecated public java.util.List<android.telecom.Call> getCalls();
14047    method @Deprecated public void removeListener(android.telecom.Phone.Listener);
14048    method @Deprecated public void requestBluetoothAudio(String);
14049    method @Deprecated public void setAudioRoute(int);
14050    method @Deprecated public void setMuted(boolean);
14051  }
14052
14053  @Deprecated public abstract static class Phone.Listener {
14054    ctor @Deprecated public Phone.Listener();
14055    method @Deprecated public void onAudioStateChanged(android.telecom.Phone, android.telecom.AudioState);
14056    method @Deprecated public void onBringToForeground(android.telecom.Phone, boolean);
14057    method @Deprecated public void onCallAdded(android.telecom.Phone, android.telecom.Call);
14058    method @Deprecated public void onCallAudioStateChanged(android.telecom.Phone, android.telecom.CallAudioState);
14059    method @Deprecated public void onCallRemoved(android.telecom.Phone, android.telecom.Call);
14060    method @Deprecated public void onCanAddCallChanged(android.telecom.Phone, boolean);
14061    method @Deprecated public void onSilenceRinger(android.telecom.Phone);
14062  }
14063
14064  public final class PhoneAccount implements android.os.Parcelable {
14065    field public static final int CAPABILITY_EMERGENCY_CALLS_ONLY = 128; // 0x80
14066    field public static final int CAPABILITY_EMERGENCY_PREFERRED = 8192; // 0x2000
14067    field public static final int CAPABILITY_EMERGENCY_VIDEO_CALLING = 512; // 0x200
14068    field public static final int CAPABILITY_MULTI_USER = 32; // 0x20
14069    field public static final String EXTRA_PLAY_CALL_RECORDING_TONE = "android.telecom.extra.PLAY_CALL_RECORDING_TONE";
14070    field public static final String EXTRA_SORT_ORDER = "android.telecom.extra.SORT_ORDER";
14071  }
14072
14073  public static class PhoneAccount.Builder {
14074    method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public android.telecom.PhoneAccount.Builder setGroupId(@NonNull String);
14075  }
14076
14077  public class PhoneAccountSuggestionService extends android.app.Service {
14078    ctor public PhoneAccountSuggestionService();
14079    method public void onAccountSuggestionRequest(@NonNull String);
14080    method public android.os.IBinder onBind(android.content.Intent);
14081    method public final void suggestPhoneAccounts(@NonNull String, @NonNull java.util.List<android.telecom.PhoneAccountSuggestion>);
14082    field public static final String SERVICE_INTERFACE = "android.telecom.PhoneAccountSuggestionService";
14083  }
14084
14085  public final class RemoteConference {
14086    method @Deprecated public void setAudioState(android.telecom.AudioState);
14087  }
14088
14089  public final class RemoteConnection {
14090    method @RequiresPermission(android.Manifest.permission.READ_CONTACTS) public void onCallFilteringCompleted(@NonNull android.telecom.Connection.CallFilteringCompletionInfo);
14091    method @Deprecated public void setAudioState(android.telecom.AudioState);
14092  }
14093
14094  public final class StatusHints implements android.os.Parcelable {
14095    ctor @Deprecated public StatusHints(android.content.ComponentName, CharSequence, int, android.os.Bundle);
14096    method @Deprecated public android.graphics.drawable.Drawable getIcon(android.content.Context);
14097    method @Deprecated public int getIconResId();
14098    method @Deprecated public android.content.ComponentName getPackageName();
14099  }
14100
14101  public final class StreamingCall implements android.os.Parcelable {
14102    ctor public StreamingCall(@NonNull android.content.ComponentName, @NonNull CharSequence, @NonNull android.net.Uri, @NonNull android.os.Bundle);
14103    method public int describeContents();
14104    method @NonNull public android.net.Uri getAddress();
14105    method @NonNull public android.content.ComponentName getComponentName();
14106    method @NonNull public CharSequence getDisplayName();
14107    method @NonNull public android.os.Bundle getExtras();
14108    method public int getState();
14109    method public void requestStreamingState(int);
14110    method public void writeToParcel(@NonNull android.os.Parcel, int);
14111    field @NonNull public static final android.os.Parcelable.Creator<android.telecom.StreamingCall> CREATOR;
14112    field public static final String EXTRA_CALL_ID = "android.telecom.extra.CALL_ID";
14113    field public static final int STATE_DISCONNECTED = 3; // 0x3
14114    field public static final int STATE_HOLDING = 2; // 0x2
14115    field public static final int STATE_STREAMING = 1; // 0x1
14116  }
14117
14118  public final class TelecomAnalytics implements android.os.Parcelable {
14119    ctor public TelecomAnalytics(java.util.List<android.telecom.TelecomAnalytics.SessionTiming>, java.util.List<android.telecom.ParcelableCallAnalytics>);
14120    method public int describeContents();
14121    method public java.util.List<android.telecom.ParcelableCallAnalytics> getCallAnalytics();
14122    method public java.util.List<android.telecom.TelecomAnalytics.SessionTiming> getSessionTimings();
14123    method public void writeToParcel(android.os.Parcel, int);
14124    field @NonNull public static final android.os.Parcelable.Creator<android.telecom.TelecomAnalytics> CREATOR;
14125  }
14126
14127  public static final class TelecomAnalytics.SessionTiming implements android.os.Parcelable {
14128    ctor public TelecomAnalytics.SessionTiming(int, long);
14129    method public int describeContents();
14130    method public Integer getKey();
14131    method public long getTime();
14132    method public void writeToParcel(android.os.Parcel, int);
14133    field @NonNull public static final android.os.Parcelable.Creator<android.telecom.TelecomAnalytics.SessionTiming> CREATOR;
14134    field public static final int CSW_ADD_CONFERENCE_CALL = 108; // 0x6c
14135    field public static final int CSW_HANDLE_CREATE_CONNECTION_COMPLETE = 100; // 0x64
14136    field public static final int CSW_REMOVE_CALL = 106; // 0x6a
14137    field public static final int CSW_SET_ACTIVE = 101; // 0x65
14138    field public static final int CSW_SET_DIALING = 103; // 0x67
14139    field public static final int CSW_SET_DISCONNECTED = 104; // 0x68
14140    field public static final int CSW_SET_IS_CONFERENCED = 107; // 0x6b
14141    field public static final int CSW_SET_ON_HOLD = 105; // 0x69
14142    field public static final int CSW_SET_RINGING = 102; // 0x66
14143    field public static final int ICA_ANSWER_CALL = 1; // 0x1
14144    field public static final int ICA_CONFERENCE = 8; // 0x8
14145    field public static final int ICA_DISCONNECT_CALL = 3; // 0x3
14146    field public static final int ICA_HOLD_CALL = 4; // 0x4
14147    field public static final int ICA_MUTE = 6; // 0x6
14148    field public static final int ICA_REJECT_CALL = 2; // 0x2
14149    field public static final int ICA_SET_AUDIO_ROUTE = 7; // 0x7
14150    field public static final int ICA_UNHOLD_CALL = 5; // 0x5
14151  }
14152
14153  public class TelecomManager {
14154    method public void addNewUnknownCall(android.telecom.PhoneAccountHandle, android.os.Bundle);
14155    method @Deprecated public void clearAccounts();
14156    method public void clearPhoneAccounts();
14157    method @NonNull public android.content.Intent createLaunchEmergencyDialerIntent(@Nullable String);
14158    method @RequiresPermission(android.Manifest.permission.DUMP) public android.telecom.TelecomAnalytics dumpAnalytics();
14159    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void enablePhoneAccount(android.telecom.PhoneAccountHandle, boolean);
14160    method public java.util.List<android.telecom.PhoneAccountHandle> getAllPhoneAccountHandles();
14161    method public java.util.List<android.telecom.PhoneAccount> getAllPhoneAccounts();
14162    method public int getAllPhoneAccountsCount();
14163    method @NonNull @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public java.util.List<android.telecom.PhoneAccountHandle> getCallCapablePhoneAccounts(boolean);
14164    method @RequiresPermission(anyOf={android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE, android.Manifest.permission.READ_PHONE_STATE}, conditional=true) public int getCallState();
14165    method public android.telecom.PhoneAccountHandle getConnectionManager();
14166    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getCurrentTtyMode();
14167    method @Nullable @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public String getDefaultDialerPackage(@NonNull android.os.UserHandle);
14168    method @Deprecated public android.content.ComponentName getDefaultPhoneApp();
14169    method @Deprecated public java.util.List<android.telecom.PhoneAccountHandle> getPhoneAccountsForPackage();
14170    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);
14171    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean isInEmergencyCall();
14172    method @RequiresPermission(anyOf={android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE, android.Manifest.permission.READ_PHONE_STATE}) public boolean isRinging();
14173    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setUserSelectedOutgoingPhoneAccount(@Nullable android.telecom.PhoneAccountHandle);
14174    field public static final String ACTION_CURRENT_TTY_MODE_CHANGED = "android.telecom.action.CURRENT_TTY_MODE_CHANGED";
14175    field public static final String ACTION_TTY_PREFERRED_MODE_CHANGED = "android.telecom.action.TTY_PREFERRED_MODE_CHANGED";
14176    field public static final int CALL_SOURCE_EMERGENCY_DIALPAD = 1; // 0x1
14177    field public static final int CALL_SOURCE_EMERGENCY_SHORTCUT = 2; // 0x2
14178    field public static final int CALL_SOURCE_UNSPECIFIED = 0; // 0x0
14179    field public static final String EXTRA_CALL_BACK_INTENT = "android.telecom.extra.CALL_BACK_INTENT";
14180    field public static final String EXTRA_CALL_HAS_IN_BAND_RINGTONE = "android.telecom.extra.CALL_HAS_IN_BAND_RINGTONE";
14181    field public static final String EXTRA_CALL_SOURCE = "android.telecom.extra.CALL_SOURCE";
14182    field public static final String EXTRA_CALL_TECHNOLOGY_TYPE = "android.telecom.extra.CALL_TECHNOLOGY_TYPE";
14183    field @Deprecated public static final String EXTRA_CLEAR_MISSED_CALLS_INTENT = "android.telecom.extra.CLEAR_MISSED_CALLS_INTENT";
14184    field public static final String EXTRA_CONNECTION_SERVICE = "android.telecom.extra.CONNECTION_SERVICE";
14185    field public static final String EXTRA_CURRENT_TTY_MODE = "android.telecom.extra.CURRENT_TTY_MODE";
14186    field public static final String EXTRA_IS_USER_INTENT_EMERGENCY_CALL = "android.telecom.extra.IS_USER_INTENT_EMERGENCY_CALL";
14187    field public static final String EXTRA_TTY_PREFERRED_MODE = "android.telecom.extra.TTY_PREFERRED_MODE";
14188    field public static final String EXTRA_UNKNOWN_CALL_HANDLE = "android.telecom.extra.UNKNOWN_CALL_HANDLE";
14189    field public static final int TTY_MODE_FULL = 1; // 0x1
14190    field public static final int TTY_MODE_HCO = 2; // 0x2
14191    field public static final int TTY_MODE_OFF = 0; // 0x0
14192    field public static final int TTY_MODE_VCO = 3; // 0x3
14193  }
14194
14195}
14196
14197package android.telephony {
14198
14199  public final class AccessNetworkConstants {
14200    field public static final int TRANSPORT_TYPE_INVALID = -1; // 0xffffffff
14201  }
14202
14203  public static final class AccessNetworkConstants.NgranBands {
14204    method public static int getFrequencyRangeGroup(int);
14205    field public static final int FREQUENCY_RANGE_GROUP_1 = 1; // 0x1
14206    field public static final int FREQUENCY_RANGE_GROUP_2 = 2; // 0x2
14207    field public static final int FREQUENCY_RANGE_GROUP_UNKNOWN = 0; // 0x0
14208  }
14209
14210  public final class BarringInfo implements android.os.Parcelable {
14211    ctor public BarringInfo();
14212    method @NonNull public android.telephony.BarringInfo createLocationInfoSanitizedCopy();
14213  }
14214
14215  @Deprecated public final class CallAttributes implements android.os.Parcelable {
14216    ctor @Deprecated public CallAttributes(@NonNull android.telephony.PreciseCallState, int, @NonNull android.telephony.CallQuality);
14217    method @Deprecated public int describeContents();
14218    method @Deprecated @NonNull public android.telephony.CallQuality getCallQuality();
14219    method @Deprecated public int getNetworkType();
14220    method @Deprecated @NonNull public android.telephony.PreciseCallState getPreciseCallState();
14221    method @Deprecated public void writeToParcel(android.os.Parcel, int);
14222    field @Deprecated @NonNull public static final android.os.Parcelable.Creator<android.telephony.CallAttributes> CREATOR;
14223  }
14224
14225  public final class CallForwardingInfo implements android.os.Parcelable {
14226    ctor public CallForwardingInfo(boolean, int, @Nullable String, int);
14227    method public int describeContents();
14228    method @Nullable public String getNumber();
14229    method public int getReason();
14230    method public int getTimeoutSeconds();
14231    method public boolean isEnabled();
14232    method public void writeToParcel(android.os.Parcel, int);
14233    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.CallForwardingInfo> CREATOR;
14234    field public static final int REASON_ALL = 4; // 0x4
14235    field public static final int REASON_ALL_CONDITIONAL = 5; // 0x5
14236    field public static final int REASON_BUSY = 1; // 0x1
14237    field public static final int REASON_NOT_REACHABLE = 3; // 0x3
14238    field public static final int REASON_NO_REPLY = 2; // 0x2
14239    field public static final int REASON_UNCONDITIONAL = 0; // 0x0
14240  }
14241
14242  public final class CallQuality implements android.os.Parcelable {
14243    ctor public CallQuality(int, int, int, int, int, int, int, int, int, int, int);
14244    ctor public CallQuality(int, int, int, int, int, int, int, int, int, int, int, boolean, boolean, boolean);
14245    method public int describeContents();
14246    method public int getAverageRelativeJitter();
14247    method public int getAverageRoundTripTime();
14248    method public int getCallDuration();
14249    method public int getCodecType();
14250    method public int getDownlinkCallQualityLevel();
14251    method public long getMaxPlayoutDelayMillis();
14252    method public int getMaxRelativeJitter();
14253    method public long getMinPlayoutDelayMillis();
14254    method public int getNumDroppedRtpPackets();
14255    method public int getNumNoDataFrames();
14256    method public int getNumRtpDuplicatePackets();
14257    method public int getNumRtpPacketsNotReceived();
14258    method public int getNumRtpPacketsReceived();
14259    method public int getNumRtpPacketsTransmitted();
14260    method public int getNumRtpPacketsTransmittedLost();
14261    method public int getNumRtpSidPacketsReceived();
14262    method public int getNumVoiceFrames();
14263    method public int getUplinkCallQualityLevel();
14264    method public boolean isIncomingSilenceDetectedAtCallSetup();
14265    method public boolean isOutgoingSilenceDetectedAtCallSetup();
14266    method public boolean isRtpInactivityDetected();
14267    method public void writeToParcel(android.os.Parcel, int);
14268    field public static final int CALL_QUALITY_BAD = 4; // 0x4
14269    field public static final int CALL_QUALITY_EXCELLENT = 0; // 0x0
14270    field public static final int CALL_QUALITY_FAIR = 2; // 0x2
14271    field public static final int CALL_QUALITY_GOOD = 1; // 0x1
14272    field public static final int CALL_QUALITY_NOT_AVAILABLE = 5; // 0x5
14273    field public static final int CALL_QUALITY_POOR = 3; // 0x3
14274    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.CallQuality> CREATOR;
14275  }
14276
14277  public static final class CallQuality.Builder {
14278    ctor public CallQuality.Builder();
14279    method @NonNull public android.telephony.CallQuality build();
14280    method @NonNull public android.telephony.CallQuality.Builder setAverageRelativeJitter(int);
14281    method @NonNull public android.telephony.CallQuality.Builder setAverageRoundTripTimeMillis(int);
14282    method @NonNull public android.telephony.CallQuality.Builder setCallDurationMillis(int);
14283    method @NonNull public android.telephony.CallQuality.Builder setCodecType(int);
14284    method @NonNull public android.telephony.CallQuality.Builder setDownlinkCallQualityLevel(int);
14285    method @NonNull public android.telephony.CallQuality.Builder setIncomingSilenceDetectedAtCallSetup(boolean);
14286    method @NonNull public android.telephony.CallQuality.Builder setMaxPlayoutDelayMillis(long);
14287    method @NonNull public android.telephony.CallQuality.Builder setMaxRelativeJitter(int);
14288    method @NonNull public android.telephony.CallQuality.Builder setMinPlayoutDelayMillis(long);
14289    method @NonNull public android.telephony.CallQuality.Builder setNumDroppedRtpPackets(int);
14290    method @NonNull public android.telephony.CallQuality.Builder setNumNoDataFrames(int);
14291    method @NonNull public android.telephony.CallQuality.Builder setNumRtpDuplicatePackets(int);
14292    method @NonNull public android.telephony.CallQuality.Builder setNumRtpPacketsNotReceived(int);
14293    method @NonNull public android.telephony.CallQuality.Builder setNumRtpPacketsReceived(int);
14294    method @NonNull public android.telephony.CallQuality.Builder setNumRtpPacketsTransmitted(int);
14295    method @NonNull public android.telephony.CallQuality.Builder setNumRtpPacketsTransmittedLost(int);
14296    method @NonNull public android.telephony.CallQuality.Builder setNumRtpSidPacketsReceived(int);
14297    method @NonNull public android.telephony.CallQuality.Builder setNumVoiceFrames(int);
14298    method @NonNull public android.telephony.CallQuality.Builder setOutgoingSilenceDetectedAtCallSetup(boolean);
14299    method @NonNull public android.telephony.CallQuality.Builder setRtpInactivityDetected(boolean);
14300    method @NonNull public android.telephony.CallQuality.Builder setUplinkCallQualityLevel(int);
14301  }
14302
14303  public final class CallState implements android.os.Parcelable {
14304    method public int describeContents();
14305    method @Nullable public android.telephony.CallQuality getCallQuality();
14306    method public int getCallState();
14307    method public int getImsCallServiceType();
14308    method @Nullable public String getImsCallSessionId();
14309    method public int getImsCallType();
14310    method public int getNetworkType();
14311    method public void writeToParcel(@Nullable android.os.Parcel, int);
14312    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.CallState> CREATOR;
14313  }
14314
14315  public static final class CallState.Builder {
14316    ctor public CallState.Builder(int);
14317    method @NonNull public android.telephony.CallState build();
14318    method @NonNull public android.telephony.CallState.Builder setCallQuality(@Nullable android.telephony.CallQuality);
14319    method @NonNull public android.telephony.CallState.Builder setImsCallServiceType(int);
14320    method @NonNull public android.telephony.CallState.Builder setImsCallSessionId(@Nullable String);
14321    method @NonNull public android.telephony.CallState.Builder setImsCallType(int);
14322    method @NonNull public android.telephony.CallState.Builder setNetworkType(int);
14323  }
14324
14325  public class CarrierConfigManager {
14326    method @NonNull @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public String getDefaultCarrierServicePackageName();
14327    method @NonNull public static android.os.PersistableBundle getDefaultConfig();
14328    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void overrideConfig(int, @Nullable android.os.PersistableBundle);
14329    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void updateConfigForPhoneId(int, String);
14330    field public static final int GBA_DIGEST = 3; // 0x3
14331    field public static final int GBA_ME = 1; // 0x1
14332    field public static final int GBA_U = 2; // 0x2
14333    field public static final String KEY_CARRIER_SETUP_APP_STRING = "carrier_setup_app_string";
14334    field public static final String KEY_GBA_MODE_INT = "gba_mode_int";
14335    field public static final String KEY_GBA_UA_SECURITY_ORGANIZATION_INT = "gba_ua_security_organization_int";
14336    field public static final String KEY_GBA_UA_SECURITY_PROTOCOL_INT = "gba_ua_security_protocol_int";
14337    field public static final String KEY_GBA_UA_TLS_CIPHER_SUITE_INT = "gba_ua_tls_cipher_suite_int";
14338    field public static final String KEY_SUPPORT_CDMA_1X_VOICE_CALLS_BOOL = "support_cdma_1x_voice_calls_bool";
14339  }
14340
14341  public static final class CarrierConfigManager.Wifi {
14342    field public static final String KEY_AVOID_5GHZ_SOFTAP_FOR_LAA_BOOL = "wifi.avoid_5ghz_softap_for_laa_bool";
14343    field public static final String KEY_AVOID_5GHZ_WIFI_DIRECT_FOR_LAA_BOOL = "wifi.avoid_5ghz_wifi_direct_for_laa_bool";
14344    field public static final String KEY_HOTSPOT_MAX_CLIENT_COUNT = "wifi.hotspot_maximum_client_count";
14345    field public static final String KEY_PREFIX = "wifi.";
14346    field public static final String KEY_SUGGESTION_SSID_LIST_WITH_MAC_RANDOMIZATION_DISABLED = "wifi.suggestion_ssid_list_with_mac_randomization_disabled";
14347  }
14348
14349  public final class CarrierRestrictionRules implements android.os.Parcelable {
14350    method @NonNull public java.util.List<java.lang.Boolean> areCarrierIdentifiersAllowed(@NonNull java.util.List<android.service.carrier.CarrierIdentifier>);
14351    method public int describeContents();
14352    method @NonNull public java.util.List<android.service.carrier.CarrierIdentifier> getAllowedCarriers();
14353    method public int getDefaultCarrierRestriction();
14354    method @NonNull public java.util.List<android.service.carrier.CarrierIdentifier> getExcludedCarriers();
14355    method public int getMultiSimPolicy();
14356    method public boolean isAllCarriersAllowed();
14357    method public void writeToParcel(android.os.Parcel, int);
14358    field public static final int CARRIER_RESTRICTION_DEFAULT_ALLOWED = 1; // 0x1
14359    field public static final int CARRIER_RESTRICTION_DEFAULT_NOT_ALLOWED = 0; // 0x0
14360    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.CarrierRestrictionRules> CREATOR;
14361    field public static final int MULTISIM_POLICY_NONE = 0; // 0x0
14362    field public static final int MULTISIM_POLICY_ONE_VALID_SIM_MUST_BE_PRESENT = 1; // 0x1
14363  }
14364
14365  public static final class CarrierRestrictionRules.Builder {
14366    ctor public CarrierRestrictionRules.Builder();
14367    method @NonNull public android.telephony.CarrierRestrictionRules build();
14368    method @NonNull public android.telephony.CarrierRestrictionRules.Builder setAllCarriersAllowed();
14369    method @NonNull public android.telephony.CarrierRestrictionRules.Builder setAllowedCarriers(@NonNull java.util.List<android.service.carrier.CarrierIdentifier>);
14370    method @NonNull public android.telephony.CarrierRestrictionRules.Builder setDefaultCarrierRestriction(int);
14371    method @NonNull public android.telephony.CarrierRestrictionRules.Builder setExcludedCarriers(@NonNull java.util.List<android.service.carrier.CarrierIdentifier>);
14372    method @NonNull public android.telephony.CarrierRestrictionRules.Builder setMultiSimPolicy(int);
14373  }
14374
14375  public class CbGeoUtils {
14376  }
14377
14378  public static class CbGeoUtils.Circle implements android.telephony.CbGeoUtils.Geometry {
14379    ctor public CbGeoUtils.Circle(@NonNull android.telephony.CbGeoUtils.LatLng, double);
14380    method public boolean contains(@NonNull android.telephony.CbGeoUtils.LatLng);
14381    method @NonNull public android.telephony.CbGeoUtils.LatLng getCenter();
14382    method public double getRadius();
14383  }
14384
14385  public static interface CbGeoUtils.Geometry {
14386    method public boolean contains(@NonNull android.telephony.CbGeoUtils.LatLng);
14387  }
14388
14389  public static class CbGeoUtils.LatLng {
14390    ctor public CbGeoUtils.LatLng(double, double);
14391    method public double distance(@NonNull android.telephony.CbGeoUtils.LatLng);
14392    method @NonNull public android.telephony.CbGeoUtils.LatLng subtract(@NonNull android.telephony.CbGeoUtils.LatLng);
14393    field public final double lat;
14394    field public final double lng;
14395  }
14396
14397  public static class CbGeoUtils.Polygon implements android.telephony.CbGeoUtils.Geometry {
14398    ctor public CbGeoUtils.Polygon(@NonNull java.util.List<android.telephony.CbGeoUtils.LatLng>);
14399    method public boolean contains(@NonNull android.telephony.CbGeoUtils.LatLng);
14400    method @NonNull public java.util.List<android.telephony.CbGeoUtils.LatLng> getVertices();
14401  }
14402
14403  public final class CellBroadcastIdRange implements android.os.Parcelable {
14404    ctor public CellBroadcastIdRange(@IntRange(from=0, to=65535) int, @IntRange(from=0, to=65535) int, int, boolean) throws java.lang.IllegalArgumentException;
14405    method public int describeContents();
14406    method @IntRange(from=0, to=65535) public int getEndId();
14407    method @IntRange(from=0, to=65535) public int getStartId();
14408    method public int getType();
14409    method public boolean isEnabled();
14410    method public void writeToParcel(@NonNull android.os.Parcel, int);
14411    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.CellBroadcastIdRange> CREATOR;
14412  }
14413
14414  public class CellBroadcastIntents {
14415    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);
14416    field public static final String ACTION_AREA_INFO_UPDATED = "android.telephony.action.AREA_INFO_UPDATED";
14417  }
14418
14419  public abstract class CellBroadcastService extends android.app.Service {
14420    ctor public CellBroadcastService();
14421    method @NonNull @WorkerThread public abstract CharSequence getCellBroadcastAreaInfo(int);
14422    method @CallSuper public android.os.IBinder onBind(@Nullable android.content.Intent);
14423    method public abstract void onCdmaCellBroadcastSms(int, @NonNull byte[], int);
14424    method public abstract void onCdmaScpMessage(int, @NonNull java.util.List<android.telephony.cdma.CdmaSmsCbProgramData>, @NonNull String, @NonNull java.util.function.Consumer<android.os.Bundle>);
14425    method public abstract void onGsmCellBroadcastSms(int, @NonNull byte[]);
14426    field public static final String CELL_BROADCAST_SERVICE_INTERFACE = "android.telephony.CellBroadcastService";
14427  }
14428
14429  public abstract class CellIdentity implements android.os.Parcelable {
14430    method @NonNull public abstract android.telephony.CellLocation asCellLocation();
14431    method @NonNull public abstract android.telephony.CellIdentity sanitizeLocationInfo();
14432  }
14433
14434  public final class CellIdentityCdma extends android.telephony.CellIdentity {
14435    method @NonNull public android.telephony.cdma.CdmaCellLocation asCellLocation();
14436    method @NonNull public android.telephony.CellIdentityCdma sanitizeLocationInfo();
14437  }
14438
14439  public final class CellIdentityGsm extends android.telephony.CellIdentity {
14440    method @NonNull public android.telephony.gsm.GsmCellLocation asCellLocation();
14441    method @NonNull public android.telephony.CellIdentityGsm sanitizeLocationInfo();
14442  }
14443
14444  public final class CellIdentityLte extends android.telephony.CellIdentity {
14445    method @NonNull public android.telephony.gsm.GsmCellLocation asCellLocation();
14446    method @NonNull public android.telephony.CellIdentityLte sanitizeLocationInfo();
14447  }
14448
14449  public final class CellIdentityNr extends android.telephony.CellIdentity {
14450    method @NonNull public android.telephony.CellLocation asCellLocation();
14451    method @NonNull public android.telephony.CellIdentityNr sanitizeLocationInfo();
14452  }
14453
14454  public final class CellIdentityTdscdma extends android.telephony.CellIdentity {
14455    method @NonNull public android.telephony.gsm.GsmCellLocation asCellLocation();
14456    method @NonNull public android.telephony.CellIdentityTdscdma sanitizeLocationInfo();
14457  }
14458
14459  public final class CellIdentityWcdma extends android.telephony.CellIdentity {
14460    method @NonNull public android.telephony.gsm.GsmCellLocation asCellLocation();
14461    method @NonNull public android.telephony.CellIdentityWcdma sanitizeLocationInfo();
14462  }
14463
14464  public final class DataFailCause {
14465    field @Deprecated public static final int VSNCP_APN_UNATHORIZED = 2238; // 0x8be
14466  }
14467
14468  public final class DataSpecificRegistrationInfo implements android.os.Parcelable {
14469    method public int describeContents();
14470    method public int getLteAttachExtraInfo();
14471    method public int getLteAttachResultType();
14472    method @Deprecated @NonNull public android.telephony.LteVopsSupportInfo getLteVopsSupportInfo();
14473    method @Nullable public android.telephony.VopsSupportInfo getVopsSupportInfo();
14474    method public void writeToParcel(android.os.Parcel, int);
14475    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.DataSpecificRegistrationInfo> CREATOR;
14476    field public static final int LTE_ATTACH_EXTRA_INFO_CSFB_NOT_PREFERRED = 1; // 0x1
14477    field public static final int LTE_ATTACH_EXTRA_INFO_NONE = 0; // 0x0
14478    field public static final int LTE_ATTACH_EXTRA_INFO_SMS_ONLY = 2; // 0x2
14479    field public static final int LTE_ATTACH_TYPE_COMBINED = 2; // 0x2
14480    field public static final int LTE_ATTACH_TYPE_EPS_ONLY = 1; // 0x1
14481    field public static final int LTE_ATTACH_TYPE_UNKNOWN = 0; // 0x0
14482  }
14483
14484  public final class DataThrottlingRequest implements android.os.Parcelable {
14485    method public int describeContents();
14486    method public long getCompletionDurationMillis();
14487    method public int getDataThrottlingAction();
14488    method public void writeToParcel(@NonNull android.os.Parcel, int);
14489    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.DataThrottlingRequest> CREATOR;
14490    field public static final int DATA_THROTTLING_ACTION_HOLD = 3; // 0x3
14491    field public static final int DATA_THROTTLING_ACTION_NO_DATA_THROTTLING = 0; // 0x0
14492    field public static final int DATA_THROTTLING_ACTION_THROTTLE_PRIMARY_CARRIER = 2; // 0x2
14493    field public static final int DATA_THROTTLING_ACTION_THROTTLE_SECONDARY_CARRIER = 1; // 0x1
14494  }
14495
14496  public static final class DataThrottlingRequest.Builder {
14497    ctor public DataThrottlingRequest.Builder();
14498    method @NonNull public android.telephony.DataThrottlingRequest build();
14499    method @NonNull public android.telephony.DataThrottlingRequest.Builder setCompletionDurationMillis(long);
14500    method @NonNull public android.telephony.DataThrottlingRequest.Builder setDataThrottlingAction(int);
14501  }
14502
14503  public abstract class DomainSelectionService extends android.app.Service {
14504    ctor public DomainSelectionService();
14505    method @NonNull public java.util.concurrent.Executor getCreateExecutor();
14506    method public void onBarringInfoUpdated(int, int, @NonNull android.telephony.BarringInfo);
14507    method @Nullable public final android.os.IBinder onBind(@Nullable android.content.Intent);
14508    method public abstract void onDomainSelection(@NonNull android.telephony.DomainSelectionService.SelectionAttributes, @NonNull android.telephony.TransportSelectorCallback);
14509    method public void onServiceStateUpdated(int, int, @NonNull android.telephony.ServiceState);
14510    field public static final int SCAN_TYPE_FULL_SERVICE = 2; // 0x2
14511    field public static final int SCAN_TYPE_LIMITED_SERVICE = 1; // 0x1
14512    field public static final int SCAN_TYPE_NO_PREFERENCE = 0; // 0x0
14513    field public static final int SELECTOR_TYPE_CALLING = 1; // 0x1
14514    field public static final int SELECTOR_TYPE_SMS = 2; // 0x2
14515  }
14516
14517  public static final class DomainSelectionService.SelectionAttributes implements android.os.Parcelable {
14518    method public int describeContents();
14519    method @Nullable public android.net.Uri getAddress();
14520    method @Nullable public String getCallId();
14521    method public int getCsDisconnectCause();
14522    method @Nullable public android.telephony.EmergencyRegistrationResult getEmergencyRegistrationResult();
14523    method @Nullable public android.telephony.ims.ImsReasonInfo getPsDisconnectCause();
14524    method public int getSelectorType();
14525    method public int getSlotIndex();
14526    method public int getSubscriptionId();
14527    method public boolean isEmergency();
14528    method public boolean isExitedFromAirplaneMode();
14529    method public boolean isTestEmergencyNumber();
14530    method public boolean isVideoCall();
14531    method public void writeToParcel(@NonNull android.os.Parcel, int);
14532    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.DomainSelectionService.SelectionAttributes> CREATOR;
14533  }
14534
14535  public static final class DomainSelectionService.SelectionAttributes.Builder {
14536    ctor public DomainSelectionService.SelectionAttributes.Builder(int, int, int);
14537    method @NonNull public android.telephony.DomainSelectionService.SelectionAttributes build();
14538    method @NonNull public android.telephony.DomainSelectionService.SelectionAttributes.Builder setAddress(@Nullable android.net.Uri);
14539    method @NonNull public android.telephony.DomainSelectionService.SelectionAttributes.Builder setCallId(@Nullable String);
14540    method @NonNull public android.telephony.DomainSelectionService.SelectionAttributes.Builder setCsDisconnectCause(int);
14541    method @NonNull public android.telephony.DomainSelectionService.SelectionAttributes.Builder setEmergency(boolean);
14542    method @NonNull public android.telephony.DomainSelectionService.SelectionAttributes.Builder setEmergencyRegistrationResult(@Nullable android.telephony.EmergencyRegistrationResult);
14543    method @NonNull public android.telephony.DomainSelectionService.SelectionAttributes.Builder setExitedFromAirplaneMode(boolean);
14544    method @NonNull public android.telephony.DomainSelectionService.SelectionAttributes.Builder setPsDisconnectCause(@Nullable android.telephony.ims.ImsReasonInfo);
14545    method @NonNull public android.telephony.DomainSelectionService.SelectionAttributes.Builder setTestEmergencyNumber(boolean);
14546    method @NonNull public android.telephony.DomainSelectionService.SelectionAttributes.Builder setVideoCall(boolean);
14547  }
14548
14549  public interface DomainSelector {
14550    method public void finishSelection();
14551    method public void reselectDomain(@NonNull android.telephony.DomainSelectionService.SelectionAttributes);
14552  }
14553
14554  public final class EmergencyRegistrationResult implements android.os.Parcelable {
14555    method public int describeContents();
14556    method public int getAccessNetwork();
14557    method @NonNull public String getCountryIso();
14558    method public int getDomain();
14559    method @NonNull public String getMcc();
14560    method @NonNull public String getMnc();
14561    method public int getNwProvidedEmc();
14562    method public int getNwProvidedEmf();
14563    method public int getRegState();
14564    method public boolean isEmcBearerSupported();
14565    method public boolean isVopsSupported();
14566    method public void writeToParcel(@NonNull android.os.Parcel, int);
14567    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.EmergencyRegistrationResult> CREATOR;
14568  }
14569
14570  public final class ImsiEncryptionInfo implements android.os.Parcelable {
14571    method public int describeContents();
14572    method @Nullable public String getKeyIdentifier();
14573    method @Nullable public java.security.PublicKey getPublicKey();
14574    method public void writeToParcel(@NonNull android.os.Parcel, int);
14575    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ImsiEncryptionInfo> CREATOR;
14576  }
14577
14578  public final class LinkCapacityEstimate implements android.os.Parcelable {
14579    ctor public LinkCapacityEstimate(int, int, int);
14580    method public int describeContents();
14581    method public int getDownlinkCapacityKbps();
14582    method public int getType();
14583    method public int getUplinkCapacityKbps();
14584    method public void writeToParcel(@NonNull android.os.Parcel, int);
14585    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.LinkCapacityEstimate> CREATOR;
14586    field public static final int INVALID = -1; // 0xffffffff
14587    field public static final int LCE_TYPE_COMBINED = 2; // 0x2
14588    field public static final int LCE_TYPE_PRIMARY = 0; // 0x0
14589    field public static final int LCE_TYPE_SECONDARY = 1; // 0x1
14590  }
14591
14592  public final class LteVopsSupportInfo extends android.telephony.VopsSupportInfo {
14593    ctor public LteVopsSupportInfo(int, int);
14594    method public boolean equals(@Nullable Object);
14595    method public int getEmcBearerSupport();
14596    method public int getVopsSupport();
14597    method public int hashCode();
14598    method public boolean isEmergencyServiceFallbackSupported();
14599    method public boolean isEmergencyServiceSupported();
14600    method public boolean isVopsSupported();
14601    method public void writeToParcel(@NonNull android.os.Parcel, int);
14602    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.LteVopsSupportInfo> CREATOR;
14603    field @Deprecated public static final int LTE_STATUS_NOT_AVAILABLE = 1; // 0x1
14604    field public static final int LTE_STATUS_NOT_SUPPORTED = 3; // 0x3
14605    field public static final int LTE_STATUS_SUPPORTED = 2; // 0x2
14606  }
14607
14608  public class MbmsDownloadSession implements java.lang.AutoCloseable {
14609    field public static final String MBMS_DOWNLOAD_SERVICE_ACTION = "android.telephony.action.EmbmsDownload";
14610  }
14611
14612  public class MbmsGroupCallSession implements java.lang.AutoCloseable {
14613    field public static final String MBMS_GROUP_CALL_SERVICE_ACTION = "android.telephony.action.EmbmsGroupCall";
14614  }
14615
14616  public class MbmsStreamingSession implements java.lang.AutoCloseable {
14617    field public static final String MBMS_STREAMING_SERVICE_ACTION = "android.telephony.action.EmbmsStreaming";
14618  }
14619
14620  public final class ModemActivityInfo implements android.os.Parcelable {
14621    method public int describeContents();
14622    method @NonNull public android.telephony.ModemActivityInfo getDelta(@NonNull android.telephony.ModemActivityInfo);
14623    method public long getIdleTimeMillis();
14624    method public static int getNumTxPowerLevels();
14625    method public long getReceiveTimeMillis();
14626    method public long getSleepTimeMillis();
14627    method public long getTimestampMillis();
14628    method public long getTransmitDurationMillisAtPowerLevel(int);
14629    method @NonNull public android.util.Range<java.lang.Integer> getTransmitPowerRange(int);
14630    method public void writeToParcel(@NonNull android.os.Parcel, int);
14631    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ModemActivityInfo> CREATOR;
14632    field public static final int TX_POWER_LEVEL_0 = 0; // 0x0
14633    field public static final int TX_POWER_LEVEL_1 = 1; // 0x1
14634    field public static final int TX_POWER_LEVEL_2 = 2; // 0x2
14635    field public static final int TX_POWER_LEVEL_3 = 3; // 0x3
14636    field public static final int TX_POWER_LEVEL_4 = 4; // 0x4
14637  }
14638
14639  public final class NetworkRegistrationInfo implements android.os.Parcelable {
14640    method @Nullable public android.telephony.DataSpecificRegistrationInfo getDataSpecificInfo();
14641    method public int getNetworkRegistrationState();
14642    method @Deprecated public int getRegistrationState();
14643    method public int getRoamingType();
14644    method public boolean isEmergencyEnabled();
14645    method public void writeToParcel(android.os.Parcel, int);
14646    field public static final int REGISTRATION_STATE_DENIED = 3; // 0x3
14647    field public static final int REGISTRATION_STATE_EMERGENCY = 6; // 0x6
14648    field public static final int REGISTRATION_STATE_HOME = 1; // 0x1
14649    field public static final int REGISTRATION_STATE_NOT_REGISTERED_OR_SEARCHING = 0; // 0x0
14650    field public static final int REGISTRATION_STATE_NOT_REGISTERED_SEARCHING = 2; // 0x2
14651    field public static final int REGISTRATION_STATE_ROAMING = 5; // 0x5
14652    field public static final int REGISTRATION_STATE_UNKNOWN = 4; // 0x4
14653  }
14654
14655  public static final class NetworkRegistrationInfo.Builder {
14656    ctor public NetworkRegistrationInfo.Builder();
14657    method @NonNull public android.telephony.NetworkRegistrationInfo build();
14658    method @NonNull public android.telephony.NetworkRegistrationInfo.Builder setAccessNetworkTechnology(int);
14659    method @NonNull public android.telephony.NetworkRegistrationInfo.Builder setAvailableServices(@NonNull java.util.List<java.lang.Integer>);
14660    method @NonNull public android.telephony.NetworkRegistrationInfo.Builder setCellIdentity(@Nullable android.telephony.CellIdentity);
14661    method @NonNull public android.telephony.NetworkRegistrationInfo.Builder setDomain(int);
14662    method @NonNull public android.telephony.NetworkRegistrationInfo.Builder setEmergencyOnly(boolean);
14663    method @NonNull public android.telephony.NetworkRegistrationInfo.Builder setIsNonTerrestrialNetwork(boolean);
14664    method @NonNull public android.telephony.NetworkRegistrationInfo.Builder setRegisteredPlmn(@Nullable String);
14665    method @NonNull public android.telephony.NetworkRegistrationInfo.Builder setRegistrationState(int);
14666    method @NonNull public android.telephony.NetworkRegistrationInfo.Builder setRejectCause(int);
14667    method @NonNull public android.telephony.NetworkRegistrationInfo.Builder setTransportType(int);
14668  }
14669
14670  public abstract class NetworkService extends android.app.Service {
14671    ctor public NetworkService();
14672    method public android.os.IBinder onBind(android.content.Intent);
14673    method @Nullable public abstract android.telephony.NetworkService.NetworkServiceProvider onCreateNetworkServiceProvider(int);
14674    field public static final String SERVICE_INTERFACE = "android.telephony.NetworkService";
14675  }
14676
14677  public abstract class NetworkService.NetworkServiceProvider implements java.lang.AutoCloseable {
14678    ctor public NetworkService.NetworkServiceProvider(int);
14679    method public abstract void close();
14680    method public final int getSlotIndex();
14681    method public final void notifyNetworkRegistrationInfoChanged();
14682    method public void requestNetworkRegistrationInfo(int, @NonNull android.telephony.NetworkServiceCallback);
14683  }
14684
14685  public class NetworkServiceCallback {
14686    method public void onRequestNetworkRegistrationInfoComplete(int, @Nullable android.telephony.NetworkRegistrationInfo);
14687    field public static final int RESULT_ERROR_BUSY = 3; // 0x3
14688    field public static final int RESULT_ERROR_FAILED = 5; // 0x5
14689    field public static final int RESULT_ERROR_ILLEGAL_STATE = 4; // 0x4
14690    field public static final int RESULT_ERROR_INVALID_ARG = 2; // 0x2
14691    field public static final int RESULT_ERROR_UNSUPPORTED = 1; // 0x1
14692    field public static final int RESULT_SUCCESS = 0; // 0x0
14693  }
14694
14695  public final class NrVopsSupportInfo extends android.telephony.VopsSupportInfo {
14696    ctor public NrVopsSupportInfo(int, int, int);
14697    method public boolean equals(@Nullable Object);
14698    method public int getEmcSupport();
14699    method public int getEmfSupport();
14700    method public int getVopsSupport();
14701    method public int hashCode();
14702    method public boolean isEmergencyServiceFallbackSupported();
14703    method public boolean isEmergencyServiceSupported();
14704    method public boolean isVopsSupported();
14705    method public void writeToParcel(@NonNull android.os.Parcel, int);
14706    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.NrVopsSupportInfo> CREATOR;
14707    field public static final int NR_STATUS_EMC_5GCN_ONLY = 1; // 0x1
14708    field public static final int NR_STATUS_EMC_EUTRA_5GCN_ONLY = 2; // 0x2
14709    field public static final int NR_STATUS_EMC_NOT_SUPPORTED = 0; // 0x0
14710    field public static final int NR_STATUS_EMC_NR_EUTRA_5GCN = 3; // 0x3
14711    field public static final int NR_STATUS_EMF_5GCN_ONLY = 1; // 0x1
14712    field public static final int NR_STATUS_EMF_EUTRA_5GCN_ONLY = 2; // 0x2
14713    field public static final int NR_STATUS_EMF_NOT_SUPPORTED = 0; // 0x0
14714    field public static final int NR_STATUS_EMF_NR_EUTRA_5GCN = 3; // 0x3
14715    field public static final int NR_STATUS_VOPS_3GPP_SUPPORTED = 1; // 0x1
14716    field public static final int NR_STATUS_VOPS_NON_3GPP_SUPPORTED = 2; // 0x2
14717    field public static final int NR_STATUS_VOPS_NOT_SUPPORTED = 0; // 0x0
14718  }
14719
14720  public interface NumberVerificationCallback {
14721    method public default void onCallReceived(@NonNull String);
14722    method public default void onVerificationFailed(int);
14723    field public static final int REASON_CONCURRENT_REQUESTS = 4; // 0x4
14724    field public static final int REASON_IN_ECBM = 5; // 0x5
14725    field public static final int REASON_IN_EMERGENCY_CALL = 6; // 0x6
14726    field public static final int REASON_NETWORK_NOT_AVAILABLE = 2; // 0x2
14727    field public static final int REASON_TIMED_OUT = 1; // 0x1
14728    field public static final int REASON_TOO_MANY_CALLS = 3; // 0x3
14729    field public static final int REASON_UNSPECIFIED = 0; // 0x0
14730  }
14731
14732  public final class PhoneCapability implements android.os.Parcelable {
14733    method public int describeContents();
14734    method @NonNull public int[] getDeviceNrCapabilities();
14735    method @IntRange(from=1) public int getMaxActiveDataSubscriptions();
14736    method @IntRange(from=1) public int getMaxActiveVoiceSubscriptions();
14737    method public void writeToParcel(@NonNull android.os.Parcel, int);
14738    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.PhoneCapability> CREATOR;
14739    field public static final int DEVICE_NR_CAPABILITY_NSA = 1; // 0x1
14740    field public static final int DEVICE_NR_CAPABILITY_SA = 2; // 0x2
14741  }
14742
14743  public final class PhoneNumberRange implements android.os.Parcelable {
14744    ctor public PhoneNumberRange(@NonNull String, @NonNull String, @NonNull String, @NonNull String);
14745    method public int describeContents();
14746    method public boolean matches(@NonNull String);
14747    method public void writeToParcel(android.os.Parcel, int);
14748    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.PhoneNumberRange> CREATOR;
14749  }
14750
14751  public class PhoneNumberUtils {
14752    method @NonNull public static String getUsernameFromUriNumber(@NonNull String);
14753    method public static boolean isUriNumber(@Nullable String);
14754    method public static boolean isVoiceMailNumber(@NonNull android.content.Context, int, @Nullable String);
14755  }
14756
14757  @Deprecated public class PhoneStateListener {
14758    method @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public void onCallAttributesChanged(@NonNull android.telephony.CallAttributes);
14759    method @Deprecated @RequiresPermission(android.Manifest.permission.READ_ACTIVE_EMERGENCY_SESSION) public void onOutgoingEmergencyCall(@NonNull android.telephony.emergency.EmergencyNumber);
14760    method @Deprecated @RequiresPermission(android.Manifest.permission.READ_ACTIVE_EMERGENCY_SESSION) public void onOutgoingEmergencyCall(@NonNull android.telephony.emergency.EmergencyNumber, int);
14761    method @Deprecated @RequiresPermission(android.Manifest.permission.READ_ACTIVE_EMERGENCY_SESSION) public void onOutgoingEmergencySms(@NonNull android.telephony.emergency.EmergencyNumber);
14762    method @Deprecated public void onOutgoingEmergencySms(@NonNull android.telephony.emergency.EmergencyNumber, int);
14763    method @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public void onPreciseCallStateChanged(@NonNull android.telephony.PreciseCallState);
14764    method @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void onRadioPowerStateChanged(int);
14765    method @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void onSrvccStateChanged(int);
14766    method @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void onVoiceActivationStateChanged(int);
14767    field @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public static final int LISTEN_CALL_ATTRIBUTES_CHANGED = 67108864; // 0x4000000
14768    field @Deprecated @RequiresPermission(android.Manifest.permission.READ_ACTIVE_EMERGENCY_SESSION) public static final int LISTEN_OUTGOING_EMERGENCY_CALL = 268435456; // 0x10000000
14769    field @Deprecated @RequiresPermission(android.Manifest.permission.READ_ACTIVE_EMERGENCY_SESSION) public static final int LISTEN_OUTGOING_EMERGENCY_SMS = 536870912; // 0x20000000
14770    field @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public static final int LISTEN_PRECISE_CALL_STATE = 2048; // 0x800
14771    field @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public static final int LISTEN_RADIO_POWER_STATE_CHANGED = 8388608; // 0x800000
14772    field @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public static final int LISTEN_SRVCC_STATE_CHANGED = 16384; // 0x4000
14773    field @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public static final int LISTEN_VOICE_ACTIVATION_STATE = 131072; // 0x20000
14774  }
14775
14776  public final class PinResult implements android.os.Parcelable {
14777    method public int describeContents();
14778    method public int getAttemptsRemaining();
14779    method public int getResult();
14780    method public void writeToParcel(@NonNull android.os.Parcel, int);
14781    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.PinResult> CREATOR;
14782    field public static final int PIN_RESULT_TYPE_ABORTED = 3; // 0x3
14783    field public static final int PIN_RESULT_TYPE_FAILURE = 2; // 0x2
14784    field public static final int PIN_RESULT_TYPE_INCORRECT = 1; // 0x1
14785    field public static final int PIN_RESULT_TYPE_SUCCESS = 0; // 0x0
14786  }
14787
14788  public final class PreciseCallState implements android.os.Parcelable {
14789    ctor public PreciseCallState(int, int, int, int, int);
14790    method public int describeContents();
14791    method public int getBackgroundCallState();
14792    method public int getForegroundCallState();
14793    method public int getRingingCallState();
14794    method public void writeToParcel(android.os.Parcel, int);
14795    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.PreciseCallState> CREATOR;
14796    field public static final int PRECISE_CALL_STATE_ACTIVE = 1; // 0x1
14797    field public static final int PRECISE_CALL_STATE_ALERTING = 4; // 0x4
14798    field public static final int PRECISE_CALL_STATE_DIALING = 3; // 0x3
14799    field public static final int PRECISE_CALL_STATE_DISCONNECTED = 7; // 0x7
14800    field public static final int PRECISE_CALL_STATE_DISCONNECTING = 8; // 0x8
14801    field public static final int PRECISE_CALL_STATE_HOLDING = 2; // 0x2
14802    field public static final int PRECISE_CALL_STATE_IDLE = 0; // 0x0
14803    field public static final int PRECISE_CALL_STATE_INCOMING = 5; // 0x5
14804    field public static final int PRECISE_CALL_STATE_INCOMING_SETUP = 9; // 0x9
14805    field public static final int PRECISE_CALL_STATE_NOT_VALID = -1; // 0xffffffff
14806    field public static final int PRECISE_CALL_STATE_WAITING = 6; // 0x6
14807  }
14808
14809  public final class PreciseDataConnectionState implements android.os.Parcelable {
14810    method @Deprecated @NonNull public String getDataConnectionApn();
14811    method @Deprecated public int getDataConnectionApnTypeBitMask();
14812    method @Deprecated public int getDataConnectionFailCause();
14813    method @Deprecated public int getDataConnectionState();
14814  }
14815
14816  public final class PreciseDisconnectCause {
14817    field public static final int ACCESS_CLASS_BLOCKED = 260; // 0x104
14818    field public static final int ACCESS_INFORMATION_DISCARDED = 43; // 0x2b
14819    field public static final int ACM_LIMIT_EXCEEDED = 68; // 0x44
14820    field public static final int BEARER_CAPABILITY_NOT_AUTHORIZED = 57; // 0x39
14821    field public static final int BEARER_NOT_AVAIL = 58; // 0x3a
14822    field public static final int BEARER_SERVICE_NOT_IMPLEMENTED = 65; // 0x41
14823    field public static final int BUSY = 17; // 0x11
14824    field public static final int CALL_BARRED = 240; // 0xf0
14825    field public static final int CALL_REJECTED = 21; // 0x15
14826    field public static final int CDMA_ACCESS_BLOCKED = 1009; // 0x3f1
14827    field public static final int CDMA_ACCESS_FAILURE = 1006; // 0x3ee
14828    field public static final int CDMA_DROP = 1001; // 0x3e9
14829    field public static final int CDMA_INTERCEPT = 1002; // 0x3ea
14830    field public static final int CDMA_LOCKED_UNTIL_POWER_CYCLE = 1000; // 0x3e8
14831    field public static final int CDMA_NOT_EMERGENCY = 1008; // 0x3f0
14832    field public static final int CDMA_PREEMPTED = 1007; // 0x3ef
14833    field public static final int CDMA_REORDER = 1003; // 0x3eb
14834    field public static final int CDMA_RETRY_ORDER = 1005; // 0x3ed
14835    field public static final int CDMA_SO_REJECT = 1004; // 0x3ec
14836    field public static final int CHANNEL_NOT_AVAIL = 44; // 0x2c
14837    field public static final int CHANNEL_UNACCEPTABLE = 6; // 0x6
14838    field public static final int CONDITIONAL_IE_ERROR = 100; // 0x64
14839    field public static final int DESTINATION_OUT_OF_ORDER = 27; // 0x1b
14840    field public static final int EMERGENCY_PERM_FAILURE = 326; // 0x146
14841    field public static final int EMERGENCY_TEMP_FAILURE = 325; // 0x145
14842    field public static final int ERROR_UNSPECIFIED = 65535; // 0xffff
14843    field public static final int FACILITY_REJECTED = 29; // 0x1d
14844    field public static final int FDN_BLOCKED = 241; // 0xf1
14845    field public static final int IMEI_NOT_ACCEPTED = 243; // 0xf3
14846    field public static final int IMSI_UNKNOWN_IN_VLR = 242; // 0xf2
14847    field public static final int INCOMING_CALLS_BARRED_WITHIN_CUG = 55; // 0x37
14848    field public static final int INCOMPATIBLE_DESTINATION = 88; // 0x58
14849    field public static final int INFORMATION_ELEMENT_NON_EXISTENT = 99; // 0x63
14850    field public static final int INTERWORKING_UNSPECIFIED = 127; // 0x7f
14851    field public static final int INVALID_MANDATORY_INFORMATION = 96; // 0x60
14852    field public static final int INVALID_NUMBER_FORMAT = 28; // 0x1c
14853    field public static final int INVALID_TRANSACTION_IDENTIFIER = 81; // 0x51
14854    field public static final int MESSAGE_NOT_COMPATIBLE_WITH_PROTOCOL_STATE = 101; // 0x65
14855    field public static final int MESSAGE_TYPE_NON_IMPLEMENTED = 97; // 0x61
14856    field public static final int MESSAGE_TYPE_NOT_COMPATIBLE_WITH_PROTOCOL_STATE = 98; // 0x62
14857    field public static final int NETWORK_DETACH = 261; // 0x105
14858    field public static final int NETWORK_OUT_OF_ORDER = 38; // 0x26
14859    field public static final int NETWORK_REJECT = 252; // 0xfc
14860    field public static final int NETWORK_RESP_TIMEOUT = 251; // 0xfb
14861    field public static final int NORMAL = 16; // 0x10
14862    field public static final int NORMAL_UNSPECIFIED = 31; // 0x1f
14863    field public static final int NOT_VALID = -1; // 0xffffffff
14864    field public static final int NO_ANSWER_FROM_USER = 19; // 0x13
14865    field public static final int NO_CIRCUIT_AVAIL = 34; // 0x22
14866    field public static final int NO_DISCONNECT_CAUSE_AVAILABLE = 0; // 0x0
14867    field public static final int NO_ROUTE_TO_DESTINATION = 3; // 0x3
14868    field public static final int NO_USER_RESPONDING = 18; // 0x12
14869    field public static final int NO_VALID_SIM = 249; // 0xf9
14870    field public static final int NUMBER_CHANGED = 22; // 0x16
14871    field public static final int OEM_CAUSE_1 = 61441; // 0xf001
14872    field public static final int OEM_CAUSE_10 = 61450; // 0xf00a
14873    field public static final int OEM_CAUSE_11 = 61451; // 0xf00b
14874    field public static final int OEM_CAUSE_12 = 61452; // 0xf00c
14875    field public static final int OEM_CAUSE_13 = 61453; // 0xf00d
14876    field public static final int OEM_CAUSE_14 = 61454; // 0xf00e
14877    field public static final int OEM_CAUSE_15 = 61455; // 0xf00f
14878    field public static final int OEM_CAUSE_2 = 61442; // 0xf002
14879    field public static final int OEM_CAUSE_3 = 61443; // 0xf003
14880    field public static final int OEM_CAUSE_4 = 61444; // 0xf004
14881    field public static final int OEM_CAUSE_5 = 61445; // 0xf005
14882    field public static final int OEM_CAUSE_6 = 61446; // 0xf006
14883    field public static final int OEM_CAUSE_7 = 61447; // 0xf007
14884    field public static final int OEM_CAUSE_8 = 61448; // 0xf008
14885    field public static final int OEM_CAUSE_9 = 61449; // 0xf009
14886    field public static final int ONLY_DIGITAL_INFORMATION_BEARER_AVAILABLE = 70; // 0x46
14887    field public static final int OPERATOR_DETERMINED_BARRING = 8; // 0x8
14888    field public static final int OUT_OF_SRV = 248; // 0xf8
14889    field public static final int PREEMPTION = 25; // 0x19
14890    field public static final int PROTOCOL_ERROR_UNSPECIFIED = 111; // 0x6f
14891    field public static final int QOS_NOT_AVAIL = 49; // 0x31
14892    field public static final int RADIO_ACCESS_FAILURE = 253; // 0xfd
14893    field public static final int RADIO_INTERNAL_ERROR = 250; // 0xfa
14894    field public static final int RADIO_LINK_FAILURE = 254; // 0xfe
14895    field public static final int RADIO_LINK_LOST = 255; // 0xff
14896    field public static final int RADIO_OFF = 247; // 0xf7
14897    field public static final int RADIO_RELEASE_ABNORMAL = 259; // 0x103
14898    field public static final int RADIO_RELEASE_NORMAL = 258; // 0x102
14899    field public static final int RADIO_SETUP_FAILURE = 257; // 0x101
14900    field public static final int RADIO_UPLINK_FAILURE = 256; // 0x100
14901    field public static final int RECOVERY_ON_TIMER_EXPIRED = 102; // 0x66
14902    field public static final int REQUESTED_FACILITY_NOT_IMPLEMENTED = 69; // 0x45
14903    field public static final int REQUESTED_FACILITY_NOT_SUBSCRIBED = 50; // 0x32
14904    field public static final int RESOURCES_UNAVAILABLE_OR_UNSPECIFIED = 47; // 0x2f
14905    field public static final int SEMANTICALLY_INCORRECT_MESSAGE = 95; // 0x5f
14906    field public static final int SERVICE_OPTION_NOT_AVAILABLE = 63; // 0x3f
14907    field public static final int SERVICE_OR_OPTION_NOT_IMPLEMENTED = 79; // 0x4f
14908    field public static final int STATUS_ENQUIRY = 30; // 0x1e
14909    field public static final int SWITCHING_CONGESTION = 42; // 0x2a
14910    field public static final int TEMPORARY_FAILURE = 41; // 0x29
14911    field public static final int UNOBTAINABLE_NUMBER = 1; // 0x1
14912    field public static final int USER_NOT_MEMBER_OF_CUG = 87; // 0x57
14913  }
14914
14915  public class ServiceState implements android.os.Parcelable {
14916    method @Nullable public android.telephony.NetworkRegistrationInfo getNetworkRegistrationInfo(int, int);
14917    method @NonNull public java.util.List<android.telephony.NetworkRegistrationInfo> getNetworkRegistrationInfoListForDomain(int);
14918    method @NonNull public java.util.List<android.telephony.NetworkRegistrationInfo> getNetworkRegistrationInfoListForTransportType(int);
14919    field public static final int ROAMING_TYPE_DOMESTIC = 2; // 0x2
14920    field public static final int ROAMING_TYPE_INTERNATIONAL = 3; // 0x3
14921    field public static final int ROAMING_TYPE_NOT_ROAMING = 0; // 0x0
14922    field public static final int ROAMING_TYPE_UNKNOWN = 1; // 0x1
14923  }
14924
14925  public final class SignalStrengthUpdateRequest implements android.os.Parcelable {
14926    method public boolean isSystemThresholdReportingRequestedWhileIdle();
14927  }
14928
14929  public static final class SignalStrengthUpdateRequest.Builder {
14930    method @NonNull @RequiresPermission("android.permission.LISTEN_ALWAYS_REPORTED_SIGNAL_STRENGTH") public android.telephony.SignalStrengthUpdateRequest.Builder setSystemThresholdReportingRequestedWhileIdle(boolean);
14931  }
14932
14933  public final class SmsCbCmasInfo implements android.os.Parcelable {
14934    ctor public SmsCbCmasInfo(int, int, int, int, int, int);
14935    method public int describeContents();
14936    method public int getCategory();
14937    method public int getCertainty();
14938    method public int getMessageClass();
14939    method public int getResponseType();
14940    method public int getSeverity();
14941    method public int getUrgency();
14942    method public void writeToParcel(android.os.Parcel, int);
14943    field public static final int CMAS_CATEGORY_CBRNE = 10; // 0xa
14944    field public static final int CMAS_CATEGORY_ENV = 7; // 0x7
14945    field public static final int CMAS_CATEGORY_FIRE = 5; // 0x5
14946    field public static final int CMAS_CATEGORY_GEO = 0; // 0x0
14947    field public static final int CMAS_CATEGORY_HEALTH = 6; // 0x6
14948    field public static final int CMAS_CATEGORY_INFRA = 9; // 0x9
14949    field public static final int CMAS_CATEGORY_MET = 1; // 0x1
14950    field public static final int CMAS_CATEGORY_OTHER = 11; // 0xb
14951    field public static final int CMAS_CATEGORY_RESCUE = 4; // 0x4
14952    field public static final int CMAS_CATEGORY_SAFETY = 2; // 0x2
14953    field public static final int CMAS_CATEGORY_SECURITY = 3; // 0x3
14954    field public static final int CMAS_CATEGORY_TRANSPORT = 8; // 0x8
14955    field public static final int CMAS_CATEGORY_UNKNOWN = -1; // 0xffffffff
14956    field public static final int CMAS_CERTAINTY_LIKELY = 1; // 0x1
14957    field public static final int CMAS_CERTAINTY_OBSERVED = 0; // 0x0
14958    field public static final int CMAS_CERTAINTY_UNKNOWN = -1; // 0xffffffff
14959    field public static final int CMAS_CLASS_CHILD_ABDUCTION_EMERGENCY = 3; // 0x3
14960    field public static final int CMAS_CLASS_CMAS_EXERCISE = 5; // 0x5
14961    field public static final int CMAS_CLASS_EXTREME_THREAT = 1; // 0x1
14962    field public static final int CMAS_CLASS_OPERATOR_DEFINED_USE = 6; // 0x6
14963    field public static final int CMAS_CLASS_PRESIDENTIAL_LEVEL_ALERT = 0; // 0x0
14964    field public static final int CMAS_CLASS_REQUIRED_MONTHLY_TEST = 4; // 0x4
14965    field public static final int CMAS_CLASS_SEVERE_THREAT = 2; // 0x2
14966    field public static final int CMAS_CLASS_UNKNOWN = -1; // 0xffffffff
14967    field public static final int CMAS_RESPONSE_TYPE_ASSESS = 6; // 0x6
14968    field public static final int CMAS_RESPONSE_TYPE_AVOID = 5; // 0x5
14969    field public static final int CMAS_RESPONSE_TYPE_EVACUATE = 1; // 0x1
14970    field public static final int CMAS_RESPONSE_TYPE_EXECUTE = 3; // 0x3
14971    field public static final int CMAS_RESPONSE_TYPE_MONITOR = 4; // 0x4
14972    field public static final int CMAS_RESPONSE_TYPE_NONE = 7; // 0x7
14973    field public static final int CMAS_RESPONSE_TYPE_PREPARE = 2; // 0x2
14974    field public static final int CMAS_RESPONSE_TYPE_SHELTER = 0; // 0x0
14975    field public static final int CMAS_RESPONSE_TYPE_UNKNOWN = -1; // 0xffffffff
14976    field public static final int CMAS_SEVERITY_EXTREME = 0; // 0x0
14977    field public static final int CMAS_SEVERITY_SEVERE = 1; // 0x1
14978    field public static final int CMAS_SEVERITY_UNKNOWN = -1; // 0xffffffff
14979    field public static final int CMAS_URGENCY_EXPECTED = 1; // 0x1
14980    field public static final int CMAS_URGENCY_IMMEDIATE = 0; // 0x0
14981    field public static final int CMAS_URGENCY_UNKNOWN = -1; // 0xffffffff
14982    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.SmsCbCmasInfo> CREATOR;
14983  }
14984
14985  public final class SmsCbEtwsInfo implements android.os.Parcelable {
14986    ctor public SmsCbEtwsInfo(int, boolean, boolean, boolean, @Nullable byte[]);
14987    method public int describeContents();
14988    method @Nullable public byte[] getPrimaryNotificationSignature();
14989    method public long getPrimaryNotificationTimestamp();
14990    method public int getWarningType();
14991    method public boolean isEmergencyUserAlert();
14992    method public boolean isPopupAlert();
14993    method public boolean isPrimary();
14994    method public void writeToParcel(android.os.Parcel, int);
14995    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.SmsCbEtwsInfo> CREATOR;
14996    field public static final int ETWS_WARNING_TYPE_EARTHQUAKE = 0; // 0x0
14997    field public static final int ETWS_WARNING_TYPE_EARTHQUAKE_AND_TSUNAMI = 2; // 0x2
14998    field public static final int ETWS_WARNING_TYPE_OTHER_EMERGENCY = 4; // 0x4
14999    field public static final int ETWS_WARNING_TYPE_TEST_MESSAGE = 3; // 0x3
15000    field public static final int ETWS_WARNING_TYPE_TSUNAMI = 1; // 0x1
15001    field public static final int ETWS_WARNING_TYPE_UNKNOWN = -1; // 0xffffffff
15002  }
15003
15004  public final class SmsCbLocation implements android.os.Parcelable {
15005    ctor public SmsCbLocation(@NonNull String, int, int);
15006    method public int describeContents();
15007    method public int getCid();
15008    method public int getLac();
15009    method @NonNull public String getPlmn();
15010    method public boolean isInLocationArea(@NonNull android.telephony.SmsCbLocation);
15011    method public boolean isInLocationArea(@Nullable String, int, int);
15012    method public void writeToParcel(android.os.Parcel, int);
15013    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.SmsCbLocation> CREATOR;
15014  }
15015
15016  public final class SmsCbMessage implements android.os.Parcelable {
15017    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);
15018    method @NonNull public static android.telephony.SmsCbMessage createFromCursor(@NonNull android.database.Cursor);
15019    method public int describeContents();
15020    method @Nullable public android.telephony.SmsCbCmasInfo getCmasWarningInfo();
15021    method @NonNull public android.content.ContentValues getContentValues();
15022    method public int getDataCodingScheme();
15023    method @Nullable public android.telephony.SmsCbEtwsInfo getEtwsWarningInfo();
15024    method public int getGeographicalScope();
15025    method @NonNull public java.util.List<android.telephony.CbGeoUtils.Geometry> getGeometries();
15026    method @Nullable public String getLanguageCode();
15027    method @NonNull public android.telephony.SmsCbLocation getLocation();
15028    method public int getMaximumWaitingDuration();
15029    method @Nullable public String getMessageBody();
15030    method public int getMessageFormat();
15031    method public int getMessagePriority();
15032    method public long getReceivedTime();
15033    method public int getSerialNumber();
15034    method public int getServiceCategory();
15035    method public int getSlotIndex();
15036    method public int getSubscriptionId();
15037    method public boolean isCmasMessage();
15038    method public boolean isEmergencyMessage();
15039    method public boolean isEtwsMessage();
15040    method public boolean needGeoFencingCheck();
15041    method public void writeToParcel(android.os.Parcel, int);
15042    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.SmsCbMessage> CREATOR;
15043    field public static final int GEOGRAPHICAL_SCOPE_CELL_WIDE = 3; // 0x3
15044    field public static final int GEOGRAPHICAL_SCOPE_CELL_WIDE_IMMEDIATE = 0; // 0x0
15045    field public static final int GEOGRAPHICAL_SCOPE_LOCATION_AREA_WIDE = 2; // 0x2
15046    field public static final int GEOGRAPHICAL_SCOPE_PLMN_WIDE = 1; // 0x1
15047    field public static final int MAXIMUM_WAIT_TIME_NOT_SET = 255; // 0xff
15048    field public static final int MESSAGE_FORMAT_3GPP = 1; // 0x1
15049    field public static final int MESSAGE_FORMAT_3GPP2 = 2; // 0x2
15050    field public static final int MESSAGE_PRIORITY_EMERGENCY = 3; // 0x3
15051    field public static final int MESSAGE_PRIORITY_INTERACTIVE = 1; // 0x1
15052    field public static final int MESSAGE_PRIORITY_NORMAL = 0; // 0x0
15053    field public static final int MESSAGE_PRIORITY_URGENT = 2; // 0x2
15054  }
15055
15056  public final class SmsManager {
15057    method @Deprecated public boolean disableCellBroadcastRange(int, int, int);
15058    method @Deprecated public boolean enableCellBroadcastRange(int, int, int);
15059    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getPremiumSmsConsent(@NonNull String);
15060    method @NonNull @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public android.net.Uri getSmscIdentity();
15061    method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_CELL_BROADCASTS) public void resetAllCellBroadcastRanges();
15062    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>);
15063    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setPremiumSmsConsent(@NonNull String, int);
15064    field public static final int PREMIUM_SMS_CONSENT_ALWAYS_ALLOW = 3; // 0x3
15065    field public static final int PREMIUM_SMS_CONSENT_ASK_USER = 1; // 0x1
15066    field public static final int PREMIUM_SMS_CONSENT_NEVER_ALLOW = 2; // 0x2
15067    field public static final int PREMIUM_SMS_CONSENT_UNKNOWN = 0; // 0x0
15068  }
15069
15070  public class SmsMessage {
15071    method @Nullable public static android.telephony.SmsMessage createFromNativeSmsSubmitPdu(@NonNull byte[], boolean);
15072    method @Nullable public static android.telephony.SmsMessage.SubmitPdu getSmsPdu(int, int, @Nullable String, @NonNull String, @NonNull String, long);
15073    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);
15074  }
15075
15076  public class SubscriptionInfo implements android.os.Parcelable {
15077    method public boolean areUiccApplicationsEnabled();
15078    method @Nullable public java.util.List<android.telephony.UiccAccessRule> getAccessRules();
15079    method public int getProfileClass();
15080    method public int getTransferStatus();
15081    method public boolean isGroupDisabled();
15082  }
15083
15084  public class SubscriptionManager {
15085    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean canDisablePhysicalSubscription();
15086    method public boolean canManageSubscription(@NonNull android.telephony.SubscriptionInfo, @NonNull String);
15087    method @NonNull @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int[] getActiveSubscriptionIdList();
15088    method @Nullable @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public android.telephony.SubscriptionInfo getActiveSubscriptionInfoForIcc(@NonNull String);
15089    method @NonNull @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public byte[] getAllSimSpecificSettingsForBackup();
15090    method @Nullable public java.util.List<android.telephony.SubscriptionInfo> getAvailableSubscriptionInfoList();
15091    method @NonNull @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int[] getCompleteActiveSubscriptionIdList();
15092    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getEnabledSubscriptionId(int);
15093    method @NonNull public static android.content.res.Resources getResourcesForSubId(@NonNull android.content.Context, int);
15094    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isSubscriptionEnabled(int);
15095    method public void requestEmbeddedSubscriptionInfoListRefresh();
15096    method public void requestEmbeddedSubscriptionInfoListRefresh(int);
15097    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void restoreAllSimSpecificSettingsFromBackup(@NonNull byte[]);
15098    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setDefaultDataSubId(int);
15099    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setDefaultSmsSubId(int);
15100    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setDefaultVoiceSubscriptionId(int);
15101    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>);
15102    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean setSubscriptionEnabled(int, boolean);
15103    method @RequiresPermission(android.Manifest.permission.WRITE_EMBEDDED_SUBSCRIPTIONS) public void setTransferStatus(int, int);
15104    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setUiccApplicationsEnabled(int, boolean);
15105    field @RequiresPermission(android.Manifest.permission.MANAGE_SUBSCRIPTION_PLANS) public static final String ACTION_SUBSCRIPTION_PLANS_CHANGED = "android.telephony.action.SUBSCRIPTION_PLANS_CHANGED";
15106    field @NonNull public static final android.net.Uri ADVANCED_CALLING_ENABLED_CONTENT_URI;
15107    field @NonNull public static final android.net.Uri CROSS_SIM_ENABLED_CONTENT_URI;
15108    field @Deprecated public static final int PROFILE_CLASS_DEFAULT = -1; // 0xffffffff
15109    field public static final int PROFILE_CLASS_OPERATIONAL = 2; // 0x2
15110    field public static final int PROFILE_CLASS_PROVISIONING = 1; // 0x1
15111    field public static final int PROFILE_CLASS_TESTING = 0; // 0x0
15112    field public static final int PROFILE_CLASS_UNSET = -1; // 0xffffffff
15113    field public static final int TRANSFER_STATUS_CONVERTED = 2; // 0x2
15114    field public static final int TRANSFER_STATUS_NONE = 0; // 0x0
15115    field public static final int TRANSFER_STATUS_TRANSFERRED_OUT = 1; // 0x1
15116    field @NonNull public static final android.net.Uri VT_ENABLED_CONTENT_URI;
15117    field @NonNull public static final android.net.Uri WFC_ENABLED_CONTENT_URI;
15118    field @NonNull public static final android.net.Uri WFC_MODE_CONTENT_URI;
15119    field @NonNull public static final android.net.Uri WFC_ROAMING_ENABLED_CONTENT_URI;
15120    field @NonNull public static final android.net.Uri WFC_ROAMING_MODE_CONTENT_URI;
15121  }
15122
15123  public static class SubscriptionPlan.Builder {
15124    method @Deprecated public static android.telephony.SubscriptionPlan.Builder createRecurringDaily(java.time.ZonedDateTime);
15125    method @Deprecated public static android.telephony.SubscriptionPlan.Builder createRecurringMonthly(java.time.ZonedDateTime);
15126    method @Deprecated public static android.telephony.SubscriptionPlan.Builder createRecurringWeekly(java.time.ZonedDateTime);
15127  }
15128
15129  public class TelephonyCallback {
15130    field @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public static final int EVENT_ACTIVE_DATA_SUBSCRIPTION_ID_CHANGED = 23; // 0x17
15131    field @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public static final int EVENT_ALLOWED_NETWORK_TYPE_LIST_CHANGED = 35; // 0x23
15132    field public static final int EVENT_ALWAYS_REPORTED_SIGNAL_STRENGTH_CHANGED = 10; // 0xa
15133    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
15134    field @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public static final int EVENT_CALL_ATTRIBUTES_CHANGED = 27; // 0x1b
15135    field @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public static final int EVENT_CALL_DISCONNECT_CAUSE_CHANGED = 26; // 0x1a
15136    field @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public static final int EVENT_CALL_FORWARDING_INDICATOR_CHANGED = 4; // 0x4
15137    field public static final int EVENT_CALL_STATE_CHANGED = 6; // 0x6
15138    field public static final int EVENT_CARRIER_NETWORK_CHANGED = 17; // 0x11
15139    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
15140    field @RequiresPermission(android.Manifest.permission.ACCESS_FINE_LOCATION) public static final int EVENT_CELL_LOCATION_CHANGED = 5; // 0x5
15141    field public static final int EVENT_DATA_ACTIVATION_STATE_CHANGED = 19; // 0x13
15142    field public static final int EVENT_DATA_ACTIVITY_CHANGED = 8; // 0x8
15143    field @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public static final int EVENT_DATA_CONNECTION_REAL_TIME_INFO_CHANGED = 14; // 0xe
15144    field public static final int EVENT_DATA_CONNECTION_STATE_CHANGED = 7; // 0x7
15145    field @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public static final int EVENT_DATA_ENABLED_CHANGED = 34; // 0x22
15146    field public static final int EVENT_DISPLAY_INFO_CHANGED = 21; // 0x15
15147    field @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public static final int EVENT_EMERGENCY_NUMBER_LIST_CHANGED = 25; // 0x19
15148    field @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public static final int EVENT_IMS_CALL_DISCONNECT_CAUSE_CHANGED = 28; // 0x1c
15149    field @RequiresPermission(android.Manifest.permission.READ_CALL_LOG) public static final int EVENT_LEGACY_CALL_STATE_CHANGED = 36; // 0x24
15150    field @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public static final int EVENT_LINK_CAPACITY_ESTIMATE_CHANGED = 37; // 0x25
15151    field @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public static final int EVENT_MEDIA_QUALITY_STATUS_CHANGED = 39; // 0x27
15152    field @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public static final int EVENT_MESSAGE_WAITING_INDICATOR_CHANGED = 3; // 0x3
15153    field @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public static final int EVENT_OEM_HOOK_RAW = 15; // 0xf
15154    field @RequiresPermission(android.Manifest.permission.READ_ACTIVE_EMERGENCY_SESSION) public static final int EVENT_OUTGOING_EMERGENCY_CALL = 29; // 0x1d
15155    field @RequiresPermission(android.Manifest.permission.READ_ACTIVE_EMERGENCY_SESSION) public static final int EVENT_OUTGOING_EMERGENCY_SMS = 30; // 0x1e
15156    field public static final int EVENT_PHONE_CAPABILITY_CHANGED = 22; // 0x16
15157    field @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public static final int EVENT_PHYSICAL_CHANNEL_CONFIG_CHANGED = 33; // 0x21
15158    field @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public static final int EVENT_PRECISE_CALL_STATE_CHANGED = 12; // 0xc
15159    field @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public static final int EVENT_PRECISE_DATA_CONNECTION_STATE_CHANGED = 13; // 0xd
15160    field @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public static final int EVENT_RADIO_POWER_STATE_CHANGED = 24; // 0x18
15161    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
15162    field public static final int EVENT_SERVICE_STATE_CHANGED = 1; // 0x1
15163    field public static final int EVENT_SIGNAL_STRENGTHS_CHANGED = 9; // 0x9
15164    field public static final int EVENT_SIGNAL_STRENGTH_CHANGED = 2; // 0x2
15165    field @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public static final int EVENT_SIMULTANEOUS_CELLULAR_CALLING_SUBSCRIPTIONS_CHANGED = 41; // 0x29
15166    field @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public static final int EVENT_SRVCC_STATE_CHANGED = 16; // 0x10
15167    field public static final int EVENT_USER_MOBILE_DATA_STATE_CHANGED = 20; // 0x14
15168    field @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public static final int EVENT_VOICE_ACTIVATION_STATE_CHANGED = 18; // 0x12
15169  }
15170
15171  public static interface TelephonyCallback.AllowedNetworkTypesListener {
15172    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void onAllowedNetworkTypesChanged(int, long);
15173  }
15174
15175  public static interface TelephonyCallback.CallAttributesListener {
15176    method @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public default void onCallAttributesChanged(@NonNull android.telephony.CallAttributes);
15177    method @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public default void onCallStatesChanged(@NonNull java.util.List<android.telephony.CallState>);
15178  }
15179
15180  public static interface TelephonyCallback.DataEnabledListener {
15181    method @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public void onDataEnabledChanged(boolean, int);
15182  }
15183
15184  public static interface TelephonyCallback.LinkCapacityEstimateChangedListener {
15185    method @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public void onLinkCapacityEstimateChanged(@NonNull java.util.List<android.telephony.LinkCapacityEstimate>);
15186  }
15187
15188  public static interface TelephonyCallback.MediaQualityStatusChangedListener {
15189    method @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public void onMediaQualityStatusChanged(@NonNull android.telephony.ims.MediaQualityStatus);
15190  }
15191
15192  public static interface TelephonyCallback.OutgoingEmergencyCallListener {
15193    method @RequiresPermission(android.Manifest.permission.READ_ACTIVE_EMERGENCY_SESSION) public void onOutgoingEmergencyCall(@NonNull android.telephony.emergency.EmergencyNumber, int);
15194  }
15195
15196  public static interface TelephonyCallback.OutgoingEmergencySmsListener {
15197    method @RequiresPermission(android.Manifest.permission.READ_ACTIVE_EMERGENCY_SESSION) public void onOutgoingEmergencySms(@NonNull android.telephony.emergency.EmergencyNumber, int);
15198  }
15199
15200  public static interface TelephonyCallback.PhoneCapabilityListener {
15201    method public void onPhoneCapabilityChanged(@NonNull android.telephony.PhoneCapability);
15202  }
15203
15204  public static interface TelephonyCallback.PreciseCallStateListener {
15205    method @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public void onPreciseCallStateChanged(@NonNull android.telephony.PreciseCallState);
15206  }
15207
15208  public static interface TelephonyCallback.RadioPowerStateListener {
15209    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void onRadioPowerStateChanged(int);
15210  }
15211
15212  public static interface TelephonyCallback.SimultaneousCellularCallingSupportListener {
15213    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void onSimultaneousCellularCallingSubscriptionsChanged(@NonNull java.util.Set<java.lang.Integer>);
15214  }
15215
15216  public static interface TelephonyCallback.SrvccStateListener {
15217    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void onSrvccStateChanged(int);
15218  }
15219
15220  public static interface TelephonyCallback.VoiceActivationStateListener {
15221    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void onVoiceActivationStateChanged(int);
15222  }
15223
15224  public final class TelephonyHistogram implements android.os.Parcelable {
15225    ctor public TelephonyHistogram(int, int, int);
15226    ctor public TelephonyHistogram(android.telephony.TelephonyHistogram);
15227    ctor public TelephonyHistogram(android.os.Parcel);
15228    method public void addTimeTaken(int);
15229    method public int describeContents();
15230    method public int getAverageTime();
15231    method public int getBucketCount();
15232    method public int[] getBucketCounters();
15233    method public int[] getBucketEndPoints();
15234    method public int getCategory();
15235    method public int getId();
15236    method public int getMaxTime();
15237    method public int getMinTime();
15238    method public int getSampleCount();
15239    method public void writeToParcel(android.os.Parcel, int);
15240    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.TelephonyHistogram> CREATOR;
15241    field public static final int TELEPHONY_CATEGORY_RIL = 1; // 0x1
15242  }
15243
15244  public class TelephonyManager {
15245    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);
15246    method @Deprecated @RequiresPermission(android.Manifest.permission.CALL_PHONE) public void call(String, String);
15247    method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public android.telephony.PinResult changeIccLockPin(@NonNull String, @NonNull String);
15248    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int checkCarrierPrivilegesForPackage(String);
15249    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int checkCarrierPrivilegesForPackageAnyPhone(String);
15250    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void clearRadioPowerOffForReason(int);
15251    method public void dial(String);
15252    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean disableDataConnectivity();
15253    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean enableDataConnectivity();
15254    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean enableModemForSlot(int, boolean);
15255    method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void enableVideoCalling(boolean);
15256    method @Nullable @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public String getAidForAppType(int);
15257    method @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public java.util.List<android.service.carrier.CarrierIdentifier> getAllowedCarriers(int);
15258    method @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public long getAllowedNetworkTypes();
15259    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public long getAllowedNetworkTypesBitmask();
15260    method @Nullable @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS) public android.content.ComponentName getAndUpdateDefaultRespondViaMessageApplication();
15261    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void getCallForwarding(int, @NonNull java.util.concurrent.Executor, @NonNull android.telephony.TelephonyManager.CallForwardingInfoCallback);
15262    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>);
15263    method @Nullable @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public android.telephony.ImsiEncryptionInfo getCarrierInfoForImsiEncryption(int);
15264    method public java.util.List<java.lang.String> getCarrierPackageNamesForIntent(android.content.Intent);
15265    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public java.util.List<java.lang.String> getCarrierPackageNamesForIntentAndPhone(android.content.Intent, int);
15266    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getCarrierPrivilegeStatus(int);
15267    method @NonNull @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public java.util.List<java.lang.String> getCarrierPrivilegedPackagesForAllActiveSubscriptions();
15268    method @Nullable @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public android.telephony.CarrierRestrictionRules getCarrierRestrictionRules();
15269    method @Nullable @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public String getCarrierServicePackageName();
15270    method @Nullable @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public String getCarrierServicePackageNameForLogicalSlot(int);
15271    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getCdmaEnhancedRoamingIndicatorDisplayNumber();
15272    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public String getCdmaMdn();
15273    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public String getCdmaMdn(int);
15274    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public String getCdmaMin();
15275    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public String getCdmaMin(int);
15276    method public String getCdmaPrlVersion();
15277    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getCdmaRoamingMode();
15278    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getCdmaSubscriptionMode();
15279    method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_CELL_BROADCASTS) public java.util.List<android.telephony.CellBroadcastIdRange> getCellBroadcastIdRanges();
15280    method public int getCurrentPhoneType();
15281    method public int getCurrentPhoneType(int);
15282    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getDataActivationState();
15283    method @Deprecated public boolean getDataEnabled();
15284    method @Deprecated public boolean getDataEnabled(int);
15285    method @Nullable @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS) public android.content.ComponentName getDefaultRespondViaMessageApplication();
15286    method @Nullable @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public String getDeviceSoftwareVersion(int);
15287    method @Nullable @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public String getEmergencyAssistancePackageName();
15288    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean getEmergencyCallbackMode();
15289    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getEmergencyNumberDbVersion();
15290    method @Nullable @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public String getIsimDomain();
15291    method @Nullable @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public String getIsimIst();
15292    method @Deprecated @NonNull @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public java.util.Map<java.lang.Integer,java.lang.Integer> getLogicalToPhysicalSlotMapping();
15293    method public int getMaxNumberOfSimultaneouslyActiveSims();
15294    method public static long getMaxNumberVerificationTimeoutMillis();
15295    method @NonNull @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public String[] getMergedImsisFromGroup();
15296    method @NonNull @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public android.telephony.PhoneCapability getPhoneCapability();
15297    method @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public long getPreferredNetworkTypeBitmask();
15298    method @NonNull @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public java.util.Set<java.lang.Integer> getRadioPowerOffReasons();
15299    method @RequiresPermission(anyOf={android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE, android.Manifest.permission.READ_PHONE_STATE}) public int getRadioPowerState();
15300    method public int getSimApplicationState();
15301    method @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getSimApplicationState(int);
15302    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getSimApplicationState(int, int);
15303    method public int getSimCardState();
15304    method @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getSimCardState(int);
15305    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getSimCardState(int, int);
15306    method @Nullable @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public java.util.Locale getSimLocale();
15307    method @NonNull @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public java.util.Collection<android.telephony.UiccSlotMapping> getSimSlotMapping();
15308    method @NonNull @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public java.util.List<android.telephony.RadioAccessSpecifier> getSystemSelectionChannels();
15309    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public java.util.List<android.telephony.TelephonyHistogram> getTelephonyHistograms();
15310    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public android.telephony.UiccSlotInfo[] getUiccSlotsInfo();
15311    method @Nullable public android.os.Bundle getVisualVoicemailSettings();
15312    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getVoiceActivationState();
15313    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean handlePinMmi(String);
15314    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean handlePinMmiForSubscriber(int, String);
15315    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void iccCloseLogicalChannelByPort(int, int, int);
15316    method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean iccCloseLogicalChannelBySlot(int, int);
15317    method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public android.telephony.IccOpenLogicalChannelResponse iccOpenLogicalChannelByPort(int, int, @Nullable String, int);
15318    method @Deprecated @Nullable @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public android.telephony.IccOpenLogicalChannelResponse iccOpenLogicalChannelBySlot(int, @Nullable String, int);
15319    method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public String iccTransmitApduBasicChannelByPort(int, int, int, int, int, int, int, @Nullable String);
15320    method @Deprecated @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public String iccTransmitApduBasicChannelBySlot(int, int, int, int, int, int, @Nullable String);
15321    method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public String iccTransmitApduLogicalChannelByPort(int, int, int, int, int, int, int, int, @Nullable String);
15322    method @Deprecated @Nullable @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public String iccTransmitApduLogicalChannelBySlot(int, int, int, int, int, int, int, @Nullable String);
15323    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isAnyRadioPoweredOn();
15324    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isApnMetered(int);
15325    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isApplicationOnUicc(int);
15326    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isCellularIdentifierDisclosureNotificationsEnabled();
15327    method public boolean isDataConnectivityPossible();
15328    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isDataEnabledForApn(int);
15329    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isDomainSelectionSupported();
15330    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isEmergencyAssistanceEnabled();
15331    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) @WorkerThread public boolean isIccLockEnabled();
15332    method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE, android.Manifest.permission.READ_PHONE_STATE}) public boolean isIdle();
15333    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isInEmergencySmsMode();
15334    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isLteCdmaEvdoGsmWcdmaEnabled();
15335    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isMobileDataPolicyEnabled(int);
15336    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isNrDualConnectivityEnabled();
15337    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isNullCipherNotificationsEnabled();
15338    method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE, android.Manifest.permission.READ_PHONE_STATE}) public boolean isOffhook();
15339    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isOpportunisticNetworkEnabled();
15340    method @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isPotentialEmergencyNumber(@NonNull String);
15341    method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE, android.Manifest.permission.READ_PHONE_STATE}) public boolean isRadioOn();
15342    method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE, android.Manifest.permission.READ_PHONE_STATE}) public boolean isRinging();
15343    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean isTetheringApnRequired();
15344    method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE, android.Manifest.permission.READ_PHONE_STATE}) public boolean isVideoCallingEnabled();
15345    method @Deprecated @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public boolean isVisualVoicemailEnabled(android.telecom.PhoneAccountHandle);
15346    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean matchesCurrentSimOperator(@NonNull String, int, @Nullable String);
15347    method public boolean needsOtaServiceProvisioning();
15348    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void notifyOtaEmergencyNumberDbInstalled();
15349    method @RequiresPermission(android.Manifest.permission.REBOOT) public int prepareForUnattendedReboot();
15350    method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean rebootRadio();
15351    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void registerCarrierPrivilegesCallback(int, @NonNull java.util.concurrent.Executor, @NonNull android.telephony.TelephonyManager.CarrierPrivilegesCallback);
15352    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void reportDefaultNetworkStatus(boolean);
15353    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);
15354    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>);
15355    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);
15356    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void requestRadioPowerOffForReason(int);
15357    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void resetAllCarrierActions();
15358    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void resetCarrierKeysForImsiEncryption();
15359    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) @WorkerThread public void resetIms(int);
15360    method @RequiresPermission(android.Manifest.permission.READ_ACTIVE_EMERGENCY_SESSION) public void resetOtaEmergencyNumberDbFilePath();
15361    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean resetRadioConfig();
15362    method @RequiresPermission(android.Manifest.permission.CONNECTIVITY_INTERNAL) public void resetSettings();
15363    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public int sendThermalMitigationRequest(@NonNull android.telephony.ThermalMitigationRequest);
15364    method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public int setAllowedCarriers(int, java.util.List<android.service.carrier.CarrierIdentifier>);
15365    method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean setAllowedNetworkTypes(long);
15366    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>);
15367    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>);
15368    method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setCarrierDataEnabled(boolean);
15369    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public int setCarrierRestrictionRules(@NonNull android.telephony.CarrierRestrictionRules);
15370    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setCdmaRoamingMode(int);
15371    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setCdmaSubscriptionMode(int);
15372    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>);
15373    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setDataActivationState(int);
15374    method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setDataEnabled(int, boolean);
15375    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setDataRoamingEnabled(boolean);
15376    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setEnableCellularIdentifierDisclosureNotifications(boolean);
15377    method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public android.telephony.PinResult setIccLockEnabled(boolean, @NonNull String);
15378    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setMobileDataPolicyEnabled(int, boolean);
15379    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setMultiSimCarrierRestriction(boolean);
15380    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public int setNrDualConnectivityState(int);
15381    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setNullCipherNotificationsEnabled(boolean);
15382    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean setOpportunisticNetworkState(boolean);
15383    method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean setPreferredNetworkTypeBitmask(long);
15384    method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean setRadio(boolean);
15385    method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setRadioEnabled(boolean);
15386    method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean setRadioPower(boolean);
15387    method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setSimPowerState(int);
15388    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>);
15389    method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setSimPowerStateForSlot(int, int);
15390    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>);
15391    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setSimSlotMapping(@NonNull java.util.Collection<android.telephony.UiccSlotMapping>);
15392    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>);
15393    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setSystemSelectionChannels(@NonNull java.util.List<android.telephony.RadioAccessSpecifier>);
15394    method @Deprecated public void setVisualVoicemailEnabled(android.telecom.PhoneAccountHandle, boolean);
15395    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setVoiceActivationState(int);
15396    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void shutdownAllRadios();
15397    method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public android.telephony.PinResult supplyIccLockPin(@NonNull String);
15398    method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public android.telephony.PinResult supplyIccLockPuk(@NonNull String, @NonNull String);
15399    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean supplyPin(String);
15400    method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public int[] supplyPinReportResult(String);
15401    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean supplyPuk(String, String);
15402    method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public int[] supplyPukReportResult(String, String);
15403    method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean switchSlots(int[]);
15404    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void toggleRadioOnOff();
15405    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void unregisterCarrierPrivilegesCallback(@NonNull android.telephony.TelephonyManager.CarrierPrivilegesCallback);
15406    method @RequiresPermission(android.Manifest.permission.READ_ACTIVE_EMERGENCY_SESSION) public void updateOtaEmergencyNumberDbFilePath(@NonNull android.os.ParcelFileDescriptor);
15407    method public void updateServiceLocation();
15408    field @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public static final String ACTION_ANOMALY_REPORTED = "android.telephony.action.ANOMALY_REPORTED";
15409    field public static final String ACTION_DEFAULT_DATA_SUBSCRIPTION_CHANGED = "android.intent.action.ACTION_DEFAULT_DATA_SUBSCRIPTION_CHANGED";
15410    field public static final String ACTION_DEFAULT_VOICE_SUBSCRIPTION_CHANGED = "android.intent.action.ACTION_DEFAULT_VOICE_SUBSCRIPTION_CHANGED";
15411    field public static final String ACTION_EMERGENCY_ASSISTANCE = "android.telephony.action.EMERGENCY_ASSISTANCE";
15412    field public static final String ACTION_EMERGENCY_CALLBACK_MODE_CHANGED = "android.intent.action.EMERGENCY_CALLBACK_MODE_CHANGED";
15413    field public static final String ACTION_EMERGENCY_CALL_STATE_CHANGED = "android.intent.action.EMERGENCY_CALL_STATE_CHANGED";
15414    field public static final String ACTION_REQUEST_OMADM_CONFIGURATION_UPDATE = "com.android.omadm.service.CONFIGURATION_UPDATE";
15415    field public static final String ACTION_SHOW_NOTICE_ECM_BLOCK_OTHERS = "android.telephony.action.SHOW_NOTICE_ECM_BLOCK_OTHERS";
15416    field public static final String ACTION_SIM_APPLICATION_STATE_CHANGED = "android.telephony.action.SIM_APPLICATION_STATE_CHANGED";
15417    field public static final String ACTION_SIM_CARD_STATE_CHANGED = "android.telephony.action.SIM_CARD_STATE_CHANGED";
15418    field public static final String ACTION_SIM_SLOT_STATUS_CHANGED = "android.telephony.action.SIM_SLOT_STATUS_CHANGED";
15419    field public static final int ALLOWED_NETWORK_TYPES_REASON_ENABLE_2G = 3; // 0x3
15420    field public static final int ALLOWED_NETWORK_TYPES_REASON_POWER = 1; // 0x1
15421    field public static final int CALL_WAITING_STATUS_DISABLED = 2; // 0x2
15422    field public static final int CALL_WAITING_STATUS_ENABLED = 1; // 0x1
15423    field public static final int CALL_WAITING_STATUS_FDN_CHECK_FAILURE = 5; // 0x5
15424    field public static final int CALL_WAITING_STATUS_NOT_SUPPORTED = 4; // 0x4
15425    field public static final int CALL_WAITING_STATUS_UNKNOWN_ERROR = 3; // 0x3
15426    field public static final String CAPABILITY_NR_DUAL_CONNECTIVITY_CONFIGURATION_AVAILABLE = "CAPABILITY_NR_DUAL_CONNECTIVITY_CONFIGURATION_AVAILABLE";
15427    field public static final String CAPABILITY_SECONDARY_LINK_BANDWIDTH_VISIBLE = "CAPABILITY_SECONDARY_LINK_BANDWIDTH_VISIBLE";
15428    field public static final String CAPABILITY_THERMAL_MITIGATION_DATA_THROTTLING = "CAPABILITY_THERMAL_MITIGATION_DATA_THROTTLING";
15429    field public static final String CAPABILITY_USES_ALLOWED_NETWORK_TYPES_BITMASK = "CAPABILITY_USES_ALLOWED_NETWORK_TYPES_BITMASK";
15430    field public static final int CARRIER_PRIVILEGE_STATUS_ERROR_LOADING_RULES = -2; // 0xfffffffe
15431    field public static final int CARRIER_PRIVILEGE_STATUS_HAS_ACCESS = 1; // 0x1
15432    field public static final int CARRIER_PRIVILEGE_STATUS_NO_ACCESS = 0; // 0x0
15433    field public static final int CARRIER_PRIVILEGE_STATUS_RULES_NOT_LOADED = -1; // 0xffffffff
15434    field public static final int CDMA_SUBSCRIPTION_NV = 1; // 0x1
15435    field public static final int CDMA_SUBSCRIPTION_RUIM_SIM = 0; // 0x0
15436    field public static final int CDMA_SUBSCRIPTION_UNKNOWN = -1; // 0xffffffff
15437    field public static final int CELL_BROADCAST_RESULT_FAIL_ACTIVATION = 3; // 0x3
15438    field public static final int CELL_BROADCAST_RESULT_FAIL_CONFIG = 2; // 0x2
15439    field public static final int CELL_BROADCAST_RESULT_SUCCESS = 0; // 0x0
15440    field public static final int CELL_BROADCAST_RESULT_UNKNOWN = -1; // 0xffffffff
15441    field public static final int CELL_BROADCAST_RESULT_UNSUPPORTED = 1; // 0x1
15442    field public static final int ENABLE_NR_DUAL_CONNECTIVITY_INVALID_STATE = 4; // 0x4
15443    field public static final int ENABLE_NR_DUAL_CONNECTIVITY_NOT_SUPPORTED = 1; // 0x1
15444    field public static final int ENABLE_NR_DUAL_CONNECTIVITY_RADIO_ERROR = 3; // 0x3
15445    field public static final int ENABLE_NR_DUAL_CONNECTIVITY_RADIO_NOT_AVAILABLE = 2; // 0x2
15446    field public static final int ENABLE_NR_DUAL_CONNECTIVITY_SUCCESS = 0; // 0x0
15447    field public static final String EXTRA_ANOMALY_DESCRIPTION = "android.telephony.extra.ANOMALY_DESCRIPTION";
15448    field public static final String EXTRA_ANOMALY_ID = "android.telephony.extra.ANOMALY_ID";
15449    field public static final String EXTRA_PHONE_IN_ECM_STATE = "android.telephony.extra.PHONE_IN_ECM_STATE";
15450    field public static final String EXTRA_PHONE_IN_EMERGENCY_CALL = "android.telephony.extra.PHONE_IN_EMERGENCY_CALL";
15451    field public static final String EXTRA_SIM_STATE = "android.telephony.extra.SIM_STATE";
15452    field public static final String EXTRA_VISUAL_VOICEMAIL_ENABLED_BY_USER_BOOL = "android.telephony.extra.VISUAL_VOICEMAIL_ENABLED_BY_USER_BOOL";
15453    field public static final String EXTRA_VOICEMAIL_SCRAMBLED_PIN_STRING = "android.telephony.extra.VOICEMAIL_SCRAMBLED_PIN_STRING";
15454    field public static final int GBA_FAILURE_REASON_FEATURE_NOT_READY = 2; // 0x2
15455    field public static final int GBA_FAILURE_REASON_FEATURE_NOT_SUPPORTED = 1; // 0x1
15456    field public static final int GBA_FAILURE_REASON_INCORRECT_NAF_ID = 4; // 0x4
15457    field public static final int GBA_FAILURE_REASON_NETWORK_FAILURE = 3; // 0x3
15458    field public static final int GBA_FAILURE_REASON_SECURITY_PROTOCOL_NOT_SUPPORTED = 5; // 0x5
15459    field public static final int GBA_FAILURE_REASON_UNKNOWN = 0; // 0x0
15460    field public static final int INVALID_EMERGENCY_NUMBER_DB_VERSION = -1; // 0xffffffff
15461    field public static final int KEY_TYPE_EPDG = 1; // 0x1
15462    field public static final int KEY_TYPE_WLAN = 2; // 0x2
15463    field public static final int MOBILE_DATA_POLICY_AUTO_DATA_SWITCH = 3; // 0x3
15464    field public static final int MOBILE_DATA_POLICY_DATA_ON_NON_DEFAULT_DURING_VOICE_CALL = 1; // 0x1
15465    field public static final int MOBILE_DATA_POLICY_MMS_ALWAYS_ALLOWED = 2; // 0x2
15466    field public static final int NR_DUAL_CONNECTIVITY_DISABLE = 2; // 0x2
15467    field public static final int NR_DUAL_CONNECTIVITY_DISABLE_IMMEDIATE = 3; // 0x3
15468    field public static final int NR_DUAL_CONNECTIVITY_ENABLE = 1; // 0x1
15469    field public static final int PREPARE_UNATTENDED_REBOOT_ERROR = 2; // 0x2
15470    field public static final int PREPARE_UNATTENDED_REBOOT_PIN_REQUIRED = 1; // 0x1
15471    field public static final int PREPARE_UNATTENDED_REBOOT_SUCCESS = 0; // 0x0
15472    field public static final int RADIO_POWER_OFF = 0; // 0x0
15473    field public static final int RADIO_POWER_ON = 1; // 0x1
15474    field public static final int RADIO_POWER_REASON_CARRIER = 2; // 0x2
15475    field public static final int RADIO_POWER_REASON_NEARBY_DEVICE = 3; // 0x3
15476    field public static final int RADIO_POWER_REASON_THERMAL = 1; // 0x1
15477    field public static final int RADIO_POWER_REASON_USER = 0; // 0x0
15478    field public static final int RADIO_POWER_UNAVAILABLE = 2; // 0x2
15479    field public static final int SET_CARRIER_RESTRICTION_ERROR = 2; // 0x2
15480    field public static final int SET_CARRIER_RESTRICTION_NOT_SUPPORTED = 1; // 0x1
15481    field public static final int SET_CARRIER_RESTRICTION_SUCCESS = 0; // 0x0
15482    field public static final int SET_SIM_POWER_STATE_ALREADY_IN_STATE = 1; // 0x1
15483    field public static final int SET_SIM_POWER_STATE_MODEM_ERROR = 2; // 0x2
15484    field public static final int SET_SIM_POWER_STATE_NOT_SUPPORTED = 4; // 0x4
15485    field public static final int SET_SIM_POWER_STATE_SIM_ERROR = 3; // 0x3
15486    field public static final int SET_SIM_POWER_STATE_SUCCESS = 0; // 0x0
15487    field public static final int SIM_ACTIVATION_STATE_ACTIVATED = 2; // 0x2
15488    field public static final int SIM_ACTIVATION_STATE_ACTIVATING = 1; // 0x1
15489    field public static final int SIM_ACTIVATION_STATE_DEACTIVATED = 3; // 0x3
15490    field public static final int SIM_ACTIVATION_STATE_RESTRICTED = 4; // 0x4
15491    field public static final int SIM_ACTIVATION_STATE_UNKNOWN = 0; // 0x0
15492    field public static final int SIM_STATE_LOADED = 10; // 0xa
15493    field public static final int SIM_STATE_PRESENT = 11; // 0xb
15494    field public static final int SRVCC_STATE_HANDOVER_CANCELED = 3; // 0x3
15495    field public static final int SRVCC_STATE_HANDOVER_COMPLETED = 1; // 0x1
15496    field public static final int SRVCC_STATE_HANDOVER_FAILED = 2; // 0x2
15497    field public static final int SRVCC_STATE_HANDOVER_NONE = -1; // 0xffffffff
15498    field public static final int SRVCC_STATE_HANDOVER_STARTED = 0; // 0x0
15499    field public static final int THERMAL_MITIGATION_RESULT_INVALID_STATE = 3; // 0x3
15500    field public static final int THERMAL_MITIGATION_RESULT_MODEM_ERROR = 1; // 0x1
15501    field public static final int THERMAL_MITIGATION_RESULT_MODEM_NOT_AVAILABLE = 2; // 0x2
15502    field public static final int THERMAL_MITIGATION_RESULT_SUCCESS = 0; // 0x0
15503    field public static final int THERMAL_MITIGATION_RESULT_UNKNOWN_ERROR = 4; // 0x4
15504  }
15505
15506  public static class TelephonyManager.BootstrapAuthenticationCallback {
15507    ctor public TelephonyManager.BootstrapAuthenticationCallback();
15508    method public void onAuthenticationFailure(int);
15509    method public void onKeysAvailable(@NonNull byte[], @NonNull String);
15510  }
15511
15512  public static interface TelephonyManager.CallForwardingInfoCallback {
15513    method public void onCallForwardingInfoAvailable(@NonNull android.telephony.CallForwardingInfo);
15514    method public void onError(int);
15515    field public static final int RESULT_ERROR_FDN_CHECK_FAILURE = 2; // 0x2
15516    field public static final int RESULT_ERROR_NOT_SUPPORTED = 3; // 0x3
15517    field public static final int RESULT_ERROR_UNKNOWN = 1; // 0x1
15518    field public static final int RESULT_SUCCESS = 0; // 0x0
15519  }
15520
15521  public static interface TelephonyManager.CarrierPrivilegesCallback {
15522    method public void onCarrierPrivilegesChanged(@NonNull java.util.Set<java.lang.String>, @NonNull java.util.Set<java.lang.Integer>);
15523    method public default void onCarrierServiceChanged(@Nullable String, int);
15524  }
15525
15526  public static class TelephonyManager.ModemActivityInfoException extends java.lang.Exception {
15527    ctor public TelephonyManager.ModemActivityInfoException(int);
15528    method public int getErrorCode();
15529    field public static final int ERROR_INVALID_INFO_RECEIVED = 2; // 0x2
15530    field public static final int ERROR_MODEM_RESPONSE_ERROR = 3; // 0x3
15531    field public static final int ERROR_PHONE_NOT_AVAILABLE = 1; // 0x1
15532    field public static final int ERROR_UNKNOWN = 0; // 0x0
15533  }
15534
15535  public final class ThermalMitigationRequest implements android.os.Parcelable {
15536    method public int describeContents();
15537    method @Nullable public android.telephony.DataThrottlingRequest getDataThrottlingRequest();
15538    method public int getThermalMitigationAction();
15539    method public void writeToParcel(@NonNull android.os.Parcel, int);
15540    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ThermalMitigationRequest> CREATOR;
15541    field public static final int THERMAL_MITIGATION_ACTION_DATA_THROTTLING = 0; // 0x0
15542    field public static final int THERMAL_MITIGATION_ACTION_RADIO_OFF = 2; // 0x2
15543    field public static final int THERMAL_MITIGATION_ACTION_VOICE_ONLY = 1; // 0x1
15544  }
15545
15546  public static final class ThermalMitigationRequest.Builder {
15547    ctor public ThermalMitigationRequest.Builder();
15548    method @NonNull public android.telephony.ThermalMitigationRequest build();
15549    method @NonNull public android.telephony.ThermalMitigationRequest.Builder setDataThrottlingRequest(@NonNull android.telephony.DataThrottlingRequest);
15550    method @NonNull public android.telephony.ThermalMitigationRequest.Builder setThermalMitigationAction(int);
15551  }
15552
15553  public interface TransportSelectorCallback {
15554    method public void onCreated(@NonNull android.telephony.DomainSelector);
15555    method public void onSelectionTerminated(int);
15556    method public void onWlanSelected(boolean);
15557    method public void onWwanSelected(@NonNull java.util.function.Consumer<android.telephony.WwanSelectorCallback>);
15558  }
15559
15560  public final class UiccAccessRule implements android.os.Parcelable {
15561    ctor public UiccAccessRule(byte[], @Nullable String, long);
15562    method public int describeContents();
15563    method public int getCarrierPrivilegeStatus(android.content.pm.PackageInfo);
15564    method public int getCarrierPrivilegeStatus(android.content.pm.Signature, String);
15565    method public String getCertificateHexString();
15566    method @Nullable public String getPackageName();
15567    method public void writeToParcel(android.os.Parcel, int);
15568    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.UiccAccessRule> CREATOR;
15569  }
15570
15571  public class UiccSlotInfo implements android.os.Parcelable {
15572    ctor @Deprecated public UiccSlotInfo(boolean, boolean, String, int, int, boolean);
15573    method public int describeContents();
15574    method public String getCardId();
15575    method public int getCardStateInfo();
15576    method @Deprecated public boolean getIsActive();
15577    method public boolean getIsEuicc();
15578    method public boolean getIsExtendedApduSupported();
15579    method @Deprecated public int getLogicalSlotIdx();
15580    method @NonNull public java.util.Collection<android.telephony.UiccPortInfo> getPorts();
15581    method public boolean isRemovable();
15582    method public void writeToParcel(android.os.Parcel, int);
15583    field public static final int CARD_STATE_INFO_ABSENT = 1; // 0x1
15584    field public static final int CARD_STATE_INFO_ERROR = 3; // 0x3
15585    field public static final int CARD_STATE_INFO_PRESENT = 2; // 0x2
15586    field public static final int CARD_STATE_INFO_RESTRICTED = 4; // 0x4
15587    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.UiccSlotInfo> CREATOR;
15588  }
15589
15590  public final class UiccSlotMapping implements android.os.Parcelable {
15591    ctor public UiccSlotMapping(int, int, int);
15592    method public int describeContents();
15593    method @IntRange(from=0) public int getLogicalSlotIndex();
15594    method @IntRange(from=0) public int getPhysicalSlotIndex();
15595    method @IntRange(from=0) public int getPortIndex();
15596    method public void writeToParcel(@Nullable android.os.Parcel, int);
15597    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.UiccSlotMapping> CREATOR;
15598  }
15599
15600  public abstract class VisualVoicemailService extends android.app.Service {
15601    method public static final void sendVisualVoicemailSms(android.content.Context, android.telecom.PhoneAccountHandle, String, short, String, android.app.PendingIntent);
15602    method public static final void setSmsFilterSettings(android.content.Context, android.telecom.PhoneAccountHandle, android.telephony.VisualVoicemailSmsFilterSettings);
15603  }
15604
15605  public abstract class VopsSupportInfo implements android.os.Parcelable {
15606    method public int describeContents();
15607    method public abstract boolean equals(Object);
15608    method public abstract int hashCode();
15609    method public abstract boolean isEmergencyServiceFallbackSupported();
15610    method public abstract boolean isEmergencyServiceSupported();
15611    method public abstract boolean isVopsSupported();
15612    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.VopsSupportInfo> CREATOR;
15613  }
15614
15615  public interface WwanSelectorCallback {
15616    method public void onDomainSelected(int, boolean);
15617    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>);
15618  }
15619
15620}
15621
15622package android.telephony.cdma {
15623
15624  public final class CdmaSmsCbProgramData implements android.os.Parcelable {
15625    method public int describeContents();
15626    method public int getCategory();
15627    method public int getOperation();
15628    method public void writeToParcel(android.os.Parcel, int);
15629    field public static final int CATEGORY_CMAS_CHILD_ABDUCTION_EMERGENCY = 4099; // 0x1003
15630    field public static final int CATEGORY_CMAS_EXTREME_THREAT = 4097; // 0x1001
15631    field public static final int CATEGORY_CMAS_LAST_RESERVED_VALUE = 4351; // 0x10ff
15632    field public static final int CATEGORY_CMAS_PRESIDENTIAL_LEVEL_ALERT = 4096; // 0x1000
15633    field public static final int CATEGORY_CMAS_SEVERE_THREAT = 4098; // 0x1002
15634    field public static final int CATEGORY_CMAS_TEST_MESSAGE = 4100; // 0x1004
15635    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.cdma.CdmaSmsCbProgramData> CREATOR;
15636    field public static final int OPERATION_ADD_CATEGORY = 1; // 0x1
15637    field public static final int OPERATION_CLEAR_CATEGORIES = 2; // 0x2
15638    field public static final int OPERATION_DELETE_CATEGORY = 0; // 0x0
15639  }
15640
15641}
15642
15643package android.telephony.data {
15644
15645  public class ApnSetting implements android.os.Parcelable {
15646    method public static int getApnTypeInt(@NonNull String);
15647    method @NonNull public static String getApnTypeString(int);
15648    field public static final String TYPE_ALL_STRING = "*";
15649    field public static final String TYPE_BIP_STRING = "bip";
15650    field public static final String TYPE_CBS_STRING = "cbs";
15651    field public static final String TYPE_DEFAULT_STRING = "default";
15652    field public static final String TYPE_DUN_STRING = "dun";
15653    field public static final String TYPE_EMERGENCY_STRING = "emergency";
15654    field public static final String TYPE_ENTERPRISE_STRING = "enterprise";
15655    field public static final String TYPE_FOTA_STRING = "fota";
15656    field public static final String TYPE_HIPRI_STRING = "hipri";
15657    field public static final String TYPE_IA_STRING = "ia";
15658    field public static final String TYPE_IMS_STRING = "ims";
15659    field public static final String TYPE_MCX_STRING = "mcx";
15660    field public static final String TYPE_MMS_STRING = "mms";
15661    field public static final String TYPE_RCS_STRING = "rcs";
15662    field public static final String TYPE_SUPL_STRING = "supl";
15663    field public static final String TYPE_VSIM_STRING = "vsim";
15664    field public static final String TYPE_XCAP_STRING = "xcap";
15665  }
15666
15667  public final class DataCallResponse implements android.os.Parcelable {
15668    method public int describeContents();
15669    method @NonNull public java.util.List<android.net.LinkAddress> getAddresses();
15670    method public int getCause();
15671    method @NonNull public java.util.List<java.net.InetAddress> getDnsAddresses();
15672    method @NonNull public java.util.List<java.net.InetAddress> getGatewayAddresses();
15673    method public int getHandoverFailureMode();
15674    method public int getId();
15675    method @NonNull public String getInterfaceName();
15676    method public int getLinkStatus();
15677    method @Deprecated public int getMtu();
15678    method public int getMtuV4();
15679    method public int getMtuV6();
15680    method public int getNetworkValidationStatus();
15681    method @NonNull public java.util.List<java.net.InetAddress> getPcscfAddresses();
15682    method public int getPduSessionId();
15683    method public int getProtocolType();
15684    method public long getRetryDurationMillis();
15685    method @Nullable public android.telephony.data.NetworkSliceInfo getSliceInfo();
15686    method @Deprecated public int getSuggestedRetryTime();
15687    method @NonNull public java.util.List<android.telephony.data.TrafficDescriptor> getTrafficDescriptors();
15688    method public void writeToParcel(android.os.Parcel, int);
15689    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.data.DataCallResponse> CREATOR;
15690    field public static final int HANDOVER_FAILURE_MODE_DO_FALLBACK = 1; // 0x1
15691    field public static final int HANDOVER_FAILURE_MODE_LEGACY = 0; // 0x0
15692    field public static final int HANDOVER_FAILURE_MODE_NO_FALLBACK_RETRY_HANDOVER = 2; // 0x2
15693    field public static final int HANDOVER_FAILURE_MODE_NO_FALLBACK_RETRY_SETUP_NORMAL = 3; // 0x3
15694    field public static final int HANDOVER_FAILURE_MODE_UNKNOWN = -1; // 0xffffffff
15695    field public static final int LINK_STATUS_ACTIVE = 2; // 0x2
15696    field public static final int LINK_STATUS_DORMANT = 1; // 0x1
15697    field public static final int LINK_STATUS_INACTIVE = 0; // 0x0
15698    field public static final int LINK_STATUS_UNKNOWN = -1; // 0xffffffff
15699    field public static final int PDU_SESSION_ID_NOT_SET = 0; // 0x0
15700    field public static final int RETRY_DURATION_UNDEFINED = -1; // 0xffffffff
15701  }
15702
15703  public static final class DataCallResponse.Builder {
15704    ctor public DataCallResponse.Builder();
15705    method @NonNull public android.telephony.data.DataCallResponse build();
15706    method @NonNull public android.telephony.data.DataCallResponse.Builder setAddresses(@NonNull java.util.List<android.net.LinkAddress>);
15707    method @NonNull public android.telephony.data.DataCallResponse.Builder setCause(int);
15708    method @NonNull public android.telephony.data.DataCallResponse.Builder setDnsAddresses(@NonNull java.util.List<java.net.InetAddress>);
15709    method @NonNull public android.telephony.data.DataCallResponse.Builder setGatewayAddresses(@NonNull java.util.List<java.net.InetAddress>);
15710    method @NonNull public android.telephony.data.DataCallResponse.Builder setHandoverFailureMode(int);
15711    method @NonNull public android.telephony.data.DataCallResponse.Builder setId(int);
15712    method @NonNull public android.telephony.data.DataCallResponse.Builder setInterfaceName(@Nullable String);
15713    method @NonNull public android.telephony.data.DataCallResponse.Builder setLinkStatus(int);
15714    method @Deprecated @NonNull public android.telephony.data.DataCallResponse.Builder setMtu(int);
15715    method @NonNull public android.telephony.data.DataCallResponse.Builder setMtuV4(int);
15716    method @NonNull public android.telephony.data.DataCallResponse.Builder setMtuV6(int);
15717    method @NonNull public android.telephony.data.DataCallResponse.Builder setNetworkValidationStatus(int);
15718    method @NonNull public android.telephony.data.DataCallResponse.Builder setPcscfAddresses(@NonNull java.util.List<java.net.InetAddress>);
15719    method @NonNull public android.telephony.data.DataCallResponse.Builder setPduSessionId(@IntRange(from=android.telephony.data.DataCallResponse.PDU_SESSION_ID_NOT_SET, to=15) int);
15720    method @NonNull public android.telephony.data.DataCallResponse.Builder setProtocolType(int);
15721    method @NonNull public android.telephony.data.DataCallResponse.Builder setRetryDurationMillis(long);
15722    method @NonNull public android.telephony.data.DataCallResponse.Builder setSliceInfo(@Nullable android.telephony.data.NetworkSliceInfo);
15723    method @Deprecated @NonNull public android.telephony.data.DataCallResponse.Builder setSuggestedRetryTime(int);
15724    method @NonNull public android.telephony.data.DataCallResponse.Builder setTrafficDescriptors(@NonNull java.util.List<android.telephony.data.TrafficDescriptor>);
15725  }
15726
15727  public final class DataProfile implements android.os.Parcelable {
15728    method public int describeContents();
15729    method @Deprecated @NonNull public String getApn();
15730    method @Nullable public android.telephony.data.ApnSetting getApnSetting();
15731    method @Deprecated public int getAuthType();
15732    method @Deprecated public int getBearerBitmask();
15733    method @Deprecated public int getMtu();
15734    method @Deprecated public int getMtuV4();
15735    method @Deprecated public int getMtuV6();
15736    method @Deprecated @Nullable public String getPassword();
15737    method @Deprecated public int getProfileId();
15738    method @Deprecated public int getProtocolType();
15739    method @Deprecated public int getRoamingProtocolType();
15740    method @Deprecated public int getSupportedApnTypesBitmask();
15741    method @Nullable public android.telephony.data.TrafficDescriptor getTrafficDescriptor();
15742    method public int getType();
15743    method @Deprecated @Nullable public String getUserName();
15744    method public boolean isEnabled();
15745    method @Deprecated public boolean isPersistent();
15746    method public boolean isPreferred();
15747    method public void writeToParcel(android.os.Parcel, int);
15748    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.data.DataProfile> CREATOR;
15749    field public static final int TYPE_3GPP = 1; // 0x1
15750    field public static final int TYPE_3GPP2 = 2; // 0x2
15751    field public static final int TYPE_COMMON = 0; // 0x0
15752  }
15753
15754  public static final class DataProfile.Builder {
15755    ctor public DataProfile.Builder();
15756    method @NonNull public android.telephony.data.DataProfile build();
15757    method @NonNull public android.telephony.data.DataProfile.Builder enable(boolean);
15758    method @Deprecated @NonNull public android.telephony.data.DataProfile.Builder setApn(@NonNull String);
15759    method @NonNull public android.telephony.data.DataProfile.Builder setApnSetting(@NonNull android.telephony.data.ApnSetting);
15760    method @Deprecated @NonNull public android.telephony.data.DataProfile.Builder setAuthType(int);
15761    method @Deprecated @NonNull public android.telephony.data.DataProfile.Builder setBearerBitmask(int);
15762    method @Deprecated @NonNull public android.telephony.data.DataProfile.Builder setMtu(int);
15763    method @Deprecated @NonNull public android.telephony.data.DataProfile.Builder setMtuV4(int);
15764    method @Deprecated @NonNull public android.telephony.data.DataProfile.Builder setMtuV6(int);
15765    method @Deprecated @NonNull public android.telephony.data.DataProfile.Builder setPassword(@NonNull String);
15766    method @Deprecated @NonNull public android.telephony.data.DataProfile.Builder setPersistent(boolean);
15767    method @NonNull public android.telephony.data.DataProfile.Builder setPreferred(boolean);
15768    method @Deprecated @NonNull public android.telephony.data.DataProfile.Builder setProfileId(int);
15769    method @Deprecated @NonNull public android.telephony.data.DataProfile.Builder setProtocolType(int);
15770    method @Deprecated @NonNull public android.telephony.data.DataProfile.Builder setRoamingProtocolType(int);
15771    method @Deprecated @NonNull public android.telephony.data.DataProfile.Builder setSupportedApnTypesBitmask(int);
15772    method @NonNull public android.telephony.data.DataProfile.Builder setTrafficDescriptor(@NonNull android.telephony.data.TrafficDescriptor);
15773    method @NonNull public android.telephony.data.DataProfile.Builder setType(int);
15774    method @Deprecated @NonNull public android.telephony.data.DataProfile.Builder setUserName(@NonNull String);
15775  }
15776
15777  public abstract class DataService extends android.app.Service {
15778    ctor public DataService();
15779    method public android.os.IBinder onBind(android.content.Intent);
15780    method @Nullable public abstract android.telephony.data.DataService.DataServiceProvider onCreateDataServiceProvider(int);
15781    field public static final int REQUEST_REASON_HANDOVER = 3; // 0x3
15782    field public static final int REQUEST_REASON_NORMAL = 1; // 0x1
15783    field public static final int REQUEST_REASON_SHUTDOWN = 2; // 0x2
15784    field public static final int REQUEST_REASON_UNKNOWN = 0; // 0x0
15785    field public static final String SERVICE_INTERFACE = "android.telephony.data.DataService";
15786  }
15787
15788  public abstract class DataService.DataServiceProvider implements java.lang.AutoCloseable {
15789    ctor public DataService.DataServiceProvider(int);
15790    method public abstract void close();
15791    method public void deactivateDataCall(int, int, @Nullable android.telephony.data.DataServiceCallback);
15792    method public final int getSlotIndex();
15793    method public final void notifyApnUnthrottled(@NonNull String);
15794    method public final void notifyDataCallListChanged(java.util.List<android.telephony.data.DataCallResponse>);
15795    method public final void notifyDataProfileUnthrottled(@NonNull android.telephony.data.DataProfile);
15796    method public void requestDataCallList(@NonNull android.telephony.data.DataServiceCallback);
15797    method public void requestNetworkValidation(int, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Integer>);
15798    method public void setDataProfile(@NonNull java.util.List<android.telephony.data.DataProfile>, boolean, @NonNull android.telephony.data.DataServiceCallback);
15799    method public void setInitialAttachApn(@NonNull android.telephony.data.DataProfile, boolean, @NonNull android.telephony.data.DataServiceCallback);
15800    method public void setupDataCall(int, @NonNull android.telephony.data.DataProfile, boolean, boolean, int, @Nullable android.net.LinkProperties, @NonNull android.telephony.data.DataServiceCallback);
15801    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);
15802  }
15803
15804  public class DataServiceCallback {
15805    method public void onApnUnthrottled(@NonNull String);
15806    method public void onDataCallListChanged(@NonNull java.util.List<android.telephony.data.DataCallResponse>);
15807    method public void onDataProfileUnthrottled(@NonNull android.telephony.data.DataProfile);
15808    method public void onDeactivateDataCallComplete(int);
15809    method public void onRequestDataCallListComplete(int, @NonNull java.util.List<android.telephony.data.DataCallResponse>);
15810    method public void onSetDataProfileComplete(int);
15811    method public void onSetInitialAttachApnComplete(int);
15812    method public void onSetupDataCallComplete(int, @Nullable android.telephony.data.DataCallResponse);
15813    field public static final int RESULT_ERROR_BUSY = 3; // 0x3
15814    field public static final int RESULT_ERROR_ILLEGAL_STATE = 4; // 0x4
15815    field public static final int RESULT_ERROR_INVALID_ARG = 2; // 0x2
15816    field public static final int RESULT_ERROR_UNSUPPORTED = 1; // 0x1
15817    field public static final int RESULT_SUCCESS = 0; // 0x0
15818  }
15819
15820  public final class EpsBearerQosSessionAttributes implements android.os.Parcelable android.net.QosSessionAttributes {
15821    method public int describeContents();
15822    method public long getGuaranteedDownlinkBitRateKbps();
15823    method public long getGuaranteedUplinkBitRateKbps();
15824    method public long getMaxDownlinkBitRateKbps();
15825    method public long getMaxUplinkBitRateKbps();
15826    method public int getQosIdentifier();
15827    method @NonNull public java.util.List<java.net.InetSocketAddress> getRemoteAddresses();
15828    method public void writeToParcel(@NonNull android.os.Parcel, int);
15829    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.data.EpsBearerQosSessionAttributes> CREATOR;
15830  }
15831
15832  public final class NrQosSessionAttributes implements android.os.Parcelable android.net.QosSessionAttributes {
15833    method public int describeContents();
15834    method @NonNull public java.time.Duration getBitRateWindowDuration();
15835    method public long getGuaranteedDownlinkBitRateKbps();
15836    method public long getGuaranteedUplinkBitRateKbps();
15837    method public long getMaxDownlinkBitRateKbps();
15838    method public long getMaxUplinkBitRateKbps();
15839    method @IntRange(from=1, to=63) public int getQosFlowIdentifier();
15840    method public int getQosIdentifier();
15841    method @NonNull public java.util.List<java.net.InetSocketAddress> getRemoteAddresses();
15842    method public void writeToParcel(@NonNull android.os.Parcel, int);
15843    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.data.NrQosSessionAttributes> CREATOR;
15844  }
15845
15846  public abstract class QualifiedNetworksService extends android.app.Service {
15847    ctor public QualifiedNetworksService();
15848    method public android.os.IBinder onBind(android.content.Intent);
15849    method @NonNull public abstract android.telephony.data.QualifiedNetworksService.NetworkAvailabilityProvider onCreateNetworkAvailabilityProvider(int);
15850    field public static final String QUALIFIED_NETWORKS_SERVICE_INTERFACE = "android.telephony.data.QualifiedNetworksService";
15851  }
15852
15853  public abstract class QualifiedNetworksService.NetworkAvailabilityProvider implements java.lang.AutoCloseable {
15854    ctor public QualifiedNetworksService.NetworkAvailabilityProvider(int);
15855    method public abstract void close();
15856    method public final int getSlotIndex();
15857    method public void reportEmergencyDataNetworkPreferredTransportChanged(int);
15858    method public void reportThrottleStatusChanged(@NonNull java.util.List<android.telephony.data.ThrottleStatus>);
15859    method public void requestNetworkValidation(int, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Integer>);
15860    method public final void updateQualifiedNetworkTypes(int, @NonNull java.util.List<java.lang.Integer>);
15861  }
15862
15863  public final class ThrottleStatus implements android.os.Parcelable {
15864    method public int describeContents();
15865    method public int getApnType();
15866    method public int getRetryType();
15867    method public int getSlotIndex();
15868    method public long getThrottleExpiryTimeMillis();
15869    method public int getThrottleType();
15870    method public int getTransportType();
15871    method public void writeToParcel(@NonNull android.os.Parcel, int);
15872    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.data.ThrottleStatus> CREATOR;
15873    field public static final int RETRY_TYPE_HANDOVER = 3; // 0x3
15874    field public static final int RETRY_TYPE_NEW_CONNECTION = 2; // 0x2
15875    field public static final int RETRY_TYPE_NONE = 1; // 0x1
15876    field public static final int THROTTLE_TYPE_ELAPSED_TIME = 2; // 0x2
15877    field public static final int THROTTLE_TYPE_NONE = 1; // 0x1
15878  }
15879
15880  public static final class ThrottleStatus.Builder {
15881    ctor public ThrottleStatus.Builder();
15882    method @NonNull public android.telephony.data.ThrottleStatus build();
15883    method @NonNull public android.telephony.data.ThrottleStatus.Builder setApnType(int);
15884    method @NonNull public android.telephony.data.ThrottleStatus.Builder setNoThrottle();
15885    method @NonNull public android.telephony.data.ThrottleStatus.Builder setRetryType(int);
15886    method @NonNull public android.telephony.data.ThrottleStatus.Builder setSlotIndex(int);
15887    method @NonNull public android.telephony.data.ThrottleStatus.Builder setThrottleExpiryTimeMillis(long);
15888    method @NonNull public android.telephony.data.ThrottleStatus.Builder setTransportType(int);
15889  }
15890
15891}
15892
15893package android.telephony.euicc {
15894
15895  public final class DownloadableSubscription implements android.os.Parcelable {
15896    method public java.util.List<android.telephony.UiccAccessRule> getAccessRules();
15897    method @Nullable public String getCarrierName();
15898  }
15899
15900  public static final class DownloadableSubscription.Builder {
15901    ctor public DownloadableSubscription.Builder();
15902    method @NonNull public android.telephony.euicc.DownloadableSubscription.Builder setAccessRules(@NonNull java.util.List<android.telephony.UiccAccessRule>);
15903    method @NonNull public android.telephony.euicc.DownloadableSubscription.Builder setCarrierName(@NonNull String);
15904  }
15905
15906  public class EuiccCardManager {
15907    method public void authenticateServer(String, String, byte[], byte[], byte[], byte[], java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<byte[]>);
15908    method public void cancelSession(String, byte[], int, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<byte[]>);
15909    method public void deleteProfile(String, String, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<java.lang.Void>);
15910    method public void disableProfile(String, String, boolean, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<java.lang.Void>);
15911    method public void listNotifications(String, int, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<android.telephony.euicc.EuiccNotification[]>);
15912    method public void loadBoundProfilePackage(String, byte[], java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<byte[]>);
15913    method public void prepareDownload(String, @Nullable byte[], byte[], byte[], byte[], java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<byte[]>);
15914    method public void removeNotificationFromList(String, int, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<java.lang.Void>);
15915    method public void requestAllProfiles(String, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<android.service.euicc.EuiccProfileInfo[]>);
15916    method public void requestDefaultSmdpAddress(String, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<java.lang.String>);
15917    method public void requestEnabledProfileForPort(@NonNull String, int, @NonNull java.util.concurrent.Executor, @NonNull android.telephony.euicc.EuiccCardManager.ResultCallback<android.service.euicc.EuiccProfileInfo>);
15918    method public void requestEuiccChallenge(String, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<byte[]>);
15919    method public void requestEuiccInfo1(String, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<byte[]>);
15920    method public void requestEuiccInfo2(String, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<byte[]>);
15921    method public void requestProfile(String, String, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<android.service.euicc.EuiccProfileInfo>);
15922    method public void requestRulesAuthTable(String, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<android.telephony.euicc.EuiccRulesAuthTable>);
15923    method public void requestSmdsAddress(String, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<java.lang.String>);
15924    method public void resetMemory(String, int, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<java.lang.Void>);
15925    method public void retrieveNotification(String, int, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<android.telephony.euicc.EuiccNotification>);
15926    method public void retrieveNotificationList(String, int, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<android.telephony.euicc.EuiccNotification[]>);
15927    method public void setDefaultSmdpAddress(String, String, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<java.lang.Void>);
15928    method public void setNickname(String, String, String, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<java.lang.Void>);
15929    method @Deprecated public void switchToProfile(String, String, boolean, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<android.service.euicc.EuiccProfileInfo>);
15930    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>);
15931    field public static final int CANCEL_REASON_END_USER_REJECTED = 0; // 0x0
15932    field public static final int CANCEL_REASON_POSTPONED = 1; // 0x1
15933    field public static final int CANCEL_REASON_PPR_NOT_ALLOWED = 3; // 0x3
15934    field public static final int CANCEL_REASON_TIMEOUT = 2; // 0x2
15935    field public static final int RESET_OPTION_DELETE_FIELD_LOADED_TEST_PROFILES = 2; // 0x2
15936    field public static final int RESET_OPTION_DELETE_OPERATIONAL_PROFILES = 1; // 0x1
15937    field public static final int RESET_OPTION_RESET_DEFAULT_SMDP_ADDRESS = 4; // 0x4
15938    field public static final int RESULT_CALLER_NOT_ALLOWED = -3; // 0xfffffffd
15939    field public static final int RESULT_EUICC_NOT_FOUND = -2; // 0xfffffffe
15940    field public static final int RESULT_OK = 0; // 0x0
15941    field public static final int RESULT_PROFILE_DOES_NOT_EXIST = -4; // 0xfffffffc
15942    field public static final int RESULT_PROFILE_NOT_FOUND = 1; // 0x1
15943    field public static final int RESULT_UNKNOWN_ERROR = -1; // 0xffffffff
15944  }
15945
15946  public static interface EuiccCardManager.ResultCallback<T> {
15947    method public void onComplete(int, T);
15948  }
15949
15950  public class EuiccManager {
15951    method @RequiresPermission(android.Manifest.permission.WRITE_EMBEDDED_SUBSCRIPTIONS) public void continueOperation(android.content.Intent, android.os.Bundle);
15952    method @Deprecated @RequiresPermission(android.Manifest.permission.WRITE_EMBEDDED_SUBSCRIPTIONS) public void eraseSubscriptions(@NonNull android.app.PendingIntent);
15953    method @RequiresPermission(android.Manifest.permission.WRITE_EMBEDDED_SUBSCRIPTIONS) public void eraseSubscriptions(int, @NonNull android.app.PendingIntent);
15954    method @RequiresPermission(android.Manifest.permission.WRITE_EMBEDDED_SUBSCRIPTIONS) public void getDefaultDownloadableSubscriptionList(android.app.PendingIntent);
15955    method @RequiresPermission(android.Manifest.permission.WRITE_EMBEDDED_SUBSCRIPTIONS) public void getDownloadableSubscriptionMetadata(android.telephony.euicc.DownloadableSubscription, android.app.PendingIntent);
15956    method @RequiresPermission(android.Manifest.permission.WRITE_EMBEDDED_SUBSCRIPTIONS) public int getOtaStatus();
15957    method @NonNull @RequiresPermission(android.Manifest.permission.WRITE_EMBEDDED_SUBSCRIPTIONS) public java.util.List<java.lang.String> getSupportedCountries();
15958    method @NonNull @RequiresPermission(android.Manifest.permission.WRITE_EMBEDDED_SUBSCRIPTIONS) public java.util.List<java.lang.String> getUnsupportedCountries();
15959    method @RequiresPermission(android.Manifest.permission.WRITE_EMBEDDED_SUBSCRIPTIONS) public boolean isPsimConversionSupported(int);
15960    method @RequiresPermission(android.Manifest.permission.WRITE_EMBEDDED_SUBSCRIPTIONS) public boolean isSupportedCountry(@NonNull String);
15961    method @RequiresPermission(android.Manifest.permission.WRITE_EMBEDDED_SUBSCRIPTIONS) public void setPsimConversionSupportedCarriers(@NonNull java.util.Set<java.lang.Integer>);
15962    method @RequiresPermission(android.Manifest.permission.WRITE_EMBEDDED_SUBSCRIPTIONS) public void setSupportedCountries(@NonNull java.util.List<java.lang.String>);
15963    method @RequiresPermission(android.Manifest.permission.WRITE_EMBEDDED_SUBSCRIPTIONS) public void setUnsupportedCountries(@NonNull java.util.List<java.lang.String>);
15964    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";
15965    field public static final String ACTION_DELETE_SUBSCRIPTION_PRIVILEGED = "android.telephony.euicc.action.DELETE_SUBSCRIPTION_PRIVILEGED";
15966    field @RequiresPermission(android.Manifest.permission.WRITE_EMBEDDED_SUBSCRIPTIONS) public static final String ACTION_OTA_STATUS_CHANGED = "android.telephony.euicc.action.OTA_STATUS_CHANGED";
15967    field public static final String ACTION_PROVISION_EMBEDDED_SUBSCRIPTION = "android.telephony.euicc.action.PROVISION_EMBEDDED_SUBSCRIPTION";
15968    field public static final String ACTION_RENAME_SUBSCRIPTION_PRIVILEGED = "android.telephony.euicc.action.RENAME_SUBSCRIPTION_PRIVILEGED";
15969    field public static final String ACTION_TOGGLE_SUBSCRIPTION_PRIVILEGED = "android.telephony.euicc.action.TOGGLE_SUBSCRIPTION_PRIVILEGED";
15970    field @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public static final String ACTION_TRANSFER_EMBEDDED_SUBSCRIPTIONS = "android.telephony.euicc.action.TRANSFER_EMBEDDED_SUBSCRIPTIONS";
15971    field public static final int EUICC_ACTIVATION_TYPE_ACCOUNT_REQUIRED = 4; // 0x4
15972    field public static final int EUICC_ACTIVATION_TYPE_BACKUP = 2; // 0x2
15973    field public static final int EUICC_ACTIVATION_TYPE_DEFAULT = 1; // 0x1
15974    field public static final int EUICC_ACTIVATION_TYPE_TRANSFER = 3; // 0x3
15975    field public static final int EUICC_OTA_FAILED = 2; // 0x2
15976    field public static final int EUICC_OTA_IN_PROGRESS = 1; // 0x1
15977    field public static final int EUICC_OTA_NOT_NEEDED = 4; // 0x4
15978    field public static final int EUICC_OTA_STATUS_UNAVAILABLE = 5; // 0x5
15979    field public static final int EUICC_OTA_SUCCEEDED = 3; // 0x3
15980    field public static final String EXTRA_ACTIVATION_TYPE = "android.telephony.euicc.extra.ACTIVATION_TYPE";
15981    field public static final String EXTRA_EMBEDDED_SUBSCRIPTION_DOWNLOADABLE_SUBSCRIPTIONS = "android.telephony.euicc.extra.EMBEDDED_SUBSCRIPTION_DOWNLOADABLE_SUBSCRIPTIONS";
15982    field public static final String EXTRA_ENABLE_SUBSCRIPTION = "android.telephony.euicc.extra.ENABLE_SUBSCRIPTION";
15983    field public static final String EXTRA_FORCE_PROVISION = "android.telephony.euicc.extra.FORCE_PROVISION";
15984    field public static final String EXTRA_FROM_SUBSCRIPTION_ID = "android.telephony.euicc.extra.FROM_SUBSCRIPTION_ID";
15985    field public static final String EXTRA_PHYSICAL_SLOT_ID = "android.telephony.euicc.extra.PHYSICAL_SLOT_ID";
15986    field public static final String EXTRA_SUBSCRIPTION_ID = "android.telephony.euicc.extra.SUBSCRIPTION_ID";
15987    field public static final String EXTRA_SUBSCRIPTION_NICKNAME = "android.telephony.euicc.extra.SUBSCRIPTION_NICKNAME";
15988  }
15989
15990  public final class EuiccNotification implements android.os.Parcelable {
15991    ctor public EuiccNotification(int, String, int, @Nullable byte[]);
15992    method public int describeContents();
15993    method @Nullable public byte[] getData();
15994    method public int getEvent();
15995    method public int getSeq();
15996    method public String getTargetAddr();
15997    method public void writeToParcel(android.os.Parcel, int);
15998    field public static final int ALL_EVENTS = 15; // 0xf
15999    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.euicc.EuiccNotification> CREATOR;
16000    field public static final int EVENT_DELETE = 8; // 0x8
16001    field public static final int EVENT_DISABLE = 4; // 0x4
16002    field public static final int EVENT_ENABLE = 2; // 0x2
16003    field public static final int EVENT_INSTALL = 1; // 0x1
16004  }
16005
16006  public final class EuiccRulesAuthTable implements android.os.Parcelable {
16007    method public int describeContents();
16008    method public int findIndex(int, android.service.carrier.CarrierIdentifier);
16009    method public boolean hasPolicyRuleFlag(int, int);
16010    method public void writeToParcel(android.os.Parcel, int);
16011    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.euicc.EuiccRulesAuthTable> CREATOR;
16012    field public static final int POLICY_RULE_FLAG_CONSENT_REQUIRED = 1; // 0x1
16013  }
16014
16015  public static final class EuiccRulesAuthTable.Builder {
16016    ctor public EuiccRulesAuthTable.Builder(int);
16017    method public android.telephony.euicc.EuiccRulesAuthTable.Builder add(int, java.util.List<android.service.carrier.CarrierIdentifier>, int);
16018    method public android.telephony.euicc.EuiccRulesAuthTable build();
16019  }
16020
16021}
16022
16023package android.telephony.gba {
16024
16025  public class GbaService extends android.app.Service {
16026    ctor public GbaService();
16027    method public void onAuthenticationRequest(int, int, int, @NonNull android.net.Uri, @NonNull byte[], boolean);
16028    method public android.os.IBinder onBind(android.content.Intent);
16029    method public final void reportAuthenticationFailure(int, int) throws java.lang.RuntimeException;
16030    method public final void reportKeysAvailable(int, @NonNull byte[], @NonNull String) throws java.lang.RuntimeException;
16031    field public static final String SERVICE_INTERFACE = "android.telephony.gba.GbaService";
16032  }
16033
16034  public class TlsParams {
16035    method public static boolean isTlsCipherSuiteSupported(int);
16036    field public static final int GROUP_SECP256R1 = 23; // 0x17
16037    field public static final int GROUP_SECP384R1 = 24; // 0x18
16038    field public static final int GROUP_X25519 = 29; // 0x1d
16039    field public static final int GROUP_X448 = 30; // 0x1e
16040    field public static final int PROTOCOL_VERSION_TLS_1_2 = 771; // 0x303
16041    field public static final int PROTOCOL_VERSION_TLS_1_3 = 772; // 0x304
16042    field public static final int SIG_ECDSA_BRAINPOOLP256R1TLS13_SHA256 = 2074; // 0x81a
16043    field public static final int SIG_ECDSA_BRAINPOOLP384R1TLS13_SHA384 = 2075; // 0x81b
16044    field public static final int SIG_ECDSA_BRAINPOOLP512R1TLS13_SHA512 = 2076; // 0x81c
16045    field public static final int SIG_ECDSA_SECP256R1_SHA256 = 1027; // 0x403
16046    field public static final int SIG_ECDSA_SECP384R1_SHA384 = 1283; // 0x503
16047    field public static final int SIG_ECDSA_SECP521R1_SHA512 = 1539; // 0x603
16048    field public static final int SIG_ECDSA_SHA1 = 515; // 0x203
16049    field public static final int SIG_RSA_PKCS1_SHA1 = 513; // 0x201
16050    field public static final int SIG_RSA_PKCS1_SHA256 = 1025; // 0x401
16051    field public static final int SIG_RSA_PKCS1_SHA256_LEGACY = 1056; // 0x420
16052    field public static final int SIG_RSA_PKCS1_SHA384 = 1281; // 0x501
16053    field public static final int SIG_RSA_PKCS1_SHA384_LEGACY = 1312; // 0x520
16054    field public static final int SIG_RSA_PKCS1_SHA512 = 1537; // 0x601
16055    field public static final int SIG_RSA_PKCS1_SHA512_LEGACY = 1568; // 0x620
16056    field public static final int SIG_RSA_PSS_RSAE_SHA256 = 2052; // 0x804
16057    field public static final int SIG_RSA_PSS_RSAE_SHA384 = 2053; // 0x805
16058    field public static final int SIG_RSA_PSS_RSAE_SHA512 = 2054; // 0x806
16059    field public static final int TLS_AES_128_CCM_SHA256 = 4868; // 0x1304
16060    field public static final int TLS_AES_128_GCM_SHA256 = 4865; // 0x1301
16061    field public static final int TLS_AES_256_GCM_SHA384 = 4866; // 0x1302
16062    field public static final int TLS_CHACHA20_POLY1305_SHA256 = 4867; // 0x1303
16063    field public static final int TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA = 19; // 0x13
16064    field public static final int TLS_DHE_DSS_WITH_AES_128_CBC_SHA = 50; // 0x32
16065    field public static final int TLS_DHE_DSS_WITH_AES_128_CBC_SHA256 = 64; // 0x40
16066    field public static final int TLS_DHE_DSS_WITH_AES_256_CBC_SHA = 56; // 0x38
16067    field public static final int TLS_DHE_DSS_WITH_AES_256_CBC_SHA256 = 106; // 0x6a
16068    field public static final int TLS_DHE_PSK_WITH_AES_128_CCM = 49318; // 0xc0a6
16069    field public static final int TLS_DHE_PSK_WITH_AES_128_GCM_SHA256 = 170; // 0xaa
16070    field public static final int TLS_DHE_PSK_WITH_AES_256_CCM = 49319; // 0xc0a7
16071    field public static final int TLS_DHE_PSK_WITH_AES_256_GCM_SHA384 = 171; // 0xab
16072    field public static final int TLS_DHE_PSK_WITH_CHACHA20_POLY1305_SHA256 = 52397; // 0xccad
16073    field public static final int TLS_DHE_RSA_WITH_3DES_EDE_CBC_SHA = 22; // 0x16
16074    field public static final int TLS_DHE_RSA_WITH_AES_128_CBC_SHA = 51; // 0x33
16075    field public static final int TLS_DHE_RSA_WITH_AES_128_CBC_SHA256 = 103; // 0x67
16076    field public static final int TLS_DHE_RSA_WITH_AES_128_CCM = 49310; // 0xc09e
16077    field public static final int TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 = 158; // 0x9e
16078    field public static final int TLS_DHE_RSA_WITH_AES_256_CBC_SHA = 57; // 0x39
16079    field public static final int TLS_DHE_RSA_WITH_AES_256_CBC_SHA256 = 107; // 0x6b
16080    field public static final int TLS_DHE_RSA_WITH_AES_256_CCM = 49311; // 0xc09f
16081    field public static final int TLS_DHE_RSA_WITH_AES_256_GCM_SHA384 = 159; // 0x9f
16082    field public static final int TLS_DHE_RSA_WITH_CHACHA20_POLY1305_SHA256 = 52394; // 0xccaa
16083    field public static final int TLS_DH_ANON_WITH_3DES_EDE_CBC_SHA = 27; // 0x1b
16084    field public static final int TLS_DH_ANON_WITH_AES_128_CBC_SHA = 52; // 0x34
16085    field public static final int TLS_DH_ANON_WITH_AES_128_CBC_SHA256 = 108; // 0x6c
16086    field public static final int TLS_DH_ANON_WITH_AES_256_CBC_SHA = 58; // 0x3a
16087    field public static final int TLS_DH_ANON_WITH_AES_256_CBC_SHA256 = 109; // 0x6d
16088    field public static final int TLS_DH_ANON_WITH_RC4_128_MD5 = 24; // 0x18
16089    field public static final int TLS_DH_DSS_WITH_3DES_EDE_CBC_SHA = 13; // 0xd
16090    field public static final int TLS_DH_DSS_WITH_AES_128_CBC_SHA = 48; // 0x30
16091    field public static final int TLS_DH_DSS_WITH_AES_128_CBC_SHA256 = 62; // 0x3e
16092    field public static final int TLS_DH_DSS_WITH_AES_256_CBC_SHA = 54; // 0x36
16093    field public static final int TLS_DH_DSS_WITH_AES_256_CBC_SHA256 = 104; // 0x68
16094    field public static final int TLS_DH_RSA_WITH_3DES_EDE_CBC_SHA = 16; // 0x10
16095    field public static final int TLS_DH_RSA_WITH_AES_128_CBC_SHA = 49; // 0x31
16096    field public static final int TLS_DH_RSA_WITH_AES_128_CBC_SHA256 = 63; // 0x3f
16097    field public static final int TLS_DH_RSA_WITH_AES_256_CBC_SHA = 55; // 0x37
16098    field public static final int TLS_DH_RSA_WITH_AES_256_CBC_SHA256 = 105; // 0x69
16099    field public static final int TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256 = 49195; // 0xc02b
16100    field public static final int TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384 = 49196; // 0xc02c
16101    field public static final int TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256 = 52393; // 0xcca9
16102    field public static final int TLS_ECDHE_PSK_WITH_AES_128_CCM_SHA256 = 53253; // 0xd005
16103    field public static final int TLS_ECDHE_PSK_WITH_AES_128_GCM_SHA256 = 53249; // 0xd001
16104    field public static final int TLS_ECDHE_PSK_WITH_AES_256_GCM_SHA384 = 53250; // 0xd002
16105    field public static final int TLS_ECDHE_PSK_WITH_CHACHA20_POLY1305_SHA256 = 52396; // 0xccac
16106    field public static final int TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 = 49199; // 0xc02f
16107    field public static final int TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 = 49200; // 0xc030
16108    field public static final int TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256 = 52392; // 0xcca8
16109    field public static final int TLS_NULL_WITH_NULL_NULL = 0; // 0x0
16110    field public static final int TLS_RSA_WITH_3DES_EDE_CBC_SHA = 10; // 0xa
16111    field public static final int TLS_RSA_WITH_AES_128_CBC_SHA = 47; // 0x2f
16112    field public static final int TLS_RSA_WITH_AES_128_CBC_SHA256 = 60; // 0x3c
16113    field public static final int TLS_RSA_WITH_AES_256_CBC_SHA = 53; // 0x35
16114    field public static final int TLS_RSA_WITH_AES_256_CBC_SHA256 = 61; // 0x3d
16115    field public static final int TLS_RSA_WITH_NULL_MD5 = 1; // 0x1
16116    field public static final int TLS_RSA_WITH_NULL_SHA = 2; // 0x2
16117    field public static final int TLS_RSA_WITH_NULL_SHA256 = 59; // 0x3b
16118    field public static final int TLS_RSA_WITH_RC4_128_MD5 = 4; // 0x4
16119    field public static final int TLS_RSA_WITH_RC4_128_SHA = 5; // 0x5
16120  }
16121
16122  public final class UaSecurityProtocolIdentifier implements android.os.Parcelable {
16123    method public int describeContents();
16124    method public int getOrg();
16125    method public int getProtocol();
16126    method public int getTlsCipherSuite();
16127    method @NonNull public byte[] toByteArray();
16128    method public void writeToParcel(@NonNull android.os.Parcel, int);
16129    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.gba.UaSecurityProtocolIdentifier> CREATOR;
16130    field public static final int ORG_3GPP = 1; // 0x1
16131    field public static final int ORG_3GPP2 = 2; // 0x2
16132    field public static final int ORG_GSMA = 4; // 0x4
16133    field public static final int ORG_LOCAL = 255; // 0xff
16134    field public static final int ORG_NONE = 0; // 0x0
16135    field public static final int ORG_OMA = 3; // 0x3
16136    field public static final int UA_SECURITY_PROTOCOL_3GPP_GENERATION_TMPI = 256; // 0x100
16137    field public static final int UA_SECURITY_PROTOCOL_3GPP_GENERIC_PUSH_LAYER = 5; // 0x5
16138    field public static final int UA_SECURITY_PROTOCOL_3GPP_HTTP_BASED_MBMS = 3; // 0x3
16139    field public static final int UA_SECURITY_PROTOCOL_3GPP_HTTP_DIGEST_AUTHENTICATION = 2; // 0x2
16140    field public static final int UA_SECURITY_PROTOCOL_3GPP_IMS_MEDIA_PLANE = 6; // 0x6
16141    field public static final int UA_SECURITY_PROTOCOL_3GPP_MBMS = 1; // 0x1
16142    field public static final int UA_SECURITY_PROTOCOL_3GPP_SIP_BASED_MBMS = 4; // 0x4
16143    field public static final int UA_SECURITY_PROTOCOL_3GPP_SUBSCRIBER_CERTIFICATE = 0; // 0x0
16144    field public static final int UA_SECURITY_PROTOCOL_3GPP_TLS_BROWSER = 131072; // 0x20000
16145    field public static final int UA_SECURITY_PROTOCOL_3GPP_TLS_DEFAULT = 65536; // 0x10000
16146  }
16147
16148  public static final class UaSecurityProtocolIdentifier.Builder {
16149    ctor public UaSecurityProtocolIdentifier.Builder();
16150    ctor public UaSecurityProtocolIdentifier.Builder(@NonNull android.telephony.gba.UaSecurityProtocolIdentifier);
16151    method @NonNull public android.telephony.gba.UaSecurityProtocolIdentifier build();
16152    method @NonNull public android.telephony.gba.UaSecurityProtocolIdentifier.Builder setOrg(int);
16153    method @NonNull public android.telephony.gba.UaSecurityProtocolIdentifier.Builder setProtocol(int);
16154    method @NonNull public android.telephony.gba.UaSecurityProtocolIdentifier.Builder setTlsCipherSuite(int);
16155  }
16156
16157}
16158
16159package android.telephony.ims {
16160
16161  public final class AudioCodecAttributes implements android.os.Parcelable {
16162    ctor public AudioCodecAttributes(float, @NonNull android.util.Range<java.lang.Float>, float, @NonNull android.util.Range<java.lang.Float>);
16163    method public int describeContents();
16164    method public float getBandwidthKhz();
16165    method @NonNull public android.util.Range<java.lang.Float> getBandwidthRangeKhz();
16166    method public float getBitrateKbps();
16167    method @NonNull public android.util.Range<java.lang.Float> getBitrateRangeKbps();
16168    method public void writeToParcel(@NonNull android.os.Parcel, int);
16169    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.AudioCodecAttributes> CREATOR;
16170  }
16171
16172  public interface DelegateMessageCallback {
16173    method public void onMessageReceived(@NonNull android.telephony.ims.SipMessage);
16174    method public void onMessageSendFailure(@NonNull String, int);
16175    method public void onMessageSent(@NonNull String);
16176  }
16177
16178  public final class DelegateRegistrationState implements android.os.Parcelable {
16179    method public int describeContents();
16180    method @NonNull public java.util.Set<android.telephony.ims.FeatureTagState> getDeregisteredFeatureTags();
16181    method @NonNull public java.util.Set<android.telephony.ims.FeatureTagState> getDeregisteringFeatureTags();
16182    method @NonNull public java.util.Set<java.lang.String> getRegisteredFeatureTags();
16183    method @NonNull public java.util.Set<java.lang.String> getRegisteringFeatureTags();
16184    method public void writeToParcel(@NonNull android.os.Parcel, int);
16185    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.DelegateRegistrationState> CREATOR;
16186    field public static final int DEREGISTERED_REASON_NOT_PROVISIONED = 1; // 0x1
16187    field public static final int DEREGISTERED_REASON_NOT_REGISTERED = 2; // 0x2
16188    field public static final int DEREGISTERED_REASON_UNKNOWN = 0; // 0x0
16189    field public static final int DEREGISTERING_REASON_DESTROY_PENDING = 6; // 0x6
16190    field public static final int DEREGISTERING_REASON_FEATURE_TAGS_CHANGING = 5; // 0x5
16191    field public static final int DEREGISTERING_REASON_LOSING_PDN = 7; // 0x7
16192    field public static final int DEREGISTERING_REASON_PDN_CHANGE = 3; // 0x3
16193    field public static final int DEREGISTERING_REASON_PROVISIONING_CHANGE = 4; // 0x4
16194    field public static final int DEREGISTERING_REASON_UNSPECIFIED = 8; // 0x8
16195  }
16196
16197  public static final class DelegateRegistrationState.Builder {
16198    ctor public DelegateRegistrationState.Builder();
16199    method @NonNull public android.telephony.ims.DelegateRegistrationState.Builder addDeregisteredFeatureTag(@NonNull String, int);
16200    method @NonNull public android.telephony.ims.DelegateRegistrationState.Builder addDeregisteringFeatureTag(@NonNull String, int);
16201    method @NonNull public android.telephony.ims.DelegateRegistrationState.Builder addRegisteredFeatureTag(@NonNull String);
16202    method @NonNull public android.telephony.ims.DelegateRegistrationState.Builder addRegisteredFeatureTags(@NonNull java.util.Set<java.lang.String>);
16203    method @NonNull public android.telephony.ims.DelegateRegistrationState.Builder addRegisteringFeatureTags(@NonNull java.util.Set<java.lang.String>);
16204    method @NonNull public android.telephony.ims.DelegateRegistrationState build();
16205  }
16206
16207  public final class DelegateRequest implements android.os.Parcelable {
16208    ctor public DelegateRequest(@NonNull java.util.Set<java.lang.String>);
16209    method public int describeContents();
16210    method @NonNull public java.util.Set<java.lang.String> getFeatureTags();
16211    method public void writeToParcel(@NonNull android.os.Parcel, int);
16212    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.DelegateRequest> CREATOR;
16213  }
16214
16215  public interface DelegateStateCallback {
16216    method public void onConfigurationChanged(@NonNull android.telephony.ims.SipDelegateConfiguration);
16217    method public void onCreated(@NonNull android.telephony.ims.stub.SipDelegate, @Nullable java.util.Set<android.telephony.ims.FeatureTagState>);
16218    method public void onDestroyed(int);
16219    method public void onFeatureTagRegistrationChanged(@NonNull android.telephony.ims.DelegateRegistrationState);
16220  }
16221
16222  public final class FeatureTagState implements android.os.Parcelable {
16223    ctor public FeatureTagState(@NonNull String, int);
16224    method public int describeContents();
16225    method @NonNull public String getFeatureTag();
16226    method public int getState();
16227    method public void writeToParcel(@NonNull android.os.Parcel, int);
16228    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.FeatureTagState> CREATOR;
16229  }
16230
16231  public final class ImsCallForwardInfo implements android.os.Parcelable {
16232    ctor public ImsCallForwardInfo(int, int, int, int, @NonNull String, int);
16233    method public int describeContents();
16234    method public int getCondition();
16235    method public String getNumber();
16236    method public int getServiceClass();
16237    method public int getStatus();
16238    method public int getTimeSeconds();
16239    method public int getToA();
16240    method public void writeToParcel(android.os.Parcel, int);
16241    field public static final int CDIV_CF_REASON_ALL = 4; // 0x4
16242    field public static final int CDIV_CF_REASON_ALL_CONDITIONAL = 5; // 0x5
16243    field public static final int CDIV_CF_REASON_BUSY = 1; // 0x1
16244    field public static final int CDIV_CF_REASON_NOT_LOGGED_IN = 6; // 0x6
16245    field public static final int CDIV_CF_REASON_NOT_REACHABLE = 3; // 0x3
16246    field public static final int CDIV_CF_REASON_NO_REPLY = 2; // 0x2
16247    field public static final int CDIV_CF_REASON_UNCONDITIONAL = 0; // 0x0
16248    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.ImsCallForwardInfo> CREATOR;
16249    field public static final int STATUS_ACTIVE = 1; // 0x1
16250    field public static final int STATUS_NOT_ACTIVE = 0; // 0x0
16251    field public static final int TYPE_OF_ADDRESS_INTERNATIONAL = 145; // 0x91
16252    field public static final int TYPE_OF_ADDRESS_UNKNOWN = 129; // 0x81
16253  }
16254
16255  public final class ImsCallProfile implements android.os.Parcelable {
16256    ctor public ImsCallProfile();
16257    ctor public ImsCallProfile(int, int);
16258    ctor public ImsCallProfile(int, int, android.os.Bundle, android.telephony.ims.ImsStreamMediaProfile);
16259    method public int describeContents();
16260    method @NonNull public java.util.Set<android.telephony.ims.RtpHeaderExtensionType> getAcceptedRtpHeaderExtensionTypes();
16261    method public String getCallExtra(String);
16262    method public String getCallExtra(String, String);
16263    method public boolean getCallExtraBoolean(String);
16264    method public boolean getCallExtraBoolean(String, boolean);
16265    method public int getCallExtraInt(String);
16266    method public int getCallExtraInt(String, int);
16267    method @Nullable public <T extends android.os.Parcelable> T getCallExtraParcelable(@Nullable String);
16268    method public android.os.Bundle getCallExtras();
16269    method public int getCallType();
16270    method public static int getCallTypeFromVideoState(int);
16271    method public int getCallerNumberVerificationStatus();
16272    method public int getEmergencyCallRouting();
16273    method public int getEmergencyServiceCategories();
16274    method @NonNull public java.util.List<java.lang.String> getEmergencyUrns();
16275    method public android.telephony.ims.ImsStreamMediaProfile getMediaProfile();
16276    method @NonNull public android.os.Bundle getProprietaryCallExtras();
16277    method public int getRestrictCause();
16278    method public int getServiceType();
16279    method public static int getVideoStateFromCallType(int);
16280    method public static int getVideoStateFromImsCallProfile(android.telephony.ims.ImsCallProfile);
16281    method public boolean hasKnownUserIntentEmergency();
16282    method public boolean isEmergencyCallTesting();
16283    method public boolean isVideoCall();
16284    method public boolean isVideoPaused();
16285    method public static int presentationToOir(int);
16286    method public void setAcceptedRtpHeaderExtensionTypes(@NonNull java.util.Set<android.telephony.ims.RtpHeaderExtensionType>);
16287    method public void setCallExtra(String, String);
16288    method public void setCallExtraBoolean(String, boolean);
16289    method public void setCallExtraInt(String, int);
16290    method public void setCallExtraParcelable(@NonNull String, @NonNull android.os.Parcelable);
16291    method public void setCallRestrictCause(int);
16292    method public void setCallerNumberVerificationStatus(int);
16293    method public void setEmergencyCallRouting(int);
16294    method public void setEmergencyCallTesting(boolean);
16295    method public void setEmergencyServiceCategories(int);
16296    method public void setEmergencyUrns(@NonNull java.util.List<java.lang.String>);
16297    method public void setHasKnownUserIntentEmergency(boolean);
16298    method public void updateCallExtras(android.telephony.ims.ImsCallProfile);
16299    method public void updateCallType(android.telephony.ims.ImsCallProfile);
16300    method public void updateMediaProfile(android.telephony.ims.ImsCallProfile);
16301    method public void writeToParcel(android.os.Parcel, int);
16302    field public static final int CALL_RESTRICT_CAUSE_DISABLED = 2; // 0x2
16303    field public static final int CALL_RESTRICT_CAUSE_HD = 3; // 0x3
16304    field public static final int CALL_RESTRICT_CAUSE_NONE = 0; // 0x0
16305    field public static final int CALL_RESTRICT_CAUSE_RAT = 1; // 0x1
16306    field public static final int CALL_TYPE_NONE = 0; // 0x0
16307    field public static final int CALL_TYPE_VIDEO_N_VOICE = 3; // 0x3
16308    field public static final int CALL_TYPE_VOICE = 2; // 0x2
16309    field public static final int CALL_TYPE_VOICE_N_VIDEO = 1; // 0x1
16310    field public static final int CALL_TYPE_VS = 8; // 0x8
16311    field public static final int CALL_TYPE_VS_RX = 10; // 0xa
16312    field public static final int CALL_TYPE_VS_TX = 9; // 0x9
16313    field public static final int CALL_TYPE_VT = 4; // 0x4
16314    field public static final int CALL_TYPE_VT_NODIR = 7; // 0x7
16315    field public static final int CALL_TYPE_VT_RX = 6; // 0x6
16316    field public static final int CALL_TYPE_VT_TX = 5; // 0x5
16317    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.ImsCallProfile> CREATOR;
16318    field public static final int DIALSTRING_NORMAL = 0; // 0x0
16319    field public static final int DIALSTRING_SS_CONF = 1; // 0x1
16320    field public static final int DIALSTRING_USSD = 2; // 0x2
16321    field public static final String EXTRA_ADDITIONAL_CALL_INFO = "AdditionalCallInfo";
16322    field public static final String EXTRA_ADDITIONAL_SIP_INVITE_FIELDS = "android.telephony.ims.extra.ADDITIONAL_SIP_INVITE_FIELDS";
16323    field public static final String EXTRA_ASSERTED_DISPLAY_NAME = "android.telephony.ims.extra.ASSERTED_DISPLAY_NAME";
16324    field public static final String EXTRA_CALL_DISCONNECT_CAUSE = "android.telephony.ims.extra.CALL_DISCONNECT_CAUSE";
16325    field public static final String EXTRA_CALL_NETWORK_TYPE = "android.telephony.ims.extra.CALL_NETWORK_TYPE";
16326    field @Deprecated public static final String EXTRA_CALL_RAT_TYPE = "CallRadioTech";
16327    field public static final String EXTRA_CALL_SUBJECT = "android.telephony.ims.extra.CALL_SUBJECT";
16328    field public static final String EXTRA_CHILD_NUMBER = "ChildNum";
16329    field public static final String EXTRA_CNA = "cna";
16330    field public static final String EXTRA_CNAP = "cnap";
16331    field public static final String EXTRA_CODEC = "Codec";
16332    field public static final String EXTRA_CONFERENCE = "android.telephony.ims.extra.CONFERENCE";
16333    field public static final String EXTRA_DIALSTRING = "dialstring";
16334    field public static final String EXTRA_DISPLAY_TEXT = "DisplayText";
16335    field public static final String EXTRA_EMERGENCY_CALL = "e_call";
16336    field public static final String EXTRA_EXTENDING_TO_CONFERENCE_SUPPORTED = "android.telephony.ims.extra.EXTENDING_TO_CONFERENCE_SUPPORTED";
16337    field public static final String EXTRA_FORWARDED_NUMBER = "android.telephony.ims.extra.FORWARDED_NUMBER";
16338    field public static final String EXTRA_IS_BUSINESS_CALL = "android.telephony.ims.extra.IS_BUSINESS_CALL";
16339    field public static final String EXTRA_IS_CALL_PULL = "CallPull";
16340    field public static final String EXTRA_IS_CROSS_SIM_CALL = "android.telephony.ims.extra.IS_CROSS_SIM_CALL";
16341    field public static final String EXTRA_LOCATION = "android.telephony.ims.extra.LOCATION";
16342    field public static final String EXTRA_OI = "oi";
16343    field public static final String EXTRA_OIR = "oir";
16344    field public static final String EXTRA_PICTURE_URL = "android.telephony.ims.extra.PICTURE_URL";
16345    field public static final String EXTRA_PRIORITY = "android.telephony.ims.extra.PRIORITY";
16346    field public static final String EXTRA_REMOTE_URI = "remote_uri";
16347    field public static final String EXTRA_USSD = "ussd";
16348    field public static final int OIR_DEFAULT = 0; // 0x0
16349    field public static final int OIR_PRESENTATION_NOT_RESTRICTED = 2; // 0x2
16350    field public static final int OIR_PRESENTATION_PAYPHONE = 4; // 0x4
16351    field public static final int OIR_PRESENTATION_RESTRICTED = 1; // 0x1
16352    field public static final int OIR_PRESENTATION_UNAVAILABLE = 5; // 0x5
16353    field public static final int OIR_PRESENTATION_UNKNOWN = 3; // 0x3
16354    field public static final int PRIORITY_NORMAL = 0; // 0x0
16355    field public static final int PRIORITY_URGENT = 1; // 0x1
16356    field public static final int SERVICE_TYPE_EMERGENCY = 2; // 0x2
16357    field public static final int SERVICE_TYPE_NONE = 0; // 0x0
16358    field public static final int SERVICE_TYPE_NORMAL = 1; // 0x1
16359    field public static final int VERIFICATION_STATUS_FAILED = 2; // 0x2
16360    field public static final int VERIFICATION_STATUS_NOT_VERIFIED = 0; // 0x0
16361    field public static final int VERIFICATION_STATUS_PASSED = 1; // 0x1
16362  }
16363
16364  public class ImsCallSessionListener {
16365    method public void callQualityChanged(@NonNull android.telephony.CallQuality);
16366    method public void callSessionConferenceExtendFailed(android.telephony.ims.ImsReasonInfo);
16367    method public void callSessionConferenceExtendReceived(android.telephony.ims.stub.ImsCallSessionImplBase, android.telephony.ims.ImsCallProfile);
16368    method public void callSessionConferenceExtended(android.telephony.ims.stub.ImsCallSessionImplBase, android.telephony.ims.ImsCallProfile);
16369    method public void callSessionConferenceStateUpdated(android.telephony.ims.ImsConferenceState);
16370    method public void callSessionDtmfReceived(char);
16371    method @Deprecated public void callSessionHandover(int, int, android.telephony.ims.ImsReasonInfo);
16372    method @Deprecated public void callSessionHandoverFailed(int, int, android.telephony.ims.ImsReasonInfo);
16373    method public void callSessionHeld(android.telephony.ims.ImsCallProfile);
16374    method public void callSessionHoldFailed(android.telephony.ims.ImsReasonInfo);
16375    method public void callSessionHoldReceived(android.telephony.ims.ImsCallProfile);
16376    method public void callSessionInitiated(android.telephony.ims.ImsCallProfile);
16377    method @Deprecated public void callSessionInitiatedFailed(android.telephony.ims.ImsReasonInfo);
16378    method public void callSessionInitiating(@NonNull android.telephony.ims.ImsCallProfile);
16379    method public void callSessionInitiatingFailed(@NonNull android.telephony.ims.ImsReasonInfo);
16380    method public void callSessionInviteParticipantsRequestDelivered();
16381    method public void callSessionInviteParticipantsRequestFailed(android.telephony.ims.ImsReasonInfo);
16382    method @Deprecated public void callSessionMayHandover(int, int);
16383    method public void callSessionMergeComplete(android.telephony.ims.stub.ImsCallSessionImplBase);
16384    method public void callSessionMergeFailed(android.telephony.ims.ImsReasonInfo);
16385    method public void callSessionMergeStarted(android.telephony.ims.stub.ImsCallSessionImplBase, android.telephony.ims.ImsCallProfile);
16386    method public void callSessionMultipartyStateChanged(boolean);
16387    method public void callSessionProgressing(android.telephony.ims.ImsStreamMediaProfile);
16388    method public void callSessionRemoveParticipantsRequestDelivered();
16389    method public void callSessionRemoveParticipantsRequestFailed(android.telephony.ims.ImsReasonInfo);
16390    method public void callSessionResumeFailed(android.telephony.ims.ImsReasonInfo);
16391    method public void callSessionResumeReceived(android.telephony.ims.ImsCallProfile);
16392    method public void callSessionResumed(android.telephony.ims.ImsCallProfile);
16393    method public void callSessionRtpHeaderExtensionsReceived(@NonNull java.util.Set<android.telephony.ims.RtpHeaderExtension>);
16394    method public void callSessionRttAudioIndicatorChanged(@NonNull android.telephony.ims.ImsStreamMediaProfile);
16395    method public void callSessionRttMessageReceived(String);
16396    method public void callSessionRttModifyRequestReceived(android.telephony.ims.ImsCallProfile);
16397    method public void callSessionRttModifyResponseReceived(int);
16398    method public void callSessionSuppServiceReceived(android.telephony.ims.ImsSuppServiceNotification);
16399    method public void callSessionTerminated(android.telephony.ims.ImsReasonInfo);
16400    method public void callSessionTtyModeReceived(int);
16401    method public void callSessionUpdateFailed(android.telephony.ims.ImsReasonInfo);
16402    method public void callSessionUpdateReceived(android.telephony.ims.ImsCallProfile);
16403    method public void callSessionUpdated(android.telephony.ims.ImsCallProfile);
16404    method public void callSessionUssdMessageReceived(int, String);
16405    method public void onHandover(int, int, @Nullable android.telephony.ims.ImsReasonInfo);
16406    method public void onHandoverFailed(int, int, @NonNull android.telephony.ims.ImsReasonInfo);
16407    method public void onMayHandover(int, int);
16408  }
16409
16410  public final class ImsConferenceState implements android.os.Parcelable {
16411    method public int describeContents();
16412    method public static int getConnectionStateForStatus(String);
16413    method public void writeToParcel(android.os.Parcel, int);
16414    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.ImsConferenceState> CREATOR;
16415    field public static final String DISPLAY_TEXT = "display-text";
16416    field public static final String ENDPOINT = "endpoint";
16417    field public static final String SIP_STATUS_CODE = "sipstatuscode";
16418    field public static final String STATUS = "status";
16419    field public static final String STATUS_ALERTING = "alerting";
16420    field public static final String STATUS_CONNECTED = "connected";
16421    field public static final String STATUS_CONNECT_FAIL = "connect-fail";
16422    field public static final String STATUS_DIALING_IN = "dialing-in";
16423    field public static final String STATUS_DIALING_OUT = "dialing-out";
16424    field public static final String STATUS_DISCONNECTED = "disconnected";
16425    field public static final String STATUS_DISCONNECTING = "disconnecting";
16426    field public static final String STATUS_MUTED_VIA_FOCUS = "muted-via-focus";
16427    field public static final String STATUS_ON_HOLD = "on-hold";
16428    field public static final String STATUS_PENDING = "pending";
16429    field public static final String STATUS_SEND_ONLY = "sendonly";
16430    field public static final String STATUS_SEND_RECV = "sendrecv";
16431    field public static final String USER = "user";
16432    field public final java.util.HashMap<java.lang.String,android.os.Bundle> mParticipants;
16433  }
16434
16435  public final class ImsException extends java.lang.Exception {
16436    ctor public ImsException(@Nullable String);
16437    ctor public ImsException(@Nullable String, int);
16438    ctor public ImsException(@Nullable String, int, @Nullable Throwable);
16439  }
16440
16441  public final class ImsExternalCallState implements android.os.Parcelable {
16442    ctor public ImsExternalCallState(@NonNull String, @NonNull android.net.Uri, @Nullable android.net.Uri, boolean, int, int, boolean);
16443    method public int describeContents();
16444    method @NonNull public android.net.Uri getAddress();
16445    method public int getCallId();
16446    method public int getCallState();
16447    method public int getCallType();
16448    method @Nullable public android.net.Uri getLocalAddress();
16449    method public boolean isCallHeld();
16450    method public boolean isCallPullable();
16451    method public void writeToParcel(android.os.Parcel, int);
16452    field public static final int CALL_STATE_CONFIRMED = 1; // 0x1
16453    field public static final int CALL_STATE_TERMINATED = 2; // 0x2
16454    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.ImsExternalCallState> CREATOR;
16455  }
16456
16457  public class ImsManager {
16458    method @NonNull public android.telephony.ims.SipDelegateManager getSipDelegateManager(int);
16459  }
16460
16461  public class ImsMmTelManager implements android.telephony.ims.RegistrationManager {
16462    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);
16463    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;
16464    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>);
16465    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getVoWiFiRoamingModeSetting();
16466    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isAvailable(int, int);
16467    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isCapable(int, int);
16468    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;
16469    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;
16470    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setAdvancedCallingSettingEnabled(boolean);
16471    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setCrossSimCallingEnabled(boolean) throws android.telephony.ims.ImsException;
16472    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setRttCapabilitySetting(boolean);
16473    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setVoWiFiModeSetting(int);
16474    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setVoWiFiNonPersistent(boolean, int);
16475    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setVoWiFiRoamingModeSetting(int);
16476    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setVoWiFiRoamingSettingEnabled(boolean);
16477    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setVoWiFiSettingEnabled(boolean);
16478    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setVtSettingEnabled(boolean);
16479    method @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void unregisterImsRegistrationCallback(@NonNull android.telephony.ims.ImsMmTelManager.RegistrationCallback);
16480  }
16481
16482  @Deprecated public static class ImsMmTelManager.RegistrationCallback extends android.telephony.ims.RegistrationManager.RegistrationCallback {
16483    ctor @Deprecated public ImsMmTelManager.RegistrationCallback();
16484    method @Deprecated public void onRegistered(int);
16485    method @Deprecated public void onRegistering(int);
16486  }
16487
16488  public class ImsRcsManager {
16489    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;
16490    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isAvailable(int, int) throws android.telephony.ims.ImsException;
16491    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isCapable(int, int) throws android.telephony.ims.ImsException;
16492    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void removeOnAvailabilityChangedListener(@NonNull android.telephony.ims.ImsRcsManager.OnAvailabilityChangedListener);
16493  }
16494
16495  public static interface ImsRcsManager.OnAvailabilityChangedListener {
16496    method public void onAvailabilityChanged(int);
16497  }
16498
16499  public final class ImsReasonInfo implements android.os.Parcelable {
16500    field public static final String EXTRA_MSG_SERVICE_NOT_AUTHORIZED = "Forbidden. Not Authorized for Service";
16501  }
16502
16503  public final class ImsRegistrationAttributes implements android.os.Parcelable {
16504    method public int getRegistrationTechnology();
16505  }
16506
16507  public static final class ImsRegistrationAttributes.Builder {
16508    ctor public ImsRegistrationAttributes.Builder(int);
16509    method @NonNull public android.telephony.ims.ImsRegistrationAttributes build();
16510    method @NonNull public android.telephony.ims.ImsRegistrationAttributes.Builder setFeatureTags(@NonNull java.util.Set<java.lang.String>);
16511    method @NonNull public android.telephony.ims.ImsRegistrationAttributes.Builder setSipDetails(@NonNull android.telephony.ims.SipDetails);
16512  }
16513
16514  public class ImsService extends android.app.Service {
16515    ctor public ImsService();
16516    method @Nullable public android.telephony.ims.feature.MmTelFeature createEmergencyOnlyMmTelFeature(int);
16517    method @Deprecated public android.telephony.ims.feature.MmTelFeature createMmTelFeature(int);
16518    method @Nullable public android.telephony.ims.feature.MmTelFeature createMmTelFeatureForSubscription(int, int);
16519    method @Deprecated public android.telephony.ims.feature.RcsFeature createRcsFeature(int);
16520    method @Nullable public android.telephony.ims.feature.RcsFeature createRcsFeatureForSubscription(int, int);
16521    method @Deprecated public void disableIms(int);
16522    method public void disableImsForSubscription(int, int);
16523    method @Deprecated public void enableIms(int);
16524    method public void enableImsForSubscription(int, int);
16525    method @Deprecated public android.telephony.ims.stub.ImsConfigImplBase getConfig(int);
16526    method @NonNull public android.telephony.ims.stub.ImsConfigImplBase getConfigForSubscription(int, int);
16527    method @NonNull public java.util.concurrent.Executor getExecutor();
16528    method public long getImsServiceCapabilities();
16529    method @Deprecated public android.telephony.ims.stub.ImsRegistrationImplBase getRegistration(int);
16530    method @NonNull public android.telephony.ims.stub.ImsRegistrationImplBase getRegistrationForSubscription(int, int);
16531    method @Nullable public android.telephony.ims.stub.SipTransportImplBase getSipTransport(int);
16532    method public android.os.IBinder onBind(android.content.Intent);
16533    method public final void onUpdateSupportedImsFeatures(android.telephony.ims.stub.ImsFeatureConfiguration) throws android.os.RemoteException;
16534    method public android.telephony.ims.stub.ImsFeatureConfiguration querySupportedImsFeatures();
16535    method public void readyForFeatureCreation();
16536    field public static final long CAPABILITY_SIP_DELEGATE_CREATION = 2L; // 0x2L
16537    field public static final long CAPABILITY_TERMINAL_BASED_CALL_WAITING = 4L; // 0x4L
16538  }
16539
16540  public final class ImsSsData implements android.os.Parcelable {
16541    ctor public ImsSsData(int, int, int, int, int);
16542    method public int describeContents();
16543    method @Nullable public java.util.List<android.telephony.ims.ImsCallForwardInfo> getCallForwardInfo();
16544    method public int getRequestType();
16545    method public int getResult();
16546    method public int getServiceClass();
16547    method public int getServiceType();
16548    method @NonNull public java.util.List<android.telephony.ims.ImsSsInfo> getSuppServiceInfo();
16549    method public int getTeleserviceType();
16550    method public boolean isTypeBarring();
16551    method public boolean isTypeCf();
16552    method public boolean isTypeClip();
16553    method public boolean isTypeClir();
16554    method public boolean isTypeColp();
16555    method public boolean isTypeColr();
16556    method public boolean isTypeCw();
16557    method public boolean isTypeIcb();
16558    method public boolean isTypeInterrogation();
16559    method public boolean isTypeUnConditional();
16560    method public void writeToParcel(android.os.Parcel, int);
16561    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.ImsSsData> CREATOR;
16562    field public static final int RESULT_SUCCESS = 0; // 0x0
16563    field public static final int SERVICE_CLASS_DATA = 2; // 0x2
16564    field public static final int SERVICE_CLASS_DATA_CIRCUIT_ASYNC = 32; // 0x20
16565    field public static final int SERVICE_CLASS_DATA_CIRCUIT_SYNC = 16; // 0x10
16566    field public static final int SERVICE_CLASS_DATA_PACKET_ACCESS = 64; // 0x40
16567    field public static final int SERVICE_CLASS_DATA_PAD = 128; // 0x80
16568    field public static final int SERVICE_CLASS_FAX = 4; // 0x4
16569    field public static final int SERVICE_CLASS_NONE = 0; // 0x0
16570    field public static final int SERVICE_CLASS_SMS = 8; // 0x8
16571    field public static final int SERVICE_CLASS_VOICE = 1; // 0x1
16572    field public static final int SS_ACTIVATION = 0; // 0x0
16573    field public static final int SS_ALL_BARRING = 18; // 0x12
16574    field public static final int SS_ALL_DATA_TELESERVICES = 3; // 0x3
16575    field public static final int SS_ALL_TELESERVICES_EXCEPT_SMS = 5; // 0x5
16576    field public static final int SS_ALL_TELESEVICES = 1; // 0x1
16577    field public static final int SS_ALL_TELE_AND_BEARER_SERVICES = 0; // 0x0
16578    field public static final int SS_BAIC = 16; // 0x10
16579    field public static final int SS_BAIC_ROAMING = 17; // 0x11
16580    field public static final int SS_BAOC = 13; // 0xd
16581    field public static final int SS_BAOIC = 14; // 0xe
16582    field public static final int SS_BAOIC_EXC_HOME = 15; // 0xf
16583    field public static final int SS_CFU = 0; // 0x0
16584    field public static final int SS_CFUT = 6; // 0x6
16585    field public static final int SS_CF_ALL = 4; // 0x4
16586    field public static final int SS_CF_ALL_CONDITIONAL = 5; // 0x5
16587    field public static final int SS_CF_BUSY = 1; // 0x1
16588    field public static final int SS_CF_NOT_REACHABLE = 3; // 0x3
16589    field public static final int SS_CF_NO_REPLY = 2; // 0x2
16590    field public static final int SS_CLIP = 7; // 0x7
16591    field public static final int SS_CLIR = 8; // 0x8
16592    field public static final int SS_CNAP = 11; // 0xb
16593    field public static final int SS_COLP = 9; // 0x9
16594    field public static final int SS_COLR = 10; // 0xa
16595    field public static final int SS_DEACTIVATION = 1; // 0x1
16596    field public static final int SS_ERASURE = 4; // 0x4
16597    field public static final int SS_INCOMING_BARRING = 20; // 0x14
16598    field public static final int SS_INCOMING_BARRING_ANONYMOUS = 22; // 0x16
16599    field public static final int SS_INCOMING_BARRING_DN = 21; // 0x15
16600    field public static final int SS_INTERROGATION = 2; // 0x2
16601    field public static final int SS_OUTGOING_BARRING = 19; // 0x13
16602    field public static final int SS_REGISTRATION = 3; // 0x3
16603    field public static final int SS_SMS_SERVICES = 4; // 0x4
16604    field public static final int SS_TELEPHONY = 2; // 0x2
16605    field public static final int SS_WAIT = 12; // 0xc
16606  }
16607
16608  public static final class ImsSsData.Builder {
16609    ctor public ImsSsData.Builder(int, int, int, int, int);
16610    method @NonNull public android.telephony.ims.ImsSsData build();
16611    method @NonNull public android.telephony.ims.ImsSsData.Builder setCallForwardingInfo(@NonNull java.util.List<android.telephony.ims.ImsCallForwardInfo>);
16612    method @NonNull public android.telephony.ims.ImsSsData.Builder setSuppServiceInfo(@NonNull java.util.List<android.telephony.ims.ImsSsInfo>);
16613  }
16614
16615  public final class ImsSsInfo implements android.os.Parcelable {
16616    ctor @Deprecated public ImsSsInfo(int, @Nullable String);
16617    method public int describeContents();
16618    method public int getClirInterrogationStatus();
16619    method public int getClirOutgoingState();
16620    method @Deprecated public String getIcbNum();
16621    method @Nullable public String getIncomingCommunicationBarringNumber();
16622    method public int getProvisionStatus();
16623    method public int getStatus();
16624    method public void writeToParcel(android.os.Parcel, int);
16625    field public static final int CLIR_OUTGOING_DEFAULT = 0; // 0x0
16626    field public static final int CLIR_OUTGOING_INVOCATION = 1; // 0x1
16627    field public static final int CLIR_OUTGOING_SUPPRESSION = 2; // 0x2
16628    field public static final int CLIR_STATUS_NOT_PROVISIONED = 0; // 0x0
16629    field public static final int CLIR_STATUS_PROVISIONED_PERMANENT = 1; // 0x1
16630    field public static final int CLIR_STATUS_TEMPORARILY_ALLOWED = 4; // 0x4
16631    field public static final int CLIR_STATUS_TEMPORARILY_RESTRICTED = 3; // 0x3
16632    field public static final int CLIR_STATUS_UNKNOWN = 2; // 0x2
16633    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.ImsSsInfo> CREATOR;
16634    field public static final int DISABLED = 0; // 0x0
16635    field public static final int ENABLED = 1; // 0x1
16636    field public static final int NOT_REGISTERED = -1; // 0xffffffff
16637    field public static final int SERVICE_NOT_PROVISIONED = 0; // 0x0
16638    field public static final int SERVICE_PROVISIONED = 1; // 0x1
16639    field public static final int SERVICE_PROVISIONING_UNKNOWN = -1; // 0xffffffff
16640  }
16641
16642  public static final class ImsSsInfo.Builder {
16643    ctor public ImsSsInfo.Builder(int);
16644    method @NonNull public android.telephony.ims.ImsSsInfo build();
16645    method @NonNull public android.telephony.ims.ImsSsInfo.Builder setClirInterrogationStatus(int);
16646    method @NonNull public android.telephony.ims.ImsSsInfo.Builder setClirOutgoingState(int);
16647    method @NonNull public android.telephony.ims.ImsSsInfo.Builder setIncomingCommunicationBarringNumber(@NonNull String);
16648    method @NonNull public android.telephony.ims.ImsSsInfo.Builder setProvisionStatus(int);
16649  }
16650
16651  public final class ImsStreamMediaProfile implements android.os.Parcelable {
16652    ctor public ImsStreamMediaProfile(int, int, int, int, int);
16653    method public void copyFrom(android.telephony.ims.ImsStreamMediaProfile);
16654    method public int describeContents();
16655    method @Nullable public android.telephony.ims.AudioCodecAttributes getAudioCodecAttributes();
16656    method public int getAudioDirection();
16657    method public int getAudioQuality();
16658    method public int getRttMode();
16659    method public int getVideoDirection();
16660    method public int getVideoQuality();
16661    method public boolean isReceivingRttAudio();
16662    method public boolean isRttCall();
16663    method public void setAudioCodecAttributes(@NonNull android.telephony.ims.AudioCodecAttributes);
16664    method public void setReceivingRttAudio(boolean);
16665    method public void setRttMode(int);
16666    method public void writeToParcel(android.os.Parcel, int);
16667    field public static final int AUDIO_QUALITY_AMR = 1; // 0x1
16668    field public static final int AUDIO_QUALITY_AMR_WB = 2; // 0x2
16669    field public static final int AUDIO_QUALITY_EVRC = 4; // 0x4
16670    field public static final int AUDIO_QUALITY_EVRC_B = 5; // 0x5
16671    field public static final int AUDIO_QUALITY_EVRC_NW = 7; // 0x7
16672    field public static final int AUDIO_QUALITY_EVRC_WB = 6; // 0x6
16673    field public static final int AUDIO_QUALITY_EVS_FB = 20; // 0x14
16674    field public static final int AUDIO_QUALITY_EVS_NB = 17; // 0x11
16675    field public static final int AUDIO_QUALITY_EVS_SWB = 19; // 0x13
16676    field public static final int AUDIO_QUALITY_EVS_WB = 18; // 0x12
16677    field public static final int AUDIO_QUALITY_G711A = 13; // 0xd
16678    field public static final int AUDIO_QUALITY_G711AB = 15; // 0xf
16679    field public static final int AUDIO_QUALITY_G711U = 11; // 0xb
16680    field public static final int AUDIO_QUALITY_G722 = 14; // 0xe
16681    field public static final int AUDIO_QUALITY_G723 = 12; // 0xc
16682    field public static final int AUDIO_QUALITY_G729 = 16; // 0x10
16683    field public static final int AUDIO_QUALITY_GSM_EFR = 8; // 0x8
16684    field public static final int AUDIO_QUALITY_GSM_FR = 9; // 0x9
16685    field public static final int AUDIO_QUALITY_GSM_HR = 10; // 0xa
16686    field public static final int AUDIO_QUALITY_NONE = 0; // 0x0
16687    field public static final int AUDIO_QUALITY_QCELP13K = 3; // 0x3
16688    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.ImsStreamMediaProfile> CREATOR;
16689    field public static final int DIRECTION_INACTIVE = 0; // 0x0
16690    field public static final int DIRECTION_INVALID = -1; // 0xffffffff
16691    field public static final int DIRECTION_RECEIVE = 1; // 0x1
16692    field public static final int DIRECTION_SEND = 2; // 0x2
16693    field public static final int DIRECTION_SEND_RECEIVE = 3; // 0x3
16694    field public static final int RTT_MODE_DISABLED = 0; // 0x0
16695    field public static final int RTT_MODE_FULL = 1; // 0x1
16696    field public static final int VIDEO_QUALITY_NONE = 0; // 0x0
16697    field public static final int VIDEO_QUALITY_QCIF = 1; // 0x1
16698    field public static final int VIDEO_QUALITY_QVGA_LANDSCAPE = 2; // 0x2
16699    field public static final int VIDEO_QUALITY_QVGA_PORTRAIT = 4; // 0x4
16700    field public static final int VIDEO_QUALITY_VGA_LANDSCAPE = 8; // 0x8
16701    field public static final int VIDEO_QUALITY_VGA_PORTRAIT = 16; // 0x10
16702  }
16703
16704  public final class ImsSuppServiceNotification implements android.os.Parcelable {
16705    ctor public ImsSuppServiceNotification(int, int, int, int, String, String[]);
16706    method public int describeContents();
16707    method public void writeToParcel(android.os.Parcel, int);
16708    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.ImsSuppServiceNotification> CREATOR;
16709    field public final int code;
16710    field public final String[] history;
16711    field public final int index;
16712    field public final int notificationType;
16713    field public final String number;
16714    field public final int type;
16715  }
16716
16717  public class ImsUtListener {
16718    method public void onLineIdentificationSupplementaryServiceResponse(int, @NonNull android.telephony.ims.ImsSsInfo);
16719    method public void onSupplementaryServiceIndication(android.telephony.ims.ImsSsData);
16720    method public void onUtConfigurationCallBarringQueried(int, android.telephony.ims.ImsSsInfo[]);
16721    method public void onUtConfigurationCallForwardQueried(int, android.telephony.ims.ImsCallForwardInfo[]);
16722    method public void onUtConfigurationCallWaitingQueried(int, android.telephony.ims.ImsSsInfo[]);
16723    method @Deprecated public void onUtConfigurationQueried(int, android.os.Bundle);
16724    method public void onUtConfigurationQueryFailed(int, android.telephony.ims.ImsReasonInfo);
16725    method public void onUtConfigurationUpdateFailed(int, android.telephony.ims.ImsReasonInfo);
16726    method public void onUtConfigurationUpdated(int);
16727    field @Deprecated public static final String BUNDLE_KEY_CLIR = "queryClir";
16728    field @Deprecated public static final String BUNDLE_KEY_SSINFO = "imsSsInfo";
16729  }
16730
16731  public abstract class ImsVideoCallProvider {
16732    ctor public ImsVideoCallProvider();
16733    method public void changeCallDataUsage(long);
16734    method public void changeCameraCapabilities(android.telecom.VideoProfile.CameraCapabilities);
16735    method public void changePeerDimensions(int, int);
16736    method public void changeVideoQuality(int);
16737    method public void handleCallSessionEvent(int);
16738    method public abstract void onRequestCallDataUsage();
16739    method public abstract void onRequestCameraCapabilities();
16740    method public abstract void onSendSessionModifyRequest(android.telecom.VideoProfile, android.telecom.VideoProfile);
16741    method public abstract void onSendSessionModifyResponse(android.telecom.VideoProfile);
16742    method public abstract void onSetCamera(String);
16743    method public void onSetCamera(String, int);
16744    method public abstract void onSetDeviceOrientation(int);
16745    method public abstract void onSetDisplaySurface(android.view.Surface);
16746    method public abstract void onSetPauseImage(android.net.Uri);
16747    method public abstract void onSetPreviewSurface(android.view.Surface);
16748    method public abstract void onSetZoom(float);
16749    method public void receiveSessionModifyRequest(android.telecom.VideoProfile);
16750    method public void receiveSessionModifyResponse(int, android.telecom.VideoProfile, android.telecom.VideoProfile);
16751  }
16752
16753  public final class MediaQualityStatus implements android.os.Parcelable {
16754    ctor public MediaQualityStatus(@NonNull String, int, int, @IntRange(from=0, to=100) int, @IntRange(from=0) int, @IntRange(from=0) long);
16755    method public int describeContents();
16756    method @NonNull public String getCallSessionId();
16757    method public int getMediaSessionType();
16758    method @IntRange(from=0) public long getRtpInactivityMillis();
16759    method @IntRange(from=0) public int getRtpJitterMillis();
16760    method @IntRange(from=0, to=100) public int getRtpPacketLossRate();
16761    method public int getTransportType();
16762    method public void writeToParcel(@NonNull android.os.Parcel, int);
16763    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.MediaQualityStatus> CREATOR;
16764    field public static final int MEDIA_SESSION_TYPE_AUDIO = 1; // 0x1
16765    field public static final int MEDIA_SESSION_TYPE_VIDEO = 2; // 0x2
16766  }
16767
16768  public final class MediaThreshold implements android.os.Parcelable {
16769    method public int describeContents();
16770    method @NonNull public long[] getThresholdsRtpInactivityTimeMillis();
16771    method @NonNull public int[] getThresholdsRtpJitterMillis();
16772    method @NonNull public int[] getThresholdsRtpPacketLossRate();
16773    method public void writeToParcel(@NonNull android.os.Parcel, int);
16774    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.MediaThreshold> CREATOR;
16775  }
16776
16777  public class ProvisioningManager {
16778    method @NonNull public static android.telephony.ims.ProvisioningManager createForSubscriptionId(int);
16779    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) @WorkerThread public int getProvisioningIntValue(int);
16780    method @Nullable @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) @WorkerThread public String getProvisioningStringValue(int);
16781    method @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) @WorkerThread public boolean getRcsProvisioningStatusForCapability(int);
16782    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;
16783    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void notifyRcsAutoConfigurationReceived(@NonNull byte[], boolean);
16784    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;
16785    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;
16786    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) @WorkerThread public int setProvisioningIntValue(int, int);
16787    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) @WorkerThread public int setProvisioningStringValue(int, @NonNull String);
16788    method @RequiresPermission(android.Manifest.permission.PERFORM_IMS_SINGLE_REGISTRATION) public void setRcsClientConfiguration(@NonNull android.telephony.ims.RcsClientConfiguration) throws android.telephony.ims.ImsException;
16789    method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) @WorkerThread public void setRcsProvisioningStatusForCapability(int, boolean);
16790    method @RequiresPermission(android.Manifest.permission.PERFORM_IMS_SINGLE_REGISTRATION) public void triggerRcsReconfiguration();
16791    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void unregisterProvisioningChangedCallback(@NonNull android.telephony.ims.ProvisioningManager.Callback);
16792    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);
16793    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";
16794    field public static final String EXTRA_STATUS = "android.telephony.ims.extra.STATUS";
16795    field public static final String EXTRA_SUBSCRIPTION_ID = "android.telephony.ims.extra.SUBSCRIPTION_ID";
16796    field public static final int KEY_VOICE_OVER_WIFI_ENTITLEMENT_ID = 67; // 0x43
16797    field public static final int KEY_VOICE_OVER_WIFI_MODE_OVERRIDE = 27; // 0x1b
16798    field public static final int KEY_VOICE_OVER_WIFI_ROAMING_ENABLED_OVERRIDE = 26; // 0x1a
16799    field public static final int PROVISIONING_VALUE_DISABLED = 0; // 0x0
16800    field public static final int PROVISIONING_VALUE_ENABLED = 1; // 0x1
16801    field public static final int STATUS_CAPABLE = 0; // 0x0
16802    field public static final int STATUS_CARRIER_NOT_CAPABLE = 2; // 0x2
16803    field public static final int STATUS_DEVICE_NOT_CAPABLE = 1; // 0x1
16804    field public static final String STRING_QUERY_RESULT_ERROR_GENERIC = "STRING_QUERY_RESULT_ERROR_GENERIC";
16805    field public static final String STRING_QUERY_RESULT_ERROR_NOT_READY = "STRING_QUERY_RESULT_ERROR_NOT_READY";
16806  }
16807
16808  public static class ProvisioningManager.Callback {
16809    ctor public ProvisioningManager.Callback();
16810    method public void onProvisioningIntChanged(int, int);
16811    method public void onProvisioningStringChanged(int, @NonNull String);
16812  }
16813
16814  public static class ProvisioningManager.RcsProvisioningCallback {
16815    ctor public ProvisioningManager.RcsProvisioningCallback();
16816    method public void onAutoConfigurationErrorReceived(int, @NonNull String);
16817    method public void onConfigurationChanged(@NonNull byte[]);
16818    method public void onConfigurationReset();
16819    method public void onPreProvisioningReceived(@NonNull byte[]);
16820    method public void onRemoved();
16821  }
16822
16823  public final class PublishAttributes implements android.os.Parcelable {
16824    method public int describeContents();
16825    method @NonNull public java.util.List<android.telephony.ims.RcsContactPresenceTuple> getPresenceTuples();
16826    method public int getPublishState();
16827    method @Nullable public android.telephony.ims.SipDetails getSipDetails();
16828    method public void writeToParcel(@NonNull android.os.Parcel, int);
16829    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.PublishAttributes> CREATOR;
16830  }
16831
16832  public final class RcsClientConfiguration implements android.os.Parcelable {
16833    ctor @Deprecated public RcsClientConfiguration(@NonNull String, @NonNull String, @NonNull String, @NonNull String);
16834    ctor public RcsClientConfiguration(@NonNull String, @NonNull String, @NonNull String, @NonNull String, boolean);
16835    method public int describeContents();
16836    method @NonNull public String getClientVendor();
16837    method @NonNull public String getClientVersion();
16838    method @NonNull public String getRcsProfile();
16839    method @NonNull public String getRcsVersion();
16840    method public boolean isRcsEnabledByUser();
16841    method public void writeToParcel(@NonNull android.os.Parcel, int);
16842    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.RcsClientConfiguration> CREATOR;
16843    field public static final String RCS_PROFILE_1_0 = "UP_1.0";
16844    field public static final String RCS_PROFILE_2_3 = "UP_2.3";
16845    field public static final String RCS_PROFILE_2_4 = "UP_2.4";
16846  }
16847
16848  public final class RcsContactPresenceTuple implements android.os.Parcelable {
16849    method public int describeContents();
16850    method @Nullable public android.net.Uri getContactUri();
16851    method @Nullable public android.telephony.ims.RcsContactPresenceTuple.ServiceCapabilities getServiceCapabilities();
16852    method @Nullable public String getServiceDescription();
16853    method @NonNull public String getServiceId();
16854    method @NonNull public String getServiceVersion();
16855    method @NonNull public String getStatus();
16856    method @Nullable public java.time.Instant getTime();
16857    method public void writeToParcel(@NonNull android.os.Parcel, int);
16858    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.RcsContactPresenceTuple> CREATOR;
16859    field public static final String SERVICE_ID_CALL_COMPOSER = "org.3gpp.urn:urn-7:3gpp-service.ims.icsi.gsma.callcomposer";
16860    field public static final String SERVICE_ID_CHATBOT = "org.3gpp.urn:urn-7:3gpp-application.ims.iari.rcs.chatbot";
16861    field public static final String SERVICE_ID_CHATBOT_ROLE = "org.gsma.rcs.isbot";
16862    field public static final String SERVICE_ID_CHATBOT_STANDALONE = " org.3gpp.urn:urn-7:3gpp-application.ims.iari.rcs.chatbot.sa";
16863    field public static final String SERVICE_ID_CHAT_V1 = "org.openmobilealliance:IM-session";
16864    field public static final String SERVICE_ID_CHAT_V2 = "org.openmobilealliance:ChatSession";
16865    field public static final String SERVICE_ID_FT = "org.openmobilealliance:File-Transfer-HTTP";
16866    field public static final String SERVICE_ID_FT_OVER_SMS = "org.3gpp.urn:urn-7:3gpp-application.ims.iari.rcs.ftsms";
16867    field public static final String SERVICE_ID_GEO_PUSH = "org.3gpp.urn:urn-7:3gpp-application.ims.iari.rcs.geopush";
16868    field public static final String SERVICE_ID_GEO_PUSH_VIA_SMS = "org.3gpp.urn:urn-7:3gpp-application.ims.iari.rcs.geosms";
16869    field public static final String SERVICE_ID_MMTEL = "org.3gpp.urn:urn-7:3gpp-service.ims.icsi.mmtel";
16870    field public static final String SERVICE_ID_POST_CALL = "org.3gpp.urn:urn-7:3gpp-service.ims.icsi.gsma.callunanswered";
16871    field public static final String SERVICE_ID_SHARED_MAP = "org.3gpp.urn:urn-7:3gpp-service.ims.icsi.gsma.sharedmap";
16872    field public static final String SERVICE_ID_SHARED_SKETCH = "org.3gpp.urn:urn-7:3gpp-service.ims.icsi.gsma.sharedsketch";
16873    field public static final String SERVICE_ID_SLM = "org.openmobilealliance:StandaloneMsg";
16874    field public static final String TUPLE_BASIC_STATUS_CLOSED = "closed";
16875    field public static final String TUPLE_BASIC_STATUS_OPEN = "open";
16876  }
16877
16878  public static final class RcsContactPresenceTuple.Builder {
16879    ctor public RcsContactPresenceTuple.Builder(@NonNull String, @NonNull String, @NonNull String);
16880    method @NonNull public android.telephony.ims.RcsContactPresenceTuple build();
16881    method @NonNull public android.telephony.ims.RcsContactPresenceTuple.Builder setContactUri(@NonNull android.net.Uri);
16882    method @NonNull public android.telephony.ims.RcsContactPresenceTuple.Builder setServiceCapabilities(@NonNull android.telephony.ims.RcsContactPresenceTuple.ServiceCapabilities);
16883    method @NonNull public android.telephony.ims.RcsContactPresenceTuple.Builder setServiceDescription(@NonNull String);
16884    method @NonNull public android.telephony.ims.RcsContactPresenceTuple.Builder setTime(@NonNull java.time.Instant);
16885  }
16886
16887  public static final class RcsContactPresenceTuple.ServiceCapabilities implements android.os.Parcelable {
16888    method public int describeContents();
16889    method @NonNull public java.util.List<java.lang.String> getSupportedDuplexModes();
16890    method @NonNull public java.util.List<java.lang.String> getUnsupportedDuplexModes();
16891    method public boolean isAudioCapable();
16892    method public boolean isVideoCapable();
16893    method public void writeToParcel(@NonNull android.os.Parcel, int);
16894    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.RcsContactPresenceTuple.ServiceCapabilities> CREATOR;
16895    field public static final String DUPLEX_MODE_FULL = "full";
16896    field public static final String DUPLEX_MODE_HALF = "half";
16897    field public static final String DUPLEX_MODE_RECEIVE_ONLY = "receive-only";
16898    field public static final String DUPLEX_MODE_SEND_ONLY = "send-only";
16899  }
16900
16901  public static final class RcsContactPresenceTuple.ServiceCapabilities.Builder {
16902    ctor public RcsContactPresenceTuple.ServiceCapabilities.Builder(boolean, boolean);
16903    method @NonNull public android.telephony.ims.RcsContactPresenceTuple.ServiceCapabilities.Builder addSupportedDuplexMode(@NonNull String);
16904    method @NonNull public android.telephony.ims.RcsContactPresenceTuple.ServiceCapabilities.Builder addUnsupportedDuplexMode(@NonNull String);
16905    method @NonNull public android.telephony.ims.RcsContactPresenceTuple.ServiceCapabilities build();
16906  }
16907
16908  public final class RcsContactUceCapability implements android.os.Parcelable {
16909    method public int describeContents();
16910    method public int getCapabilityMechanism();
16911    method @Nullable public android.telephony.ims.RcsContactPresenceTuple getCapabilityTuple(@NonNull String);
16912    method @NonNull public java.util.List<android.telephony.ims.RcsContactPresenceTuple> getCapabilityTuples();
16913    method @NonNull public android.net.Uri getContactUri();
16914    method @Nullable public android.net.Uri getEntityUri();
16915    method @NonNull public java.util.Set<java.lang.String> getFeatureTags();
16916    method public int getRequestResult();
16917    method public int getSourceType();
16918    method public void writeToParcel(@NonNull android.os.Parcel, int);
16919    field public static final int CAPABILITY_MECHANISM_OPTIONS = 2; // 0x2
16920    field public static final int CAPABILITY_MECHANISM_PRESENCE = 1; // 0x1
16921    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.RcsContactUceCapability> CREATOR;
16922    field public static final int REQUEST_RESULT_FOUND = 3; // 0x3
16923    field public static final int REQUEST_RESULT_NOT_FOUND = 2; // 0x2
16924    field public static final int REQUEST_RESULT_NOT_ONLINE = 1; // 0x1
16925    field public static final int REQUEST_RESULT_UNKNOWN = 0; // 0x0
16926    field public static final int SOURCE_TYPE_CACHED = 1; // 0x1
16927    field public static final int SOURCE_TYPE_NETWORK = 0; // 0x0
16928  }
16929
16930  public static final class RcsContactUceCapability.OptionsBuilder {
16931    ctor public RcsContactUceCapability.OptionsBuilder(@NonNull android.net.Uri);
16932    method @NonNull public android.telephony.ims.RcsContactUceCapability.OptionsBuilder addFeatureTag(@NonNull String);
16933    method @NonNull public android.telephony.ims.RcsContactUceCapability.OptionsBuilder addFeatureTags(@NonNull java.util.Set<java.lang.String>);
16934    method @NonNull public android.telephony.ims.RcsContactUceCapability build();
16935    method @NonNull public android.telephony.ims.RcsContactUceCapability.OptionsBuilder setRequestResult(int);
16936  }
16937
16938  public static final class RcsContactUceCapability.PresenceBuilder {
16939    ctor public RcsContactUceCapability.PresenceBuilder(@NonNull android.net.Uri, int, int);
16940    method @NonNull public android.telephony.ims.RcsContactUceCapability.PresenceBuilder addCapabilityTuple(@NonNull android.telephony.ims.RcsContactPresenceTuple);
16941    method @NonNull public android.telephony.ims.RcsContactUceCapability.PresenceBuilder addCapabilityTuples(@NonNull java.util.List<android.telephony.ims.RcsContactPresenceTuple>);
16942    method @NonNull public android.telephony.ims.RcsContactUceCapability build();
16943    method @NonNull public android.telephony.ims.RcsContactUceCapability.PresenceBuilder setEntityUri(@NonNull android.net.Uri);
16944  }
16945
16946  public class RcsUceAdapter {
16947    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;
16948    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getUcePublishState() throws android.telephony.ims.ImsException;
16949    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void removeOnPublishStateChangedListener(@NonNull android.telephony.ims.RcsUceAdapter.OnPublishStateChangedListener) throws android.telephony.ims.ImsException;
16950    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;
16951    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;
16952    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setUceSettingEnabled(boolean) throws android.telephony.ims.ImsException;
16953    field @Deprecated public static final int CAPABILITY_TYPE_PRESENCE_UCE = 2; // 0x2
16954    field public static final int CAPABILITY_UPDATE_TRIGGER_ETAG_EXPIRED = 1; // 0x1
16955    field public static final int CAPABILITY_UPDATE_TRIGGER_MOVE_TO_2G = 7; // 0x7
16956    field public static final int CAPABILITY_UPDATE_TRIGGER_MOVE_TO_3G = 6; // 0x6
16957    field public static final int CAPABILITY_UPDATE_TRIGGER_MOVE_TO_EHRPD = 4; // 0x4
16958    field public static final int CAPABILITY_UPDATE_TRIGGER_MOVE_TO_HSPAPLUS = 5; // 0x5
16959    field public static final int CAPABILITY_UPDATE_TRIGGER_MOVE_TO_INTERNET_PDN = 12; // 0xc
16960    field public static final int CAPABILITY_UPDATE_TRIGGER_MOVE_TO_IWLAN = 9; // 0x9
16961    field public static final int CAPABILITY_UPDATE_TRIGGER_MOVE_TO_LTE_VOPS_DISABLED = 2; // 0x2
16962    field public static final int CAPABILITY_UPDATE_TRIGGER_MOVE_TO_LTE_VOPS_ENABLED = 3; // 0x3
16963    field public static final int CAPABILITY_UPDATE_TRIGGER_MOVE_TO_NR5G_VOPS_DISABLED = 10; // 0xa
16964    field public static final int CAPABILITY_UPDATE_TRIGGER_MOVE_TO_NR5G_VOPS_ENABLED = 11; // 0xb
16965    field public static final int CAPABILITY_UPDATE_TRIGGER_MOVE_TO_WLAN = 8; // 0x8
16966    field public static final int CAPABILITY_UPDATE_TRIGGER_UNKNOWN = 0; // 0x0
16967    field public static final int ERROR_FORBIDDEN = 6; // 0x6
16968    field public static final int ERROR_GENERIC_FAILURE = 1; // 0x1
16969    field public static final int ERROR_INSUFFICIENT_MEMORY = 10; // 0xa
16970    field public static final int ERROR_LOST_NETWORK = 11; // 0xb
16971    field public static final int ERROR_NOT_AUTHORIZED = 5; // 0x5
16972    field public static final int ERROR_NOT_AVAILABLE = 3; // 0x3
16973    field public static final int ERROR_NOT_ENABLED = 2; // 0x2
16974    field public static final int ERROR_NOT_FOUND = 7; // 0x7
16975    field public static final int ERROR_NOT_REGISTERED = 4; // 0x4
16976    field public static final int ERROR_REQUEST_TIMEOUT = 9; // 0x9
16977    field public static final int ERROR_REQUEST_TOO_LARGE = 8; // 0x8
16978    field public static final int ERROR_SERVER_UNAVAILABLE = 12; // 0xc
16979    field public static final int PUBLISH_STATE_NOT_PUBLISHED = 2; // 0x2
16980    field public static final int PUBLISH_STATE_OK = 1; // 0x1
16981    field public static final int PUBLISH_STATE_OTHER_ERROR = 6; // 0x6
16982    field public static final int PUBLISH_STATE_PUBLISHING = 7; // 0x7
16983    field public static final int PUBLISH_STATE_RCS_PROVISION_ERROR = 4; // 0x4
16984    field public static final int PUBLISH_STATE_REQUEST_TIMEOUT = 5; // 0x5
16985    field public static final int PUBLISH_STATE_VOICE_PROVISION_ERROR = 3; // 0x3
16986  }
16987
16988  public static interface RcsUceAdapter.CapabilitiesCallback {
16989    method public void onCapabilitiesReceived(@NonNull java.util.List<android.telephony.ims.RcsContactUceCapability>);
16990    method public default void onComplete();
16991    method public default void onComplete(@Nullable android.telephony.ims.SipDetails);
16992    method public default void onError(int, long);
16993    method public default void onError(int, long, @Nullable android.telephony.ims.SipDetails);
16994  }
16995
16996  public static interface RcsUceAdapter.OnPublishStateChangedListener {
16997    method @Deprecated public void onPublishStateChange(int);
16998    method public default void onPublishStateChange(@NonNull android.telephony.ims.PublishAttributes);
16999  }
17000
17001  public interface RegistrationManager {
17002    field public static final int SUGGESTED_ACTION_NONE = 0; // 0x0
17003    field public static final int SUGGESTED_ACTION_TRIGGER_PLMN_BLOCK = 1; // 0x1
17004    field public static final int SUGGESTED_ACTION_TRIGGER_PLMN_BLOCK_WITH_TIMEOUT = 2; // 0x2
17005  }
17006
17007  public static class RegistrationManager.RegistrationCallback {
17008    method public void onUnregistered(@NonNull android.telephony.ims.ImsReasonInfo, @NonNull android.telephony.ims.SipDetails);
17009  }
17010
17011  public final class RtpHeaderExtension implements android.os.Parcelable {
17012    ctor public RtpHeaderExtension(@IntRange(from=1, to=14) int, @NonNull byte[]);
17013    method public int describeContents();
17014    method @NonNull public byte[] getExtensionData();
17015    method @IntRange(from=1, to=14) public int getLocalIdentifier();
17016    method public void writeToParcel(@NonNull android.os.Parcel, int);
17017    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.RtpHeaderExtension> CREATOR;
17018  }
17019
17020  public final class RtpHeaderExtensionType implements android.os.Parcelable {
17021    ctor public RtpHeaderExtensionType(@IntRange(from=1, to=14) int, @NonNull android.net.Uri);
17022    method public int describeContents();
17023    method @IntRange(from=1, to=14) public int getLocalIdentifier();
17024    method @NonNull public android.net.Uri getUri();
17025    method public void writeToParcel(@NonNull android.os.Parcel, int);
17026    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.RtpHeaderExtensionType> CREATOR;
17027  }
17028
17029  public final class SipDelegateConfiguration implements android.os.Parcelable {
17030    method public int describeContents();
17031    method @Nullable public String getHomeDomain();
17032    method @Nullable public String getImei();
17033    method @Nullable public android.telephony.ims.SipDelegateConfiguration.IpSecConfiguration getIpSecConfiguration();
17034    method @NonNull public java.net.InetSocketAddress getLocalAddress();
17035    method public int getMaxUdpPayloadSizeBytes();
17036    method @Nullable public java.net.InetSocketAddress getNatSocketAddress();
17037    method @Nullable public String getPrivateUserIdentifier();
17038    method @Nullable public android.net.Uri getPublicGruuUri();
17039    method @Nullable public String getPublicUserIdentifier();
17040    method @Nullable public String getSipAssociatedUriHeader();
17041    method @Nullable public String getSipAuthenticationHeader();
17042    method @Nullable public String getSipAuthenticationNonce();
17043    method @Nullable public String getSipCniHeader();
17044    method @Nullable public String getSipContactUserParameter();
17045    method @Nullable public String getSipPaniHeader();
17046    method @Nullable public String getSipPathHeader();
17047    method @Nullable public String getSipPlaniHeader();
17048    method @NonNull public java.net.InetSocketAddress getSipServerAddress();
17049    method @Nullable public String getSipServiceRouteHeader();
17050    method @Nullable public String getSipUserAgentHeader();
17051    method public int getTransportType();
17052    method @IntRange(from=0) public long getVersion();
17053    method public boolean isSipCompactFormEnabled();
17054    method public boolean isSipKeepaliveEnabled();
17055    method public void writeToParcel(@NonNull android.os.Parcel, int);
17056    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.SipDelegateConfiguration> CREATOR;
17057    field public static final int SIP_TRANSPORT_TCP = 1; // 0x1
17058    field public static final int SIP_TRANSPORT_UDP = 0; // 0x0
17059    field public static final int UDP_PAYLOAD_SIZE_UNDEFINED = -1; // 0xffffffff
17060  }
17061
17062  public static final class SipDelegateConfiguration.Builder {
17063    ctor public SipDelegateConfiguration.Builder(@IntRange(from=0) long, int, @NonNull java.net.InetSocketAddress, @NonNull java.net.InetSocketAddress);
17064    ctor public SipDelegateConfiguration.Builder(@NonNull android.telephony.ims.SipDelegateConfiguration);
17065    method @NonNull public android.telephony.ims.SipDelegateConfiguration build();
17066    method @NonNull public android.telephony.ims.SipDelegateConfiguration.Builder setHomeDomain(@Nullable String);
17067    method @NonNull public android.telephony.ims.SipDelegateConfiguration.Builder setImei(@Nullable String);
17068    method @NonNull public android.telephony.ims.SipDelegateConfiguration.Builder setIpSecConfiguration(@Nullable android.telephony.ims.SipDelegateConfiguration.IpSecConfiguration);
17069    method @NonNull public android.telephony.ims.SipDelegateConfiguration.Builder setMaxUdpPayloadSizeBytes(@IntRange(from=1) int);
17070    method @NonNull public android.telephony.ims.SipDelegateConfiguration.Builder setNatSocketAddress(@Nullable java.net.InetSocketAddress);
17071    method @NonNull public android.telephony.ims.SipDelegateConfiguration.Builder setPrivateUserIdentifier(@Nullable String);
17072    method @NonNull public android.telephony.ims.SipDelegateConfiguration.Builder setPublicGruuUri(@Nullable android.net.Uri);
17073    method @NonNull public android.telephony.ims.SipDelegateConfiguration.Builder setPublicUserIdentifier(@Nullable String);
17074    method @NonNull public android.telephony.ims.SipDelegateConfiguration.Builder setSipAssociatedUriHeader(@Nullable String);
17075    method @NonNull public android.telephony.ims.SipDelegateConfiguration.Builder setSipAuthenticationHeader(@Nullable String);
17076    method @NonNull public android.telephony.ims.SipDelegateConfiguration.Builder setSipAuthenticationNonce(@Nullable String);
17077    method @NonNull public android.telephony.ims.SipDelegateConfiguration.Builder setSipCniHeader(@Nullable String);
17078    method @NonNull public android.telephony.ims.SipDelegateConfiguration.Builder setSipCompactFormEnabled(boolean);
17079    method @NonNull public android.telephony.ims.SipDelegateConfiguration.Builder setSipContactUserParameter(@Nullable String);
17080    method @NonNull public android.telephony.ims.SipDelegateConfiguration.Builder setSipKeepaliveEnabled(boolean);
17081    method @NonNull public android.telephony.ims.SipDelegateConfiguration.Builder setSipPaniHeader(@Nullable String);
17082    method @NonNull public android.telephony.ims.SipDelegateConfiguration.Builder setSipPathHeader(@Nullable String);
17083    method @NonNull public android.telephony.ims.SipDelegateConfiguration.Builder setSipPlaniHeader(@Nullable String);
17084    method @NonNull public android.telephony.ims.SipDelegateConfiguration.Builder setSipServiceRouteHeader(@Nullable String);
17085    method @NonNull public android.telephony.ims.SipDelegateConfiguration.Builder setSipUserAgentHeader(@Nullable String);
17086  }
17087
17088  public static final class SipDelegateConfiguration.IpSecConfiguration {
17089    ctor public SipDelegateConfiguration.IpSecConfiguration(int, int, int, int, int, int, @NonNull String);
17090    method public int getLastLocalTxPort();
17091    method public int getLastRemoteTxPort();
17092    method public int getLocalRxPort();
17093    method public int getLocalTxPort();
17094    method public int getRemoteRxPort();
17095    method public int getRemoteTxPort();
17096    method @NonNull public String getSipSecurityVerifyHeader();
17097  }
17098
17099  public interface SipDelegateConnection {
17100    method public void cleanupSession(@NonNull String);
17101    method public void notifyMessageReceiveError(@NonNull String, int);
17102    method public void notifyMessageReceived(@NonNull String);
17103    method public void sendMessage(@NonNull android.telephony.ims.SipMessage, long);
17104  }
17105
17106  public class SipDelegateManager {
17107    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;
17108    method @RequiresPermission(android.Manifest.permission.PERFORM_IMS_SINGLE_REGISTRATION) public void destroySipDelegate(@NonNull android.telephony.ims.SipDelegateConnection, int);
17109    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;
17110    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;
17111    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;
17112    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);
17113    method public void unregisterImsStateCallback(@NonNull android.telephony.ims.ImsStateCallback);
17114    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void unregisterSipDialogStateCallback(@NonNull android.telephony.ims.SipDialogStateCallback) throws android.telephony.ims.ImsException;
17115    field public static final int DENIED_REASON_INVALID = 4; // 0x4
17116    field public static final int DENIED_REASON_IN_USE_BY_ANOTHER_DELEGATE = 1; // 0x1
17117    field public static final int DENIED_REASON_NOT_ALLOWED = 2; // 0x2
17118    field public static final int DENIED_REASON_SINGLE_REGISTRATION_NOT_ALLOWED = 3; // 0x3
17119    field public static final int DENIED_REASON_UNKNOWN = 0; // 0x0
17120    field public static final int MESSAGE_FAILURE_REASON_DELEGATE_CLOSED = 2; // 0x2
17121    field public static final int MESSAGE_FAILURE_REASON_DELEGATE_DEAD = 1; // 0x1
17122    field public static final int MESSAGE_FAILURE_REASON_INTERNAL_DELEGATE_STATE_TRANSITION = 11; // 0xb
17123    field public static final int MESSAGE_FAILURE_REASON_INVALID_BODY_CONTENT = 5; // 0x5
17124    field public static final int MESSAGE_FAILURE_REASON_INVALID_FEATURE_TAG = 6; // 0x6
17125    field public static final int MESSAGE_FAILURE_REASON_INVALID_HEADER_FIELDS = 4; // 0x4
17126    field public static final int MESSAGE_FAILURE_REASON_INVALID_START_LINE = 3; // 0x3
17127    field public static final int MESSAGE_FAILURE_REASON_NETWORK_NOT_AVAILABLE = 8; // 0x8
17128    field public static final int MESSAGE_FAILURE_REASON_NOT_REGISTERED = 9; // 0x9
17129    field public static final int MESSAGE_FAILURE_REASON_STALE_IMS_CONFIGURATION = 10; // 0xa
17130    field public static final int MESSAGE_FAILURE_REASON_TAG_NOT_ENABLED_FOR_DELEGATE = 7; // 0x7
17131    field public static final int MESSAGE_FAILURE_REASON_UNKNOWN = 0; // 0x0
17132    field public static final int SIP_DELEGATE_DESTROY_REASON_REQUESTED_BY_APP = 2; // 0x2
17133    field public static final int SIP_DELEGATE_DESTROY_REASON_SERVICE_DEAD = 1; // 0x1
17134    field public static final int SIP_DELEGATE_DESTROY_REASON_SUBSCRIPTION_TORN_DOWN = 4; // 0x4
17135    field public static final int SIP_DELEGATE_DESTROY_REASON_UNKNOWN = 0; // 0x0
17136    field public static final int SIP_DELEGATE_DESTROY_REASON_USER_DISABLED_RCS = 3; // 0x3
17137  }
17138
17139  public final class SipDialogState implements android.os.Parcelable {
17140    method public int describeContents();
17141    method public int getState();
17142    method public void writeToParcel(@NonNull android.os.Parcel, int);
17143    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.SipDialogState> CREATOR;
17144    field public static final int STATE_CLOSED = 2; // 0x2
17145    field public static final int STATE_CONFIRMED = 1; // 0x1
17146    field public static final int STATE_EARLY = 0; // 0x0
17147  }
17148
17149  public abstract class SipDialogStateCallback {
17150    ctor public SipDialogStateCallback();
17151    method public abstract void onActiveSipDialogsChanged(@NonNull java.util.List<android.telephony.ims.SipDialogState>);
17152    method public abstract void onError();
17153  }
17154
17155  public final class SipMessage implements android.os.Parcelable {
17156    ctor public SipMessage(@NonNull String, @NonNull String, @NonNull byte[]);
17157    method public int describeContents();
17158    method @Nullable public String getCallIdParameter();
17159    method @NonNull public byte[] getContent();
17160    method @NonNull public String getHeaderSection();
17161    method @NonNull public String getStartLine();
17162    method @NonNull public String getViaBranchParameter();
17163    method @NonNull public byte[] toEncodedMessage();
17164    method public void writeToParcel(@NonNull android.os.Parcel, int);
17165    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.SipMessage> CREATOR;
17166  }
17167
17168  public final class SrvccCall implements android.os.Parcelable {
17169    ctor public SrvccCall(@NonNull String, int, @NonNull android.telephony.ims.ImsCallProfile);
17170    method public int describeContents();
17171    method @NonNull public String getCallId();
17172    method @NonNull public android.telephony.ims.ImsCallProfile getImsCallProfile();
17173    method public int getPreciseCallState();
17174    method public void writeToParcel(@NonNull android.os.Parcel, int);
17175    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.SrvccCall> CREATOR;
17176  }
17177
17178}
17179
17180package android.telephony.ims.feature {
17181
17182  public final class CapabilityChangeRequest implements android.os.Parcelable {
17183    method public void addCapabilitiesToDisableForTech(int, int);
17184    method public void addCapabilitiesToEnableForTech(int, int);
17185    method public int describeContents();
17186    method public java.util.List<android.telephony.ims.feature.CapabilityChangeRequest.CapabilityPair> getCapabilitiesToDisable();
17187    method public java.util.List<android.telephony.ims.feature.CapabilityChangeRequest.CapabilityPair> getCapabilitiesToEnable();
17188    method public void writeToParcel(android.os.Parcel, int);
17189    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.feature.CapabilityChangeRequest> CREATOR;
17190  }
17191
17192  public static class CapabilityChangeRequest.CapabilityPair {
17193    ctor public CapabilityChangeRequest.CapabilityPair(int, int);
17194    method public int getCapability();
17195    method public int getRadioTech();
17196  }
17197
17198  public abstract class ImsFeature {
17199    ctor public ImsFeature();
17200    method public abstract void changeEnabledCapabilities(android.telephony.ims.feature.CapabilityChangeRequest, android.telephony.ims.feature.ImsFeature.CapabilityCallbackProxy);
17201    method public int getFeatureState();
17202    method public final int getSlotIndex();
17203    method public abstract void onFeatureReady();
17204    method public abstract void onFeatureRemoved();
17205    method public final void setFeatureState(int);
17206    field public static final int CAPABILITY_ERROR_GENERIC = -1; // 0xffffffff
17207    field public static final int CAPABILITY_SUCCESS = 0; // 0x0
17208    field public static final int FEATURE_EMERGENCY_MMTEL = 0; // 0x0
17209    field public static final int FEATURE_MMTEL = 1; // 0x1
17210    field public static final int FEATURE_RCS = 2; // 0x2
17211    field public static final int STATE_INITIALIZING = 1; // 0x1
17212    field public static final int STATE_READY = 2; // 0x2
17213    field public static final int STATE_UNAVAILABLE = 0; // 0x0
17214  }
17215
17216  @Deprecated public static class ImsFeature.Capabilities {
17217    field @Deprecated protected int mCapabilities;
17218  }
17219
17220  protected static class ImsFeature.CapabilityCallbackProxy {
17221    method public void onChangeCapabilityConfigurationError(int, int, int);
17222  }
17223
17224  public class MmTelFeature extends android.telephony.ims.feature.ImsFeature {
17225    ctor public MmTelFeature();
17226    ctor public MmTelFeature(@NonNull java.util.concurrent.Executor);
17227    method public void changeEnabledCapabilities(@NonNull android.telephony.ims.feature.CapabilityChangeRequest, @NonNull android.telephony.ims.feature.ImsFeature.CapabilityCallbackProxy);
17228    method public void changeOfferedRtpHeaderExtensionTypes(@NonNull java.util.Set<android.telephony.ims.RtpHeaderExtensionType>);
17229    method public void clearMediaThreshold(int);
17230    method @Nullable public android.telephony.ims.ImsCallProfile createCallProfile(int, int);
17231    method @Nullable public android.telephony.ims.stub.ImsCallSessionImplBase createCallSession(@NonNull android.telephony.ims.ImsCallProfile);
17232    method @NonNull public android.telephony.ims.stub.ImsEcbmImplBase getEcbm();
17233    method @NonNull public android.telephony.ims.stub.ImsMultiEndpointImplBase getMultiEndpoint();
17234    method @NonNull public android.telephony.ims.stub.ImsSmsImplBase getSmsImplementation();
17235    method @NonNull public android.telephony.ims.stub.ImsUtImplBase getUt();
17236    method public final void notifyCapabilitiesStatusChanged(@NonNull android.telephony.ims.feature.MmTelFeature.MmTelCapabilities);
17237    method @Deprecated public final void notifyIncomingCall(@NonNull android.telephony.ims.stub.ImsCallSessionImplBase, @NonNull android.os.Bundle);
17238    method @Nullable public final android.telephony.ims.ImsCallSessionListener notifyIncomingCall(@NonNull android.telephony.ims.stub.ImsCallSessionImplBase, @NonNull String, @NonNull android.os.Bundle);
17239    method public final void notifyMediaQualityStatusChanged(@NonNull android.telephony.ims.MediaQualityStatus);
17240    method public final void notifyRejectedCall(@NonNull android.telephony.ims.ImsCallProfile, @NonNull android.telephony.ims.ImsReasonInfo);
17241    method public void notifySrvccCanceled();
17242    method public void notifySrvccCompleted();
17243    method public void notifySrvccFailed();
17244    method public void notifySrvccStarted(@NonNull java.util.function.Consumer<java.util.List<android.telephony.ims.SrvccCall>>);
17245    method public final void notifyVoiceMessageCountUpdate(int);
17246    method public void onFeatureReady();
17247    method public void onFeatureRemoved();
17248    method public boolean queryCapabilityConfiguration(int, int);
17249    method @NonNull public final android.telephony.ims.feature.MmTelFeature.MmTelCapabilities queryCapabilityStatus();
17250    method @Nullable public android.telephony.ims.MediaQualityStatus queryMediaQualityStatus(int);
17251    method public final void setCallAudioHandler(int);
17252    method public void setMediaThreshold(int, @NonNull android.telephony.ims.MediaThreshold);
17253    method public void setTerminalBasedCallWaitingStatus(boolean);
17254    method public void setUiTtyMode(int, @Nullable android.os.Message);
17255    method public int shouldProcessCall(@NonNull String[]);
17256    field public static final int AUDIO_HANDLER_ANDROID = 0; // 0x0
17257    field public static final int AUDIO_HANDLER_BASEBAND = 1; // 0x1
17258    field public static final String EXTRA_IS_UNKNOWN_CALL = "android.telephony.ims.feature.extra.IS_UNKNOWN_CALL";
17259    field public static final String EXTRA_IS_USSD = "android.telephony.ims.feature.extra.IS_USSD";
17260    field public static final int PROCESS_CALL_CSFB = 1; // 0x1
17261    field public static final int PROCESS_CALL_IMS = 0; // 0x0
17262  }
17263
17264  public static class MmTelFeature.MmTelCapabilities extends android.telephony.ims.feature.ImsFeature.Capabilities {
17265    ctor public MmTelFeature.MmTelCapabilities();
17266    ctor @Deprecated public MmTelFeature.MmTelCapabilities(android.telephony.ims.feature.ImsFeature.Capabilities);
17267    ctor public MmTelFeature.MmTelCapabilities(int);
17268    method public final void addCapabilities(int);
17269    method public final void removeCapabilities(int);
17270  }
17271
17272  public class RcsFeature extends android.telephony.ims.feature.ImsFeature {
17273    ctor public RcsFeature();
17274    ctor public RcsFeature(@NonNull java.util.concurrent.Executor);
17275    method public void changeEnabledCapabilities(@NonNull android.telephony.ims.feature.CapabilityChangeRequest, @NonNull android.telephony.ims.feature.ImsFeature.CapabilityCallbackProxy);
17276    method @NonNull public android.telephony.ims.stub.RcsCapabilityExchangeImplBase createCapabilityExchangeImpl(@NonNull android.telephony.ims.stub.CapabilityExchangeEventListener);
17277    method public void destroyCapabilityExchangeImpl(@NonNull android.telephony.ims.stub.RcsCapabilityExchangeImplBase);
17278    method public final void notifyCapabilitiesStatusChanged(@NonNull android.telephony.ims.feature.RcsFeature.RcsImsCapabilities);
17279    method public void onFeatureReady();
17280    method public void onFeatureRemoved();
17281    method public boolean queryCapabilityConfiguration(int, int);
17282    method @NonNull public final android.telephony.ims.feature.RcsFeature.RcsImsCapabilities queryCapabilityStatus();
17283  }
17284
17285  public static class RcsFeature.RcsImsCapabilities extends android.telephony.ims.feature.ImsFeature.Capabilities {
17286    ctor public RcsFeature.RcsImsCapabilities(int);
17287    method public void addCapabilities(int);
17288    method public boolean isCapable(int);
17289    method public void removeCapabilities(int);
17290    field public static final int CAPABILITY_TYPE_NONE = 0; // 0x0
17291    field public static final int CAPABILITY_TYPE_OPTIONS_UCE = 1; // 0x1
17292    field public static final int CAPABILITY_TYPE_PRESENCE_UCE = 2; // 0x2
17293  }
17294
17295}
17296
17297package android.telephony.ims.stub {
17298
17299  public interface CapabilityExchangeEventListener {
17300    method @Deprecated public default void onPublishUpdated(int, @NonNull String, int, @NonNull String) throws android.telephony.ims.ImsException;
17301    method public default void onPublishUpdated(@NonNull android.telephony.ims.SipDetails) throws android.telephony.ims.ImsException;
17302    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;
17303    method public void onRequestPublishCapabilities(int) throws android.telephony.ims.ImsException;
17304    method public void onUnpublish() throws android.telephony.ims.ImsException;
17305  }
17306
17307  public static interface CapabilityExchangeEventListener.OptionsRequestCallback {
17308    method public void onRespondToCapabilityRequest(@NonNull android.telephony.ims.RcsContactUceCapability, boolean);
17309    method public void onRespondToCapabilityRequestWithError(@IntRange(from=100, to=699) int, @NonNull String);
17310  }
17311
17312  public interface DelegateConnectionMessageCallback {
17313    method public void onMessageReceived(@NonNull android.telephony.ims.SipMessage);
17314    method public void onMessageSendFailure(@NonNull String, int);
17315    method public void onMessageSent(@NonNull String);
17316  }
17317
17318  public interface DelegateConnectionStateCallback {
17319    method public void onConfigurationChanged(@NonNull android.telephony.ims.SipDelegateConfiguration);
17320    method public void onCreated(@NonNull android.telephony.ims.SipDelegateConnection);
17321    method public void onDestroyed(int);
17322    method public void onFeatureTagStatusChanged(@NonNull android.telephony.ims.DelegateRegistrationState, @NonNull java.util.Set<android.telephony.ims.FeatureTagState>);
17323  }
17324
17325  public class ImsCallSessionImplBase implements java.lang.AutoCloseable {
17326    ctor public ImsCallSessionImplBase();
17327    method public void accept(int, android.telephony.ims.ImsStreamMediaProfile);
17328    method public void close();
17329    method public void deflect(String);
17330    method public void extendToConference(String[]);
17331    method public String getCallId();
17332    method public android.telephony.ims.ImsCallProfile getCallProfile();
17333    method public android.telephony.ims.ImsVideoCallProvider getImsVideoCallProvider();
17334    method public android.telephony.ims.ImsCallProfile getLocalCallProfile();
17335    method public String getProperty(String);
17336    method public android.telephony.ims.ImsCallProfile getRemoteCallProfile();
17337    method public int getState();
17338    method public void hold(android.telephony.ims.ImsStreamMediaProfile);
17339    method public void inviteParticipants(String[]);
17340    method public boolean isInCall();
17341    method public boolean isMultiparty();
17342    method public void merge();
17343    method public void reject(int);
17344    method public void removeParticipants(String[]);
17345    method public void resume(android.telephony.ims.ImsStreamMediaProfile);
17346    method public void sendDtmf(char, android.os.Message);
17347    method public void sendRtpHeaderExtensions(@NonNull java.util.Set<android.telephony.ims.RtpHeaderExtension>);
17348    method public void sendRttMessage(String);
17349    method public void sendRttModifyRequest(android.telephony.ims.ImsCallProfile);
17350    method public void sendRttModifyResponse(boolean);
17351    method public void sendUssd(String);
17352    method @Deprecated public void setListener(android.telephony.ims.ImsCallSessionListener);
17353    method public void setMute(boolean);
17354    method public void start(String, android.telephony.ims.ImsCallProfile);
17355    method public void startConference(String[], android.telephony.ims.ImsCallProfile);
17356    method public void startDtmf(char);
17357    method public void stopDtmf();
17358    method public void terminate(int);
17359    method public void update(int, android.telephony.ims.ImsStreamMediaProfile);
17360    field public static final int USSD_MODE_NOTIFY = 0; // 0x0
17361    field public static final int USSD_MODE_REQUEST = 1; // 0x1
17362  }
17363
17364  public static class ImsCallSessionImplBase.State {
17365    method public static String toString(int);
17366    field public static final int ESTABLISHED = 4; // 0x4
17367    field public static final int ESTABLISHING = 3; // 0x3
17368    field public static final int IDLE = 0; // 0x0
17369    field public static final int INITIATED = 1; // 0x1
17370    field public static final int INVALID = -1; // 0xffffffff
17371    field public static final int NEGOTIATING = 2; // 0x2
17372    field public static final int REESTABLISHING = 6; // 0x6
17373    field public static final int RENEGOTIATING = 5; // 0x5
17374    field public static final int TERMINATED = 8; // 0x8
17375    field public static final int TERMINATING = 7; // 0x7
17376  }
17377
17378  public class ImsConfigImplBase {
17379    ctor public ImsConfigImplBase(@NonNull java.util.concurrent.Executor);
17380    ctor public ImsConfigImplBase();
17381    method public int getConfigInt(int);
17382    method public String getConfigString(int);
17383    method public final void notifyAutoConfigurationErrorReceived(int, @NonNull String);
17384    method public final void notifyPreProvisioningReceived(@NonNull byte[]);
17385    method public final void notifyProvisionedValueChanged(int, int);
17386    method public final void notifyProvisionedValueChanged(int, String);
17387    method public void notifyRcsAutoConfigurationReceived(@NonNull byte[], boolean);
17388    method public void notifyRcsAutoConfigurationRemoved();
17389    method public int setConfig(int, int);
17390    method public int setConfig(int, String);
17391    method public void setRcsClientConfiguration(@NonNull android.telephony.ims.RcsClientConfiguration);
17392    method public void triggerAutoConfiguration();
17393    field public static final int CONFIG_RESULT_FAILED = 1; // 0x1
17394    field public static final int CONFIG_RESULT_SUCCESS = 0; // 0x0
17395    field public static final int CONFIG_RESULT_UNKNOWN = -1; // 0xffffffff
17396  }
17397
17398  public class ImsEcbmImplBase {
17399    ctor public ImsEcbmImplBase();
17400    method public final void enteredEcbm();
17401    method public void exitEmergencyCallbackMode();
17402    method public final void exitedEcbm();
17403  }
17404
17405  public final class ImsFeatureConfiguration implements android.os.Parcelable {
17406    method public int describeContents();
17407    method public java.util.Set<android.telephony.ims.stub.ImsFeatureConfiguration.FeatureSlotPair> getServiceFeatures();
17408    method public void writeToParcel(android.os.Parcel, int);
17409    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.stub.ImsFeatureConfiguration> CREATOR;
17410  }
17411
17412  public static class ImsFeatureConfiguration.Builder {
17413    ctor public ImsFeatureConfiguration.Builder();
17414    method public android.telephony.ims.stub.ImsFeatureConfiguration.Builder addFeature(int, int);
17415    method public android.telephony.ims.stub.ImsFeatureConfiguration build();
17416  }
17417
17418  public static final class ImsFeatureConfiguration.FeatureSlotPair {
17419    ctor public ImsFeatureConfiguration.FeatureSlotPair(int, int);
17420    field public final int featureType;
17421    field public final int slotId;
17422  }
17423
17424  public class ImsMultiEndpointImplBase {
17425    ctor public ImsMultiEndpointImplBase();
17426    method public final void onImsExternalCallStateUpdate(java.util.List<android.telephony.ims.ImsExternalCallState>);
17427    method public void requestImsExternalCallStateInfo();
17428  }
17429
17430  public class ImsRegistrationImplBase {
17431    ctor public ImsRegistrationImplBase();
17432    ctor public ImsRegistrationImplBase(@NonNull java.util.concurrent.Executor);
17433    method public final void onDeregistered(android.telephony.ims.ImsReasonInfo);
17434    method public final void onDeregistered(@Nullable android.telephony.ims.ImsReasonInfo, int, int);
17435    method public final void onDeregistered(@Nullable android.telephony.ims.ImsReasonInfo, @NonNull android.telephony.ims.SipDetails);
17436    method public final void onDeregistered(@Nullable android.telephony.ims.ImsReasonInfo, int, int, @NonNull android.telephony.ims.SipDetails);
17437    method public final void onRegistered(int);
17438    method public final void onRegistered(@NonNull android.telephony.ims.ImsRegistrationAttributes);
17439    method public final void onRegistering(int);
17440    method public final void onRegistering(@NonNull android.telephony.ims.ImsRegistrationAttributes);
17441    method public final void onSubscriberAssociatedUriChanged(android.net.Uri[]);
17442    method public final void onTechnologyChangeFailed(int, android.telephony.ims.ImsReasonInfo);
17443    method public void triggerFullNetworkRegistration(@IntRange(from=100, to=699) int, @Nullable String);
17444    method public void triggerSipDelegateDeregistration();
17445    method public void updateSipDelegateRegistration();
17446  }
17447
17448  public class ImsSmsImplBase {
17449    ctor public ImsSmsImplBase();
17450    ctor public ImsSmsImplBase(@NonNull java.util.concurrent.Executor);
17451    method public void acknowledgeSms(int, @IntRange(from=0, to=65535) int, int);
17452    method public void acknowledgeSms(int, @IntRange(from=0, to=65535) int, int, @NonNull byte[]);
17453    method public void acknowledgeSmsReport(int, @IntRange(from=0, to=65535) int, int);
17454    method public String getSmsFormat();
17455    method public void onReady();
17456    method @Deprecated public final void onSendSmsResult(int, @IntRange(from=0, to=65535) int, int, int) throws java.lang.RuntimeException;
17457    method public final void onSendSmsResultError(int, @IntRange(from=0, to=65535) int, int, int, int) throws java.lang.RuntimeException;
17458    method public final void onSendSmsResultSuccess(int, @IntRange(from=0, to=65535) int) throws java.lang.RuntimeException;
17459    method public final void onSmsReceived(int, String, byte[]) throws java.lang.RuntimeException;
17460    method @Deprecated public final void onSmsStatusReportReceived(int, @IntRange(from=0, to=65535) int, String, byte[]) throws java.lang.RuntimeException;
17461    method public final void onSmsStatusReportReceived(int, String, byte[]) throws java.lang.RuntimeException;
17462    method public void sendSms(int, @IntRange(from=0, to=65535) int, String, String, boolean, byte[]);
17463    field public static final int DELIVER_STATUS_ERROR_GENERIC = 2; // 0x2
17464    field public static final int DELIVER_STATUS_ERROR_NO_MEMORY = 3; // 0x3
17465    field public static final int DELIVER_STATUS_ERROR_REQUEST_NOT_SUPPORTED = 4; // 0x4
17466    field public static final int DELIVER_STATUS_OK = 1; // 0x1
17467    field public static final int RESULT_NO_NETWORK_ERROR = -1; // 0xffffffff
17468    field public static final int SEND_STATUS_ERROR = 2; // 0x2
17469    field public static final int SEND_STATUS_ERROR_FALLBACK = 4; // 0x4
17470    field public static final int SEND_STATUS_ERROR_RETRY = 3; // 0x3
17471    field public static final int SEND_STATUS_OK = 1; // 0x1
17472    field public static final int STATUS_REPORT_STATUS_ERROR = 2; // 0x2
17473    field public static final int STATUS_REPORT_STATUS_OK = 1; // 0x1
17474  }
17475
17476  public class ImsUtImplBase {
17477    ctor public ImsUtImplBase();
17478    method public void close();
17479    method public int queryCallBarring(int);
17480    method public int queryCallBarringForServiceClass(int, int);
17481    method public int queryCallForward(int, String);
17482    method public int queryCallWaiting();
17483    method public int queryClip();
17484    method public int queryClir();
17485    method public int queryColp();
17486    method public int queryColr();
17487    method public void setListener(android.telephony.ims.ImsUtListener);
17488    method public int transact(android.os.Bundle);
17489    method public int updateCallBarring(int, int, String[]);
17490    method public int updateCallBarringForServiceClass(int, int, String[], int);
17491    method public int updateCallForward(int, int, String, int, int);
17492    method public int updateCallWaiting(boolean, int);
17493    method public int updateClip(boolean);
17494    method public int updateClir(int);
17495    method public int updateColp(boolean);
17496    method public int updateColr(int);
17497  }
17498
17499  public class RcsCapabilityExchangeImplBase {
17500    ctor public RcsCapabilityExchangeImplBase();
17501    method public void publishCapabilities(@NonNull String, @NonNull android.telephony.ims.stub.RcsCapabilityExchangeImplBase.PublishResponseCallback);
17502    method public void sendOptionsCapabilityRequest(@NonNull android.net.Uri, @NonNull java.util.Set<java.lang.String>, @NonNull android.telephony.ims.stub.RcsCapabilityExchangeImplBase.OptionsResponseCallback);
17503    method public void subscribeForCapabilities(@NonNull java.util.Collection<android.net.Uri>, @NonNull android.telephony.ims.stub.RcsCapabilityExchangeImplBase.SubscribeResponseCallback);
17504    field public static final int COMMAND_CODE_FETCH_ERROR = 3; // 0x3
17505    field public static final int COMMAND_CODE_GENERIC_FAILURE = 1; // 0x1
17506    field public static final int COMMAND_CODE_INSUFFICIENT_MEMORY = 5; // 0x5
17507    field public static final int COMMAND_CODE_INVALID_PARAM = 2; // 0x2
17508    field public static final int COMMAND_CODE_LOST_NETWORK_CONNECTION = 6; // 0x6
17509    field public static final int COMMAND_CODE_NOT_FOUND = 8; // 0x8
17510    field public static final int COMMAND_CODE_NOT_SUPPORTED = 7; // 0x7
17511    field public static final int COMMAND_CODE_NO_CHANGE = 10; // 0xa
17512    field public static final int COMMAND_CODE_REQUEST_TIMEOUT = 4; // 0x4
17513    field public static final int COMMAND_CODE_SERVICE_UNAVAILABLE = 9; // 0x9
17514    field public static final int COMMAND_CODE_SERVICE_UNKNOWN = 0; // 0x0
17515  }
17516
17517  public static interface RcsCapabilityExchangeImplBase.OptionsResponseCallback {
17518    method public void onCommandError(int) throws android.telephony.ims.ImsException;
17519    method public void onNetworkResponse(int, @NonNull String, @NonNull java.util.List<java.lang.String>) throws android.telephony.ims.ImsException;
17520  }
17521
17522  public static interface RcsCapabilityExchangeImplBase.PublishResponseCallback {
17523    method public void onCommandError(int) throws android.telephony.ims.ImsException;
17524    method @Deprecated public void onNetworkResponse(@IntRange(from=100, to=699) int, @NonNull String) throws android.telephony.ims.ImsException;
17525    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;
17526    method public default void onNetworkResponse(@NonNull android.telephony.ims.SipDetails) throws android.telephony.ims.ImsException;
17527  }
17528
17529  public static interface RcsCapabilityExchangeImplBase.SubscribeResponseCallback {
17530    method public void onCommandError(int) throws android.telephony.ims.ImsException;
17531    method @Deprecated public void onNetworkResponse(@IntRange(from=100, to=699) int, @NonNull String) throws android.telephony.ims.ImsException;
17532    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;
17533    method public default void onNetworkResponse(@NonNull android.telephony.ims.SipDetails) throws android.telephony.ims.ImsException;
17534    method public void onNotifyCapabilitiesUpdate(@NonNull java.util.List<java.lang.String>) throws android.telephony.ims.ImsException;
17535    method public void onResourceTerminated(@NonNull java.util.List<android.util.Pair<android.net.Uri,java.lang.String>>) throws android.telephony.ims.ImsException;
17536    method public void onTerminated(@NonNull String, long) throws android.telephony.ims.ImsException;
17537  }
17538
17539  public interface SipDelegate {
17540    method public void cleanupSession(@NonNull String);
17541    method public void notifyMessageReceiveError(@NonNull String, int);
17542    method public void notifyMessageReceived(@NonNull String);
17543    method public void sendMessage(@NonNull android.telephony.ims.SipMessage, long);
17544  }
17545
17546  public class SipTransportImplBase {
17547    ctor public SipTransportImplBase();
17548    ctor public SipTransportImplBase(@NonNull java.util.concurrent.Executor);
17549    method public void createSipDelegate(int, @NonNull android.telephony.ims.DelegateRequest, @NonNull android.telephony.ims.DelegateStateCallback, @NonNull android.telephony.ims.DelegateMessageCallback);
17550    method public void destroySipDelegate(@NonNull android.telephony.ims.stub.SipDelegate, int);
17551  }
17552
17553}
17554
17555package android.telephony.mbms {
17556
17557  public static class DownloadRequest.Builder {
17558    method public android.telephony.mbms.DownloadRequest.Builder setServiceId(String);
17559  }
17560
17561  public final class FileInfo implements android.os.Parcelable {
17562    ctor public FileInfo(android.net.Uri, String);
17563  }
17564
17565  public final class FileServiceInfo extends android.telephony.mbms.ServiceInfo implements android.os.Parcelable {
17566    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>);
17567  }
17568
17569  public class MbmsDownloadReceiver extends android.content.BroadcastReceiver {
17570    field public static final int RESULT_APP_NOTIFICATION_ERROR = 6; // 0x6
17571    field public static final int RESULT_BAD_TEMP_FILE_ROOT = 3; // 0x3
17572    field public static final int RESULT_DOWNLOAD_FINALIZATION_ERROR = 4; // 0x4
17573    field public static final int RESULT_INVALID_ACTION = 1; // 0x1
17574    field public static final int RESULT_MALFORMED_INTENT = 2; // 0x2
17575    field public static final int RESULT_OK = 0; // 0x0
17576    field public static final int RESULT_TEMP_FILE_GENERATION_ERROR = 5; // 0x5
17577  }
17578
17579  public final class StreamingServiceInfo extends android.telephony.mbms.ServiceInfo implements android.os.Parcelable {
17580    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);
17581  }
17582
17583  public final class UriPathPair implements android.os.Parcelable {
17584    method public int describeContents();
17585    method public android.net.Uri getContentUri();
17586    method public android.net.Uri getFilePathUri();
17587    method public void writeToParcel(android.os.Parcel, int);
17588    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.mbms.UriPathPair> CREATOR;
17589  }
17590
17591}
17592
17593package android.telephony.mbms.vendor {
17594
17595  public class MbmsDownloadServiceBase extends android.os.Binder implements android.os.IInterface {
17596    ctor public MbmsDownloadServiceBase();
17597    method public int addProgressListener(android.telephony.mbms.DownloadRequest, android.telephony.mbms.DownloadProgressListener) throws android.os.RemoteException;
17598    method public int addServiceAnnouncement(int, @NonNull byte[]);
17599    method public int addStatusListener(android.telephony.mbms.DownloadRequest, android.telephony.mbms.DownloadStatusListener) throws android.os.RemoteException;
17600    method public android.os.IBinder asBinder();
17601    method public int cancelDownload(android.telephony.mbms.DownloadRequest) throws android.os.RemoteException;
17602    method public void dispose(int) throws android.os.RemoteException;
17603    method public int download(android.telephony.mbms.DownloadRequest) throws android.os.RemoteException;
17604    method public int initialize(int, android.telephony.mbms.MbmsDownloadSessionCallback) throws android.os.RemoteException;
17605    method @NonNull public java.util.List<android.telephony.mbms.DownloadRequest> listPendingDownloads(int) throws android.os.RemoteException;
17606    method public void onAppCallbackDied(int, int);
17607    method public boolean onTransact(int, android.os.Parcel, android.os.Parcel, int) throws android.os.RemoteException;
17608    method public int removeProgressListener(android.telephony.mbms.DownloadRequest, android.telephony.mbms.DownloadProgressListener) throws android.os.RemoteException;
17609    method public int removeStatusListener(android.telephony.mbms.DownloadRequest, android.telephony.mbms.DownloadStatusListener) throws android.os.RemoteException;
17610    method public int requestDownloadState(android.telephony.mbms.DownloadRequest, android.telephony.mbms.FileInfo) throws android.os.RemoteException;
17611    method public int requestUpdateFileServices(int, java.util.List<java.lang.String>) throws android.os.RemoteException;
17612    method public int resetDownloadKnowledge(android.telephony.mbms.DownloadRequest) throws android.os.RemoteException;
17613    method public int setTempFileRootDirectory(int, String) throws android.os.RemoteException;
17614  }
17615
17616  public class MbmsGroupCallServiceBase extends android.app.Service {
17617    ctor public MbmsGroupCallServiceBase();
17618    method public void dispose(int) throws android.os.RemoteException;
17619    method public int initialize(@NonNull android.telephony.mbms.MbmsGroupCallSessionCallback, int) throws android.os.RemoteException;
17620    method public void onAppCallbackDied(int, int);
17621    method public android.os.IBinder onBind(android.content.Intent);
17622    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);
17623    method public void stopGroupCall(int, long);
17624    method public void updateGroupCall(int, long, @NonNull java.util.List<java.lang.Integer>, @NonNull java.util.List<java.lang.Integer>);
17625  }
17626
17627  public class MbmsStreamingServiceBase extends android.os.Binder implements android.os.IInterface {
17628    ctor public MbmsStreamingServiceBase();
17629    method public android.os.IBinder asBinder();
17630    method public void dispose(int) throws android.os.RemoteException;
17631    method @Nullable public android.net.Uri getPlaybackUri(int, String) throws android.os.RemoteException;
17632    method public int initialize(android.telephony.mbms.MbmsStreamingSessionCallback, int) throws android.os.RemoteException;
17633    method public void onAppCallbackDied(int, int);
17634    method public boolean onTransact(int, android.os.Parcel, android.os.Parcel, int) throws android.os.RemoteException;
17635    method public int requestUpdateStreamingServices(int, java.util.List<java.lang.String>) throws android.os.RemoteException;
17636    method public int startStreaming(int, String, android.telephony.mbms.StreamingServiceCallback) throws android.os.RemoteException;
17637    method public void stopStreaming(int, String) throws android.os.RemoteException;
17638  }
17639
17640  public class VendorUtils {
17641    ctor public VendorUtils();
17642    method public static android.content.ComponentName getAppReceiverFromPackageName(android.content.Context, String);
17643    field public static final String ACTION_CLEANUP = "android.telephony.mbms.action.CLEANUP";
17644    field public static final String ACTION_DOWNLOAD_RESULT_INTERNAL = "android.telephony.mbms.action.DOWNLOAD_RESULT_INTERNAL";
17645    field public static final String ACTION_FILE_DESCRIPTOR_REQUEST = "android.telephony.mbms.action.FILE_DESCRIPTOR_REQUEST";
17646    field public static final String EXTRA_FD_COUNT = "android.telephony.mbms.extra.FD_COUNT";
17647    field public static final String EXTRA_FINAL_URI = "android.telephony.mbms.extra.FINAL_URI";
17648    field public static final String EXTRA_FREE_URI_LIST = "android.telephony.mbms.extra.FREE_URI_LIST";
17649    field public static final String EXTRA_PAUSED_LIST = "android.telephony.mbms.extra.PAUSED_LIST";
17650    field public static final String EXTRA_PAUSED_URI_LIST = "android.telephony.mbms.extra.PAUSED_URI_LIST";
17651    field public static final String EXTRA_SERVICE_ID = "android.telephony.mbms.extra.SERVICE_ID";
17652    field public static final String EXTRA_TEMP_FILES_IN_USE = "android.telephony.mbms.extra.TEMP_FILES_IN_USE";
17653    field public static final String EXTRA_TEMP_FILE_ROOT = "android.telephony.mbms.extra.TEMP_FILE_ROOT";
17654    field public static final String EXTRA_TEMP_LIST = "android.telephony.mbms.extra.TEMP_LIST";
17655  }
17656
17657}
17658
17659package android.telephony.satellite {
17660
17661  public final class AntennaDirection implements android.os.Parcelable {
17662    method public int describeContents();
17663    method public float getX();
17664    method public float getY();
17665    method public float getZ();
17666    method public void writeToParcel(@NonNull android.os.Parcel, int);
17667    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.satellite.AntennaDirection> CREATOR;
17668  }
17669
17670  public final class AntennaPosition implements android.os.Parcelable {
17671    method public int describeContents();
17672    method @NonNull public android.telephony.satellite.AntennaDirection getAntennaDirection();
17673    method public int getSuggestedHoldPosition();
17674    method public void writeToParcel(@NonNull android.os.Parcel, int);
17675    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.satellite.AntennaPosition> CREATOR;
17676  }
17677
17678  public class EnableRequestAttributes {
17679    method public boolean isDemoMode();
17680    method public boolean isEmergencyMode();
17681    method public boolean isEnabled();
17682  }
17683
17684  public static final class EnableRequestAttributes.Builder {
17685    ctor public EnableRequestAttributes.Builder(boolean);
17686    method @NonNull public android.telephony.satellite.EnableRequestAttributes build();
17687    method @NonNull public android.telephony.satellite.EnableRequestAttributes.Builder setDemoMode(boolean);
17688    method @NonNull public android.telephony.satellite.EnableRequestAttributes.Builder setEmergencyMode(boolean);
17689  }
17690
17691  public final class NtnSignalStrength implements android.os.Parcelable {
17692    ctor public NtnSignalStrength(@Nullable android.telephony.satellite.NtnSignalStrength);
17693    method public int describeContents();
17694    method public int getLevel();
17695    method public void writeToParcel(@NonNull android.os.Parcel, int);
17696    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.satellite.NtnSignalStrength> CREATOR;
17697    field public static final int NTN_SIGNAL_STRENGTH_GOOD = 3; // 0x3
17698    field public static final int NTN_SIGNAL_STRENGTH_GREAT = 4; // 0x4
17699    field public static final int NTN_SIGNAL_STRENGTH_MODERATE = 2; // 0x2
17700    field public static final int NTN_SIGNAL_STRENGTH_NONE = 0; // 0x0
17701    field public static final int NTN_SIGNAL_STRENGTH_POOR = 1; // 0x1
17702  }
17703
17704  public interface NtnSignalStrengthCallback {
17705    method public void onNtnSignalStrengthChanged(@NonNull android.telephony.satellite.NtnSignalStrength);
17706  }
17707
17708  public final class PointingInfo implements android.os.Parcelable {
17709    method public int describeContents();
17710    method @FloatRange(from=0xffffff4c, to=180) public float getSatelliteAzimuthDegrees();
17711    method @FloatRange(from=0xffffffa6, to=90) public float getSatelliteElevationDegrees();
17712    method public void writeToParcel(@NonNull android.os.Parcel, int);
17713    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.satellite.PointingInfo> CREATOR;
17714  }
17715
17716  public final class SatelliteCapabilities implements android.os.Parcelable {
17717    method public int describeContents();
17718    method @NonNull public java.util.Map<java.lang.Integer,android.telephony.satellite.AntennaPosition> getAntennaPositionMap();
17719    method public int getMaxBytesPerOutgoingDatagram();
17720    method @NonNull public java.util.Set<java.lang.Integer> getSupportedRadioTechnologies();
17721    method public boolean isPointingRequired();
17722    method public void writeToParcel(@NonNull android.os.Parcel, int);
17723    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.satellite.SatelliteCapabilities> CREATOR;
17724  }
17725
17726  public interface SatelliteCapabilitiesCallback {
17727    method public void onSatelliteCapabilitiesChanged(@NonNull android.telephony.satellite.SatelliteCapabilities);
17728  }
17729
17730  public final class SatelliteDatagram implements android.os.Parcelable {
17731    method public int describeContents();
17732    method @NonNull public byte[] getSatelliteDatagram();
17733    method public void writeToParcel(@NonNull android.os.Parcel, int);
17734    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.satellite.SatelliteDatagram> CREATOR;
17735  }
17736
17737  public interface SatelliteDatagramCallback {
17738    method public void onSatelliteDatagramReceived(long, @NonNull android.telephony.satellite.SatelliteDatagram, int, @NonNull java.util.function.Consumer<java.lang.Void>);
17739  }
17740
17741  public final class SatelliteManager {
17742    method @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void addAttachRestrictionForCarrier(int, int, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Integer>);
17743    method @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void deprovisionService(@NonNull String, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Integer>);
17744    method @NonNull @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public java.util.Set<java.lang.Integer> getAttachRestrictionReasonsForCarrier(int);
17745    method @NonNull @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public java.util.List<java.lang.String> getSatellitePlmnsForCarrier(int);
17746    method @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void pollPendingDatagrams(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Integer>);
17747    method @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>);
17748    method @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public int registerForCapabilitiesChanged(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.satellite.SatelliteCapabilitiesCallback);
17749    method @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public int registerForIncomingDatagram(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.satellite.SatelliteDatagramCallback);
17750    method @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public int registerForModemStateChanged(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.satellite.SatelliteModemStateCallback);
17751    method @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void registerForNtnSignalStrengthChanged(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.satellite.NtnSignalStrengthCallback);
17752    method @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public int registerForProvisionStateChanged(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.satellite.SatelliteProvisionStateCallback);
17753    method @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void removeAttachRestrictionForCarrier(int, int, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Integer>);
17754    method @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void requestAttachEnabledForCarrier(int, boolean, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Integer>);
17755    method @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>);
17756    method @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>);
17757    method @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>);
17758    method @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>);
17759    method @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>);
17760    method @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>);
17761    method @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>);
17762    method @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>);
17763    method public void requestIsSupported(@NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<java.lang.Boolean,android.telephony.satellite.SatelliteManager.SatelliteException>);
17764    method @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>);
17765    method @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>);
17766    method @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>);
17767    method @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void setDeviceAlignedWithSatellite(boolean);
17768    method @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);
17769    method @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>);
17770    method @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void unregisterForCapabilitiesChanged(@NonNull android.telephony.satellite.SatelliteCapabilitiesCallback);
17771    method @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void unregisterForIncomingDatagram(@NonNull android.telephony.satellite.SatelliteDatagramCallback);
17772    method @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void unregisterForModemStateChanged(@NonNull android.telephony.satellite.SatelliteModemStateCallback);
17773    method @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void unregisterForNtnSignalStrengthChanged(@NonNull android.telephony.satellite.NtnSignalStrengthCallback);
17774    method @RequiresPermission(android.Manifest.permission.SATELLITE_COMMUNICATION) public void unregisterForProvisionStateChanged(@NonNull android.telephony.satellite.SatelliteProvisionStateCallback);
17775    field public static final int DATAGRAM_TYPE_LOCATION_SHARING = 2; // 0x2
17776    field public static final int DATAGRAM_TYPE_SOS_MESSAGE = 1; // 0x1
17777    field public static final int DATAGRAM_TYPE_UNKNOWN = 0; // 0x0
17778    field public static final int DEVICE_HOLD_POSITION_LANDSCAPE_LEFT = 2; // 0x2
17779    field public static final int DEVICE_HOLD_POSITION_LANDSCAPE_RIGHT = 3; // 0x3
17780    field public static final int DEVICE_HOLD_POSITION_PORTRAIT = 1; // 0x1
17781    field public static final int DEVICE_HOLD_POSITION_UNKNOWN = 0; // 0x0
17782    field public static final int DISPLAY_MODE_CLOSED = 3; // 0x3
17783    field public static final int DISPLAY_MODE_FIXED = 1; // 0x1
17784    field public static final int DISPLAY_MODE_OPENED = 2; // 0x2
17785    field public static final int DISPLAY_MODE_UNKNOWN = 0; // 0x0
17786    field public static final int EMERGENCY_CALL_TO_SATELLITE_HANDOVER_TYPE_SOS = 1; // 0x1
17787    field public static final int EMERGENCY_CALL_TO_SATELLITE_HANDOVER_TYPE_T911 = 2; // 0x2
17788    field public static final int NT_RADIO_TECHNOLOGY_EMTC_NTN = 3; // 0x3
17789    field public static final int NT_RADIO_TECHNOLOGY_NB_IOT_NTN = 1; // 0x1
17790    field public static final int NT_RADIO_TECHNOLOGY_NR_NTN = 2; // 0x2
17791    field public static final int NT_RADIO_TECHNOLOGY_PROPRIETARY = 4; // 0x4
17792    field public static final int NT_RADIO_TECHNOLOGY_UNKNOWN = 0; // 0x0
17793    field public static final int SATELLITE_COMMUNICATION_RESTRICTION_REASON_ENTITLEMENT = 2; // 0x2
17794    field public static final int SATELLITE_COMMUNICATION_RESTRICTION_REASON_GEOLOCATION = 1; // 0x1
17795    field public static final int SATELLITE_DATAGRAM_TRANSFER_STATE_IDLE = 0; // 0x0
17796    field public static final int SATELLITE_DATAGRAM_TRANSFER_STATE_RECEIVE_FAILED = 7; // 0x7
17797    field public static final int SATELLITE_DATAGRAM_TRANSFER_STATE_RECEIVE_NONE = 6; // 0x6
17798    field public static final int SATELLITE_DATAGRAM_TRANSFER_STATE_RECEIVE_SUCCESS = 5; // 0x5
17799    field public static final int SATELLITE_DATAGRAM_TRANSFER_STATE_RECEIVING = 4; // 0x4
17800    field public static final int SATELLITE_DATAGRAM_TRANSFER_STATE_SENDING = 1; // 0x1
17801    field public static final int SATELLITE_DATAGRAM_TRANSFER_STATE_SEND_FAILED = 3; // 0x3
17802    field public static final int SATELLITE_DATAGRAM_TRANSFER_STATE_SEND_SUCCESS = 2; // 0x2
17803    field public static final int SATELLITE_DATAGRAM_TRANSFER_STATE_UNKNOWN = -1; // 0xffffffff
17804    field public static final int SATELLITE_DATAGRAM_TRANSFER_STATE_WAITING_TO_CONNECT = 8; // 0x8
17805    field public static final int SATELLITE_MODEM_STATE_CONNECTED = 7; // 0x7
17806    field public static final int SATELLITE_MODEM_STATE_DATAGRAM_RETRYING = 3; // 0x3
17807    field public static final int SATELLITE_MODEM_STATE_DATAGRAM_TRANSFERRING = 2; // 0x2
17808    field public static final int SATELLITE_MODEM_STATE_IDLE = 0; // 0x0
17809    field public static final int SATELLITE_MODEM_STATE_LISTENING = 1; // 0x1
17810    field public static final int SATELLITE_MODEM_STATE_NOT_CONNECTED = 6; // 0x6
17811    field public static final int SATELLITE_MODEM_STATE_OFF = 4; // 0x4
17812    field public static final int SATELLITE_MODEM_STATE_UNAVAILABLE = 5; // 0x5
17813    field public static final int SATELLITE_MODEM_STATE_UNKNOWN = -1; // 0xffffffff
17814    field public static final int SATELLITE_RESULT_ACCESS_BARRED = 16; // 0x10
17815    field public static final int SATELLITE_RESULT_ERROR = 1; // 0x1
17816    field public static final int SATELLITE_RESULT_ILLEGAL_STATE = 23; // 0x17
17817    field public static final int SATELLITE_RESULT_INVALID_ARGUMENTS = 8; // 0x8
17818    field public static final int SATELLITE_RESULT_INVALID_MODEM_STATE = 7; // 0x7
17819    field public static final int SATELLITE_RESULT_INVALID_TELEPHONY_STATE = 6; // 0x6
17820    field public static final int SATELLITE_RESULT_MODEM_BUSY = 22; // 0x16
17821    field public static final int SATELLITE_RESULT_MODEM_ERROR = 4; // 0x4
17822    field public static final int SATELLITE_RESULT_MODEM_TIMEOUT = 24; // 0x18
17823    field public static final int SATELLITE_RESULT_NETWORK_ERROR = 5; // 0x5
17824    field public static final int SATELLITE_RESULT_NETWORK_TIMEOUT = 17; // 0x11
17825    field public static final int SATELLITE_RESULT_NOT_AUTHORIZED = 19; // 0x13
17826    field public static final int SATELLITE_RESULT_NOT_REACHABLE = 18; // 0x12
17827    field public static final int SATELLITE_RESULT_NOT_SUPPORTED = 20; // 0x14
17828    field public static final int SATELLITE_RESULT_NO_RESOURCES = 12; // 0xc
17829    field public static final int SATELLITE_RESULT_RADIO_NOT_AVAILABLE = 10; // 0xa
17830    field public static final int SATELLITE_RESULT_REQUEST_ABORTED = 15; // 0xf
17831    field public static final int SATELLITE_RESULT_REQUEST_FAILED = 9; // 0x9
17832    field public static final int SATELLITE_RESULT_REQUEST_IN_PROGRESS = 21; // 0x15
17833    field public static final int SATELLITE_RESULT_REQUEST_NOT_SUPPORTED = 11; // 0xb
17834    field public static final int SATELLITE_RESULT_SERVER_ERROR = 2; // 0x2
17835    field public static final int SATELLITE_RESULT_SERVICE_ERROR = 3; // 0x3
17836    field public static final int SATELLITE_RESULT_SERVICE_NOT_PROVISIONED = 13; // 0xd
17837    field public static final int SATELLITE_RESULT_SERVICE_PROVISION_IN_PROGRESS = 14; // 0xe
17838    field public static final int SATELLITE_RESULT_SUCCESS = 0; // 0x0
17839  }
17840
17841  public static class SatelliteManager.SatelliteException extends java.lang.Exception {
17842    ctor public SatelliteManager.SatelliteException(int);
17843    method public int getErrorCode();
17844  }
17845
17846  public interface SatelliteModemStateCallback {
17847    method public void onSatelliteModemStateChanged(int);
17848  }
17849
17850  public interface SatelliteProvisionStateCallback {
17851    method public void onSatelliteProvisionStateChanged(boolean);
17852  }
17853
17854  public interface SatelliteTransmissionUpdateCallback {
17855    method public void onReceiveDatagramStateChanged(int, int, int);
17856    method public void onSatellitePositionChanged(@NonNull android.telephony.satellite.PointingInfo);
17857    method public void onSendDatagramStateChanged(int, int, int);
17858  }
17859
17860}
17861
17862package android.text {
17863
17864  public final class FontConfig implements android.os.Parcelable {
17865    method public int describeContents();
17866    method @NonNull public java.util.List<android.text.FontConfig.Alias> getAliases();
17867    method @IntRange(from=0) public int getConfigVersion();
17868    method @NonNull public java.util.List<android.text.FontConfig.FontFamily> getFontFamilies();
17869    method public long getLastModifiedTimeMillis();
17870    method @NonNull public java.util.List<android.text.FontConfig.NamedFamilyList> getNamedFamilyLists();
17871    method public void writeToParcel(@NonNull android.os.Parcel, int);
17872    field @NonNull public static final android.os.Parcelable.Creator<android.text.FontConfig> CREATOR;
17873  }
17874
17875  public static final class FontConfig.Alias implements android.os.Parcelable {
17876    method public int describeContents();
17877    method @NonNull public String getName();
17878    method @NonNull public String getOriginal();
17879    method @IntRange(from=0, to=1000) public int getWeight();
17880    method public void writeToParcel(@NonNull android.os.Parcel, int);
17881    field @NonNull public static final android.os.Parcelable.Creator<android.text.FontConfig.Alias> CREATOR;
17882  }
17883
17884  public static final class FontConfig.Font implements android.os.Parcelable {
17885    method public int describeContents();
17886    method @NonNull public java.io.File getFile();
17887    method @Nullable public String getFontFamilyName();
17888    method @NonNull public String getFontVariationSettings();
17889    method @NonNull public String getPostScriptName();
17890    method @NonNull public android.graphics.fonts.FontStyle getStyle();
17891    method public int getTtcIndex();
17892    method public void writeToParcel(@NonNull android.os.Parcel, int);
17893    field @NonNull public static final android.os.Parcelable.Creator<android.text.FontConfig.Font> CREATOR;
17894  }
17895
17896  public static final class FontConfig.FontFamily implements android.os.Parcelable {
17897    method public int describeContents();
17898    method @NonNull public java.util.List<android.text.FontConfig.Font> getFontList();
17899    method @NonNull public android.os.LocaleList getLocaleList();
17900    method @Deprecated @Nullable public String getName();
17901    method public int getVariant();
17902    method public void writeToParcel(@NonNull android.os.Parcel, int);
17903    field @NonNull public static final android.os.Parcelable.Creator<android.text.FontConfig.FontFamily> CREATOR;
17904    field public static final int VARIANT_COMPACT = 1; // 0x1
17905    field public static final int VARIANT_DEFAULT = 0; // 0x0
17906    field public static final int VARIANT_ELEGANT = 2; // 0x2
17907  }
17908
17909  public static final class FontConfig.NamedFamilyList implements android.os.Parcelable {
17910    method public int describeContents();
17911    method @NonNull public java.util.List<android.text.FontConfig.FontFamily> getFamilies();
17912    method @NonNull public String getName();
17913    method public void writeToParcel(@NonNull android.os.Parcel, int);
17914    field @NonNull public static final android.os.Parcelable.Creator<android.text.FontConfig.NamedFamilyList> CREATOR;
17915  }
17916
17917}
17918
17919package android.util {
17920
17921  public class EventLog {
17922    method public static void readEventsOnWrapping(int[], long, java.util.Collection<android.util.EventLog.Event>) throws java.io.IOException;
17923  }
17924
17925  public static final class EventLog.Event {
17926    method public int getUid();
17927  }
17928
17929}
17930
17931package android.view {
17932
17933  @UiThread public class View implements android.view.accessibility.AccessibilityEventSource android.graphics.drawable.Drawable.Callback android.view.KeyEvent.Callback {
17934    method @NonNull public final java.util.List<android.graphics.Rect> getUnrestrictedPreferKeepClearRects();
17935    method @RequiresPermission(android.Manifest.permission.SET_UNRESTRICTED_KEEP_CLEAR_AREAS) public final void setUnrestrictedPreferKeepClearRects(@NonNull java.util.List<android.graphics.Rect>);
17936  }
17937
17938  public abstract class Window {
17939    method public void addSystemFlags(int);
17940  }
17941
17942  public interface WindowManager extends android.view.ViewManager {
17943    method @RequiresPermission(android.Manifest.permission.RESTRICTED_VR_ACCESS) public android.graphics.Region getCurrentImeTouchRegion();
17944    method @NonNull public default java.util.List<android.content.ComponentName> notifyScreenshotListeners(int);
17945    method public default void registerTaskFpsCallback(@IntRange(from=0) int, @NonNull java.util.concurrent.Executor, @NonNull android.window.TaskFpsCallback);
17946    method public default void unregisterTaskFpsCallback(@NonNull android.window.TaskFpsCallback);
17947    field public static final int DISPLAY_IME_POLICY_FALLBACK_DISPLAY = 1; // 0x1
17948    field public static final int DISPLAY_IME_POLICY_HIDE = 2; // 0x2
17949    field public static final int DISPLAY_IME_POLICY_LOCAL = 0; // 0x0
17950  }
17951
17952  public static class WindowManager.LayoutParams extends android.view.ViewGroup.LayoutParams implements android.os.Parcelable {
17953    method public final long getUserActivityTimeout();
17954    method public boolean isSystemApplicationOverlay();
17955    method @RequiresPermission(android.Manifest.permission.SYSTEM_APPLICATION_OVERLAY) public void setSystemApplicationOverlay(boolean);
17956    method public final void setUserActivityTimeout(long);
17957    field @RequiresPermission(android.Manifest.permission.HIDE_NON_SYSTEM_OVERLAY_WINDOWS) public static final int SYSTEM_FLAG_HIDE_NON_SYSTEM_OVERLAY_WINDOWS = 524288; // 0x80000
17958    field @RequiresPermission(android.Manifest.permission.INTERNAL_SYSTEM_WINDOW) public static final int SYSTEM_FLAG_SHOW_FOR_ALL_USERS = 16; // 0x10
17959  }
17960
17961}
17962
17963package android.view.accessibility {
17964
17965  public abstract class AccessibilityDisplayProxy {
17966    ctor public AccessibilityDisplayProxy(int, @NonNull java.util.concurrent.Executor, @NonNull java.util.List<android.accessibilityservice.AccessibilityServiceInfo>);
17967    method @Nullable public android.view.accessibility.AccessibilityNodeInfo findFocus(int);
17968    method public int getDisplayId();
17969    method @NonNull public final java.util.List<android.accessibilityservice.AccessibilityServiceInfo> getInstalledAndEnabledServices();
17970    method @NonNull public java.util.List<android.view.accessibility.AccessibilityWindowInfo> getWindows();
17971    method public void interrupt();
17972    method public void onAccessibilityEvent(@NonNull android.view.accessibility.AccessibilityEvent);
17973    method public void onProxyConnected();
17974    method public void setAccessibilityFocusAppearance(int, @ColorInt int);
17975    method public void setInstalledAndEnabledServices(@NonNull java.util.List<android.accessibilityservice.AccessibilityServiceInfo>);
17976  }
17977
17978  public final class AccessibilityManager {
17979    method public int getAccessibilityWindowId(@Nullable android.os.IBinder);
17980    method @RequiresPermission(android.Manifest.permission.MANAGE_ACCESSIBILITY) public void performAccessibilityShortcut();
17981    method @RequiresPermission(allOf={android.Manifest.permission.MANAGE_ACCESSIBILITY, android.Manifest.permission.CREATE_VIRTUAL_DEVICE}) public boolean registerDisplayProxy(@NonNull android.view.accessibility.AccessibilityDisplayProxy);
17982    method @RequiresPermission(android.Manifest.permission.MANAGE_ACCESSIBILITY) public void registerSystemAction(@NonNull android.app.RemoteAction, int);
17983    method @RequiresPermission(allOf={android.Manifest.permission.MANAGE_ACCESSIBILITY, android.Manifest.permission.CREATE_VIRTUAL_DEVICE}) public boolean unregisterDisplayProxy(@NonNull android.view.accessibility.AccessibilityDisplayProxy);
17984    method @RequiresPermission(android.Manifest.permission.MANAGE_ACCESSIBILITY) public void unregisterSystemAction(int);
17985  }
17986
17987  public class CaptioningManager {
17988    method @RequiresPermission(android.Manifest.permission.SET_SYSTEM_AUDIO_CAPTION) public final void setSystemAudioCaptioningEnabled(boolean);
17989    method @RequiresPermission(android.Manifest.permission.SET_SYSTEM_AUDIO_CAPTION) public final void setSystemAudioCaptioningUiEnabled(boolean);
17990  }
17991
17992}
17993
17994package android.view.autofill {
17995
17996  public final class AutofillManager {
17997    method public void setAugmentedAutofillWhitelist(@Nullable java.util.Set<java.lang.String>, @Nullable java.util.Set<android.content.ComponentName>);
17998  }
17999
18000}
18001
18002package android.view.contentcapture {
18003
18004  public final class ContentCaptureContext implements android.os.Parcelable {
18005    method @Nullable public android.content.ComponentName getActivityComponent();
18006    method @Nullable public android.app.assist.ActivityId getActivityId();
18007    method public int getDisplayId();
18008    method public int getFlags();
18009    method @Nullable public android.view.contentcapture.ContentCaptureSessionId getParentSessionId();
18010    method public int getTaskId();
18011    method @Nullable public android.os.IBinder getWindowToken();
18012    field public static final int FLAG_DISABLED_BY_APP = 1; // 0x1
18013    field public static final int FLAG_DISABLED_BY_FLAG_SECURE = 2; // 0x2
18014    field public static final int FLAG_RECONNECTED = 4; // 0x4
18015  }
18016
18017  public final class ContentCaptureEvent implements android.os.Parcelable {
18018    method public int describeContents();
18019    method @Nullable public android.graphics.Rect getBounds();
18020    method @Nullable public android.view.contentcapture.ContentCaptureContext getContentCaptureContext();
18021    method public long getEventTime();
18022    method @Nullable public android.view.autofill.AutofillId getId();
18023    method @Nullable public java.util.List<android.view.autofill.AutofillId> getIds();
18024    method @Nullable public android.graphics.Insets getInsets();
18025    method @Nullable public CharSequence getText();
18026    method public int getType();
18027    method @Nullable public android.view.contentcapture.ViewNode getViewNode();
18028    method public void writeToParcel(android.os.Parcel, int);
18029    field @NonNull public static final android.os.Parcelable.Creator<android.view.contentcapture.ContentCaptureEvent> CREATOR;
18030    field public static final int TYPE_CONTEXT_UPDATED = 6; // 0x6
18031    field public static final int TYPE_SESSION_PAUSED = 8; // 0x8
18032    field public static final int TYPE_SESSION_RESUMED = 7; // 0x7
18033    field public static final int TYPE_VIEW_APPEARED = 1; // 0x1
18034    field public static final int TYPE_VIEW_DISAPPEARED = 2; // 0x2
18035    field public static final int TYPE_VIEW_INSETS_CHANGED = 9; // 0x9
18036    field public static final int TYPE_VIEW_TEXT_CHANGED = 3; // 0x3
18037    field public static final int TYPE_VIEW_TREE_APPEARED = 5; // 0x5
18038    field public static final int TYPE_VIEW_TREE_APPEARING = 4; // 0x4
18039    field public static final int TYPE_WINDOW_BOUNDS_CHANGED = 10; // 0xa
18040  }
18041
18042  public final class ContentCaptureManager {
18043    method public boolean isContentCaptureFeatureEnabled();
18044    field public static final int NO_SESSION_ID = 0; // 0x0
18045  }
18046
18047  public final class ViewNode extends android.app.assist.AssistStructure.ViewNode {
18048    method @Nullable public android.view.autofill.AutofillId getParentAutofillId();
18049  }
18050
18051}
18052
18053package android.view.displayhash {
18054
18055  public final class DisplayHash implements android.os.Parcelable {
18056    ctor public DisplayHash(long, @NonNull android.graphics.Rect, @NonNull String, @NonNull byte[], @NonNull byte[]);
18057    method public int describeContents();
18058    method @NonNull public android.graphics.Rect getBoundsInWindow();
18059    method @NonNull public String getHashAlgorithm();
18060    method @NonNull public byte[] getHmac();
18061    method @NonNull public byte[] getImageHash();
18062    method public long getTimeMillis();
18063    method public void writeToParcel(@NonNull android.os.Parcel, int);
18064  }
18065
18066}
18067
18068package android.view.inputmethod {
18069
18070  public final class InputMethodInfo implements android.os.Parcelable {
18071    method public boolean isVirtualDeviceOnly();
18072  }
18073
18074  public final class InputMethodManager {
18075    method @Nullable @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS_FULL) public android.view.inputmethod.InputMethodInfo getCurrentInputMethodInfoAsUser(@NonNull android.os.UserHandle);
18076  }
18077
18078}
18079
18080package android.view.translation {
18081
18082  public final class TranslationCapability implements android.os.Parcelable {
18083    ctor public TranslationCapability(int, @NonNull android.view.translation.TranslationSpec, @NonNull android.view.translation.TranslationSpec, boolean, int);
18084  }
18085
18086  public final class TranslationContext implements android.os.Parcelable {
18087    method @Nullable public android.app.assist.ActivityId getActivityId();
18088  }
18089
18090  public final class UiTranslationManager {
18091    method @RequiresPermission(android.Manifest.permission.MANAGE_UI_TRANSLATION) public void finishTranslation(@NonNull android.app.assist.ActivityId);
18092    method @RequiresPermission(android.Manifest.permission.MANAGE_UI_TRANSLATION) public void pauseTranslation(@NonNull android.app.assist.ActivityId);
18093    method @RequiresPermission(android.Manifest.permission.MANAGE_UI_TRANSLATION) public void resumeTranslation(@NonNull android.app.assist.ActivityId);
18094    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);
18095  }
18096
18097  public final class UiTranslationSpec implements android.os.Parcelable {
18098    method public int describeContents();
18099    method public boolean shouldPadContentForCompat();
18100    method public void writeToParcel(@NonNull android.os.Parcel, int);
18101    field @NonNull public static final android.os.Parcelable.Creator<android.view.translation.UiTranslationSpec> CREATOR;
18102  }
18103
18104  public static final class UiTranslationSpec.Builder {
18105    ctor public UiTranslationSpec.Builder();
18106    method @NonNull public android.view.translation.UiTranslationSpec build();
18107    method @NonNull public android.view.translation.UiTranslationSpec.Builder setShouldPadContentForCompat(boolean);
18108  }
18109
18110}
18111
18112package android.webkit {
18113
18114  public abstract class CookieManager {
18115    method protected abstract boolean allowFileSchemeCookiesImpl();
18116    method public abstract String getCookie(String, boolean);
18117    method public String getCookie(android.net.WebAddress);
18118    method public abstract boolean hasCookies(boolean);
18119    method protected abstract void setAcceptFileSchemeCookiesImpl(boolean);
18120  }
18121
18122  public class FindActionModeCallback implements android.view.ActionMode.Callback android.text.TextWatcher android.view.View.OnClickListener android.webkit.WebView.FindListener {
18123    ctor public FindActionModeCallback(android.content.Context);
18124    method public void afterTextChanged(android.text.Editable);
18125    method public void beforeTextChanged(CharSequence, int, int, int);
18126    method public void findAll();
18127    method public void finish();
18128    method public int getActionModeGlobalBottom();
18129    method public boolean onActionItemClicked(android.view.ActionMode, android.view.MenuItem);
18130    method public void onClick(android.view.View);
18131    method public boolean onCreateActionMode(android.view.ActionMode, android.view.Menu);
18132    method public void onDestroyActionMode(android.view.ActionMode);
18133    method public void onFindResultReceived(int, int, boolean);
18134    method public boolean onPrepareActionMode(android.view.ActionMode, android.view.Menu);
18135    method public void onTextChanged(CharSequence, int, int, int);
18136    method public void setText(String);
18137    method public void setWebView(@NonNull android.webkit.WebView);
18138    method public void showSoftInput();
18139    method public void updateMatchCount(int, int, boolean);
18140  }
18141
18142  public static class FindActionModeCallback.NoAction implements android.view.ActionMode.Callback {
18143    ctor public FindActionModeCallback.NoAction();
18144    method public boolean onActionItemClicked(android.view.ActionMode, android.view.MenuItem);
18145    method public boolean onCreateActionMode(android.view.ActionMode, android.view.Menu);
18146    method public void onDestroyActionMode(android.view.ActionMode);
18147    method public boolean onPrepareActionMode(android.view.ActionMode, android.view.Menu);
18148  }
18149
18150  public class GeolocationPermissions {
18151    ctor public GeolocationPermissions();
18152  }
18153
18154  public class HttpAuthHandler extends android.os.Handler {
18155    ctor public HttpAuthHandler();
18156  }
18157
18158  public class JsDialogHelper {
18159    ctor public JsDialogHelper(android.webkit.JsPromptResult, int, String, String, String);
18160    ctor public JsDialogHelper(android.webkit.JsPromptResult, android.os.Message);
18161    method public boolean invokeCallback(android.webkit.WebChromeClient, android.webkit.WebView);
18162    method public void showDialog(android.content.Context);
18163    field public static final int ALERT = 1; // 0x1
18164    field public static final int CONFIRM = 2; // 0x2
18165    field public static final int PROMPT = 3; // 0x3
18166    field public static final int UNLOAD = 4; // 0x4
18167  }
18168
18169  public class JsPromptResult extends android.webkit.JsResult {
18170    ctor public JsPromptResult(android.webkit.JsResult.ResultReceiver);
18171    method public String getStringResult();
18172  }
18173
18174  public class JsResult {
18175    ctor public JsResult(android.webkit.JsResult.ResultReceiver);
18176    method public final boolean getResult();
18177  }
18178
18179  public static interface JsResult.ResultReceiver {
18180    method public void onJsResultComplete(android.webkit.JsResult);
18181  }
18182
18183  public interface PacProcessor {
18184    method @NonNull public static android.webkit.PacProcessor createInstance();
18185    method @Nullable public String findProxyForUrl(@NonNull String);
18186    method @NonNull public static android.webkit.PacProcessor getInstance();
18187    method @Nullable public default android.net.Network getNetwork();
18188    method public default void release();
18189    method public default void setNetwork(@Nullable android.net.Network);
18190    method public boolean setProxyScript(@NonNull String);
18191  }
18192
18193  public class SslErrorHandler extends android.os.Handler {
18194    ctor public SslErrorHandler();
18195  }
18196
18197  @Deprecated public abstract class TokenBindingService {
18198    ctor @Deprecated public TokenBindingService();
18199  }
18200
18201  public class WebChromeClient {
18202    method @Deprecated public void openFileChooser(android.webkit.ValueCallback<android.net.Uri>, String, String);
18203  }
18204
18205  public abstract class WebHistoryItem implements java.lang.Cloneable {
18206    method @Deprecated public abstract int getId();
18207  }
18208
18209  @Deprecated public abstract class WebIconDatabase {
18210    method @Deprecated public abstract void bulkRequestIconForPageUrl(android.content.ContentResolver, String, android.webkit.WebIconDatabase.IconListener);
18211  }
18212
18213  public abstract class WebMessagePort {
18214    ctor public WebMessagePort();
18215  }
18216
18217  public abstract class WebResourceError {
18218    ctor public WebResourceError();
18219  }
18220
18221  public class WebResourceResponse {
18222    ctor public WebResourceResponse(boolean, String, String, int, String, java.util.Map<java.lang.String,java.lang.String>, java.io.InputStream);
18223  }
18224
18225  public abstract class WebSettings {
18226    method public abstract boolean getAcceptThirdPartyCookies();
18227    method @Deprecated public abstract boolean getNavDump();
18228    method @Deprecated public abstract boolean getPluginsEnabled();
18229    method @Deprecated public abstract boolean getUseWebViewBackgroundForOverscrollBackground();
18230    method @Deprecated public abstract int getUserAgent();
18231    method public abstract boolean getVideoOverlayForEmbeddedEncryptedVideoEnabled();
18232    method public abstract void setAcceptThirdPartyCookies(boolean);
18233    method @Deprecated public abstract void setNavDump(boolean);
18234    method @Deprecated public abstract void setPluginsEnabled(boolean);
18235    method @Deprecated public abstract void setUseWebViewBackgroundForOverscrollBackground(boolean);
18236    method @Deprecated public abstract void setUserAgent(int);
18237    method public abstract void setVideoOverlayForEmbeddedEncryptedVideoEnabled(boolean);
18238    field public static final long ENABLE_SIMPLIFIED_DARK_MODE = 214741472L; // 0xcccb1e0L
18239  }
18240
18241  public class WebStorage {
18242    ctor public WebStorage();
18243  }
18244
18245  public static class WebStorage.Origin {
18246    ctor protected WebStorage.Origin(String, long, long);
18247  }
18248
18249  public class WebView extends android.widget.AbsoluteLayout implements android.view.ViewGroup.OnHierarchyChangeListener android.view.ViewTreeObserver.OnGlobalFocusChangeListener {
18250    method public android.webkit.WebViewProvider getWebViewProvider();
18251  }
18252
18253  public static class WebView.HitTestResult {
18254    ctor public WebView.HitTestResult();
18255    method public void setExtra(String);
18256    method public void setType(int);
18257  }
18258
18259  public class WebView.PrivateAccess {
18260    ctor public WebView.PrivateAccess();
18261    method public void awakenScrollBars(int);
18262    method public void awakenScrollBars(int, boolean);
18263    method public float getHorizontalScrollFactor();
18264    method public int getHorizontalScrollbarHeight();
18265    method public float getVerticalScrollFactor();
18266    method public void onScrollChanged(int, int, int, int);
18267    method public void overScrollBy(int, int, int, int, int, int, int, int, boolean);
18268    method public void setMeasuredDimension(int, int);
18269    method public void setScrollXRaw(int);
18270    method public void setScrollYRaw(int);
18271    method public void super_computeScroll();
18272    method public boolean super_dispatchKeyEvent(android.view.KeyEvent);
18273    method public int super_getScrollBarStyle();
18274    method @Nullable public android.view.WindowInsets super_onApplyWindowInsets(@Nullable android.view.WindowInsets);
18275    method public void super_onDrawVerticalScrollBar(android.graphics.Canvas, android.graphics.drawable.Drawable, int, int, int, int);
18276    method public boolean super_onGenericMotionEvent(android.view.MotionEvent);
18277    method public boolean super_onHoverEvent(android.view.MotionEvent);
18278    method public boolean super_performAccessibilityAction(int, android.os.Bundle);
18279    method public boolean super_performLongClick();
18280    method public boolean super_requestFocus(int, android.graphics.Rect);
18281    method public void super_scrollTo(int, int);
18282    method public boolean super_setFrame(int, int, int, int);
18283    method public void super_setLayoutParams(android.view.ViewGroup.LayoutParams);
18284    method public void super_startActivityForResult(android.content.Intent, int);
18285  }
18286
18287  public final class WebViewDelegate {
18288    method public void addWebViewAssetPath(android.content.Context);
18289    method @Deprecated public void callDrawGlFunction(android.graphics.Canvas, long);
18290    method @Deprecated public void callDrawGlFunction(@NonNull android.graphics.Canvas, long, @Nullable Runnable);
18291    method @Deprecated public boolean canInvokeDrawGlFunctor(android.view.View);
18292    method @Deprecated public void detachDrawGlFunctor(android.view.View, long);
18293    method public void drawWebViewFunctor(@NonNull android.graphics.Canvas, int);
18294    method public android.app.Application getApplication();
18295    method public String getDataDirectorySuffix();
18296    method public String getErrorString(android.content.Context, int);
18297    method public int getPackageId(android.content.res.Resources, String);
18298    method @NonNull public android.webkit.WebViewFactory.StartupTimestamps getStartupTimestamps();
18299    method @Deprecated public void invokeDrawGlFunctor(android.view.View, long, boolean);
18300    method public boolean isMultiProcessEnabled();
18301    method public boolean isTraceTagEnabled();
18302    method public void setOnTraceEnabledChangeListener(android.webkit.WebViewDelegate.OnTraceEnabledChangeListener);
18303  }
18304
18305  public static interface WebViewDelegate.OnTraceEnabledChangeListener {
18306    method public void onTraceEnabledChange(boolean);
18307  }
18308
18309  public final class WebViewFactory {
18310    ctor public WebViewFactory();
18311    method public static android.content.pm.PackageInfo getLoadedPackageInfo();
18312    method public static int loadWebViewNativeLibraryFromPackage(String, ClassLoader);
18313    method public static void prepareWebViewInZygote();
18314    field public static final int LIBLOAD_ADDRESS_SPACE_NOT_RESERVED = 2; // 0x2
18315    field public static final int LIBLOAD_FAILED_JNI_CALL = 7; // 0x7
18316    field public static final int LIBLOAD_FAILED_LISTING_WEBVIEW_PACKAGES = 4; // 0x4
18317    field public static final int LIBLOAD_FAILED_TO_FIND_NAMESPACE = 10; // 0xa
18318    field public static final int LIBLOAD_FAILED_TO_LOAD_LIBRARY = 6; // 0x6
18319    field public static final int LIBLOAD_FAILED_TO_OPEN_RELRO_FILE = 5; // 0x5
18320    field public static final int LIBLOAD_FAILED_WAITING_FOR_RELRO = 3; // 0x3
18321    field public static final int LIBLOAD_FAILED_WAITING_FOR_WEBVIEW_REASON_UNKNOWN = 8; // 0x8
18322    field public static final int LIBLOAD_SUCCESS = 0; // 0x0
18323    field public static final int LIBLOAD_WRONG_PACKAGE_NAME = 1; // 0x1
18324  }
18325
18326  public static class WebViewFactory.StartupTimestamps {
18327    method public long getAddAssetsEnd();
18328    method public long getAddAssetsStart();
18329    method public long getCreateContextEnd();
18330    method public long getCreateContextStart();
18331    method public long getGetClassLoaderEnd();
18332    method public long getGetClassLoaderStart();
18333    method public long getNativeLoadEnd();
18334    method public long getNativeLoadStart();
18335    method public long getProviderClassForNameEnd();
18336    method public long getProviderClassForNameStart();
18337    method public long getWebViewLoadStart();
18338  }
18339
18340  public interface WebViewFactoryProvider {
18341    method @NonNull public default android.webkit.PacProcessor createPacProcessor();
18342    method public android.webkit.WebViewProvider createWebView(android.webkit.WebView, android.webkit.WebView.PrivateAccess);
18343    method public android.webkit.CookieManager getCookieManager();
18344    method public android.webkit.GeolocationPermissions getGeolocationPermissions();
18345    method @NonNull public default android.webkit.PacProcessor getPacProcessor();
18346    method public android.webkit.ServiceWorkerController getServiceWorkerController();
18347    method public android.webkit.WebViewFactoryProvider.Statics getStatics();
18348    method @Deprecated public android.webkit.TokenBindingService getTokenBindingService();
18349    method public android.webkit.TracingController getTracingController();
18350    method public android.webkit.WebIconDatabase getWebIconDatabase();
18351    method public android.webkit.WebStorage getWebStorage();
18352    method public ClassLoader getWebViewClassLoader();
18353    method public android.webkit.WebViewDatabase getWebViewDatabase(android.content.Context);
18354  }
18355
18356  public static interface WebViewFactoryProvider.Statics {
18357    method public void clearClientCertPreferences(Runnable);
18358    method public void enableSlowWholeDocumentDraw();
18359    method public String findAddress(String);
18360    method public void freeMemoryForTests();
18361    method public String getDefaultUserAgent(android.content.Context);
18362    method @NonNull public android.net.Uri getSafeBrowsingPrivacyPolicyUrl();
18363    method public void initSafeBrowsing(android.content.Context, android.webkit.ValueCallback<java.lang.Boolean>);
18364    method public android.net.Uri[] parseFileChooserResult(int, android.content.Intent);
18365    method public void setSafeBrowsingWhitelist(java.util.List<java.lang.String>, android.webkit.ValueCallback<java.lang.Boolean>);
18366    method public void setWebContentsDebuggingEnabled(boolean);
18367  }
18368
18369  public interface WebViewProvider {
18370    method public void addJavascriptInterface(Object, String);
18371    method public boolean canGoBack();
18372    method public boolean canGoBackOrForward(int);
18373    method public boolean canGoForward();
18374    method public boolean canZoomIn();
18375    method public boolean canZoomOut();
18376    method public android.graphics.Picture capturePicture();
18377    method public void clearCache(boolean);
18378    method public void clearFormData();
18379    method public void clearHistory();
18380    method public void clearMatches();
18381    method public void clearSslPreferences();
18382    method public void clearView();
18383    method public android.webkit.WebBackForwardList copyBackForwardList();
18384    method public android.print.PrintDocumentAdapter createPrintDocumentAdapter(String);
18385    method public android.webkit.WebMessagePort[] createWebMessageChannel();
18386    method public void destroy();
18387    method public void documentHasImages(android.os.Message);
18388    method public void dumpViewHierarchyWithProperties(java.io.BufferedWriter, int);
18389    method public void evaluateJavaScript(String, android.webkit.ValueCallback<java.lang.String>);
18390    method public int findAll(String);
18391    method public void findAllAsync(String);
18392    method public android.view.View findHierarchyView(String, int);
18393    method public void findNext(boolean);
18394    method public void flingScroll(int, int);
18395    method public void freeMemory();
18396    method public android.net.http.SslCertificate getCertificate();
18397    method public int getContentHeight();
18398    method public int getContentWidth();
18399    method public android.graphics.Bitmap getFavicon();
18400    method public android.webkit.WebView.HitTestResult getHitTestResult();
18401    method public String[] getHttpAuthUsernamePassword(String, String);
18402    method public String getOriginalUrl();
18403    method public int getProgress();
18404    method public boolean getRendererPriorityWaivedWhenNotVisible();
18405    method public int getRendererRequestedPriority();
18406    method public float getScale();
18407    method public android.webkit.WebViewProvider.ScrollDelegate getScrollDelegate();
18408    method public android.webkit.WebSettings getSettings();
18409    method @NonNull public default android.view.textclassifier.TextClassifier getTextClassifier();
18410    method public String getTitle();
18411    method public String getTouchIconUrl();
18412    method public String getUrl();
18413    method public android.webkit.WebViewProvider.ViewDelegate getViewDelegate();
18414    method public int getVisibleTitleHeight();
18415    method public android.webkit.WebChromeClient getWebChromeClient();
18416    method public android.webkit.WebViewClient getWebViewClient();
18417    method @Nullable public android.webkit.WebViewRenderProcess getWebViewRenderProcess();
18418    method @Nullable public android.webkit.WebViewRenderProcessClient getWebViewRenderProcessClient();
18419    method public android.view.View getZoomControls();
18420    method public void goBack();
18421    method public void goBackOrForward(int);
18422    method public void goForward();
18423    method public void init(java.util.Map<java.lang.String,java.lang.Object>, boolean);
18424    method public void insertVisualStateCallback(long, android.webkit.WebView.VisualStateCallback);
18425    method public void invokeZoomPicker();
18426    method public boolean isPaused();
18427    method public boolean isPrivateBrowsingEnabled();
18428    method public void loadData(String, String, String);
18429    method public void loadDataWithBaseURL(String, String, String, String, String);
18430    method public void loadUrl(String, java.util.Map<java.lang.String,java.lang.String>);
18431    method public void loadUrl(String);
18432    method public void notifyFindDialogDismissed();
18433    method public void onPause();
18434    method public void onResume();
18435    method public boolean overlayHorizontalScrollbar();
18436    method public boolean overlayVerticalScrollbar();
18437    method public boolean pageDown(boolean);
18438    method public boolean pageUp(boolean);
18439    method public void pauseTimers();
18440    method public void postMessageToMainFrame(android.webkit.WebMessage, android.net.Uri);
18441    method public void postUrl(String, byte[]);
18442    method public void reload();
18443    method public void removeJavascriptInterface(String);
18444    method public void requestFocusNodeHref(android.os.Message);
18445    method public void requestImageRef(android.os.Message);
18446    method public boolean restorePicture(android.os.Bundle, java.io.File);
18447    method public android.webkit.WebBackForwardList restoreState(android.os.Bundle);
18448    method public void resumeTimers();
18449    method public void savePassword(String, String, String);
18450    method public boolean savePicture(android.os.Bundle, java.io.File);
18451    method public android.webkit.WebBackForwardList saveState(android.os.Bundle);
18452    method public void saveWebArchive(String);
18453    method public void saveWebArchive(String, boolean, android.webkit.ValueCallback<java.lang.String>);
18454    method public void setCertificate(android.net.http.SslCertificate);
18455    method public void setDownloadListener(android.webkit.DownloadListener);
18456    method public void setFindListener(android.webkit.WebView.FindListener);
18457    method public void setHorizontalScrollbarOverlay(boolean);
18458    method public void setHttpAuthUsernamePassword(String, String, String, String);
18459    method public void setInitialScale(int);
18460    method public void setMapTrackballToArrowKeys(boolean);
18461    method public void setNetworkAvailable(boolean);
18462    method public void setPictureListener(android.webkit.WebView.PictureListener);
18463    method public void setRendererPriorityPolicy(int, boolean);
18464    method public default void setTextClassifier(@Nullable android.view.textclassifier.TextClassifier);
18465    method public void setVerticalScrollbarOverlay(boolean);
18466    method public void setWebChromeClient(android.webkit.WebChromeClient);
18467    method public void setWebViewClient(android.webkit.WebViewClient);
18468    method public void setWebViewRenderProcessClient(@Nullable java.util.concurrent.Executor, @Nullable android.webkit.WebViewRenderProcessClient);
18469    method public boolean showFindDialog(String, boolean);
18470    method public void stopLoading();
18471    method public boolean zoomBy(float);
18472    method public boolean zoomIn();
18473    method public boolean zoomOut();
18474  }
18475
18476  public static interface WebViewProvider.ScrollDelegate {
18477    method public int computeHorizontalScrollOffset();
18478    method public int computeHorizontalScrollRange();
18479    method public void computeScroll();
18480    method public int computeVerticalScrollExtent();
18481    method public int computeVerticalScrollOffset();
18482    method public int computeVerticalScrollRange();
18483  }
18484
18485  public static interface WebViewProvider.ViewDelegate {
18486    method public default void autofill(android.util.SparseArray<android.view.autofill.AutofillValue>);
18487    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>);
18488    method public boolean dispatchKeyEvent(android.view.KeyEvent);
18489    method public android.view.View findFocus(android.view.View);
18490    method public android.view.accessibility.AccessibilityNodeProvider getAccessibilityNodeProvider();
18491    method public android.os.Handler getHandler(android.os.Handler);
18492    method public default boolean isVisibleToUserForAutofill(int);
18493    method public void onActivityResult(int, int, android.content.Intent);
18494    method @Nullable public default android.view.WindowInsets onApplyWindowInsets(@Nullable android.view.WindowInsets);
18495    method public void onAttachedToWindow();
18496    method public default boolean onCheckIsTextEditor();
18497    method public void onConfigurationChanged(android.content.res.Configuration);
18498    method public android.view.inputmethod.InputConnection onCreateInputConnection(android.view.inputmethod.EditorInfo);
18499    method public default void onCreateVirtualViewTranslationRequests(@NonNull long[], @NonNull int[], @NonNull java.util.function.Consumer<android.view.translation.ViewTranslationRequest>);
18500    method public void onDetachedFromWindow();
18501    method public boolean onDragEvent(android.view.DragEvent);
18502    method public void onDraw(android.graphics.Canvas);
18503    method public void onDrawVerticalScrollBar(android.graphics.Canvas, android.graphics.drawable.Drawable, int, int, int, int);
18504    method public void onFinishTemporaryDetach();
18505    method public void onFocusChanged(boolean, int, android.graphics.Rect);
18506    method public boolean onGenericMotionEvent(android.view.MotionEvent);
18507    method public boolean onHoverEvent(android.view.MotionEvent);
18508    method public void onInitializeAccessibilityEvent(android.view.accessibility.AccessibilityEvent);
18509    method public void onInitializeAccessibilityNodeInfo(android.view.accessibility.AccessibilityNodeInfo);
18510    method public boolean onKeyDown(int, android.view.KeyEvent);
18511    method public boolean onKeyMultiple(int, int, android.view.KeyEvent);
18512    method public boolean onKeyUp(int, android.view.KeyEvent);
18513    method public void onMeasure(int, int);
18514    method public default void onMovedToDisplay(int, android.content.res.Configuration);
18515    method public void onOverScrolled(int, int, boolean, boolean);
18516    method public default void onProvideAutofillVirtualStructure(android.view.ViewStructure, int);
18517    method public default void onProvideContentCaptureStructure(@NonNull android.view.ViewStructure, int);
18518    method public void onProvideVirtualStructure(android.view.ViewStructure);
18519    method public void onScrollChanged(int, int, int, int);
18520    method public void onSizeChanged(int, int, int, int);
18521    method public void onStartTemporaryDetach();
18522    method public boolean onTouchEvent(android.view.MotionEvent);
18523    method public boolean onTrackballEvent(android.view.MotionEvent);
18524    method public default void onVirtualViewTranslationResponses(@NonNull android.util.LongSparseArray<android.view.translation.ViewTranslationResponse>);
18525    method public void onVisibilityChanged(android.view.View, int);
18526    method public void onWindowFocusChanged(boolean);
18527    method public void onWindowVisibilityChanged(int);
18528    method public boolean performAccessibilityAction(int, android.os.Bundle);
18529    method public boolean performLongClick();
18530    method public void preDispatchDraw(android.graphics.Canvas);
18531    method public boolean requestChildRectangleOnScreen(android.view.View, android.graphics.Rect, boolean);
18532    method public boolean requestFocus(int, android.graphics.Rect);
18533    method public void setBackgroundColor(int);
18534    method public boolean setFrame(int, int, int, int);
18535    method public void setLayerType(int, android.graphics.Paint);
18536    method public void setLayoutParams(android.view.ViewGroup.LayoutParams);
18537    method public void setOverScrollMode(int);
18538    method public void setScrollBarStyle(int);
18539    method public boolean shouldDelayChildPressedState();
18540  }
18541
18542  public final class WebViewProviderInfo implements android.os.Parcelable {
18543    ctor public WebViewProviderInfo(String, String, boolean, boolean, String[]);
18544    method public int describeContents();
18545    method public void writeToParcel(android.os.Parcel, int);
18546    field @NonNull public static final android.os.Parcelable.Creator<android.webkit.WebViewProviderInfo> CREATOR;
18547    field public final boolean availableByDefault;
18548    field public final String description;
18549    field public final boolean isFallback;
18550    field public final String packageName;
18551    field public final android.content.pm.Signature[] signatures;
18552  }
18553
18554  public final class WebViewUpdateService {
18555    method public static android.webkit.WebViewProviderInfo[] getAllWebViewPackages();
18556    method public static String getCurrentWebViewPackageName();
18557    method public static android.webkit.WebViewProviderInfo[] getValidWebViewPackages();
18558  }
18559
18560}
18561
18562package android.window {
18563
18564  public abstract class TaskFpsCallback {
18565    ctor public TaskFpsCallback();
18566    method public abstract void onFpsReported(float);
18567  }
18568
18569}
18570
18571