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_CONTEXT_HUB = "android.permission.ACCESS_CONTEXT_HUB";
11    field public static final String ACCESS_DRM_CERTIFICATES = "android.permission.ACCESS_DRM_CERTIFICATES";
12    field @Deprecated public static final String ACCESS_FM_RADIO = "android.permission.ACCESS_FM_RADIO";
13    field public static final String ACCESS_FPS_COUNTER = "android.permission.ACCESS_FPS_COUNTER";
14    field public static final String ACCESS_INSTANT_APPS = "android.permission.ACCESS_INSTANT_APPS";
15    field public static final String ACCESS_LOCUS_ID_USAGE_STATS = "android.permission.ACCESS_LOCUS_ID_USAGE_STATS";
16    field public static final String ACCESS_MOCK_LOCATION = "android.permission.ACCESS_MOCK_LOCATION";
17    field public static final String ACCESS_MTP = "android.permission.ACCESS_MTP";
18    field public static final String ACCESS_NETWORK_CONDITIONS = "android.permission.ACCESS_NETWORK_CONDITIONS";
19    field public static final String ACCESS_NOTIFICATIONS = "android.permission.ACCESS_NOTIFICATIONS";
20    field public static final String ACCESS_PDB_STATE = "android.permission.ACCESS_PDB_STATE";
21    field public static final String ACCESS_RCS_USER_CAPABILITY_EXCHANGE = "android.permission.ACCESS_RCS_USER_CAPABILITY_EXCHANGE";
22    field public static final String ACCESS_SHARED_LIBRARIES = "android.permission.ACCESS_SHARED_LIBRARIES";
23    field public static final String ACCESS_SHORTCUTS = "android.permission.ACCESS_SHORTCUTS";
24    field public static final String ACCESS_SURFACE_FLINGER = "android.permission.ACCESS_SURFACE_FLINGER";
25    field public static final String ACCESS_TUNED_INFO = "android.permission.ACCESS_TUNED_INFO";
26    field public static final String ACCESS_TV_DESCRAMBLER = "android.permission.ACCESS_TV_DESCRAMBLER";
27    field public static final String ACCESS_TV_SHARED_FILTER = "android.permission.ACCESS_TV_SHARED_FILTER";
28    field public static final String ACCESS_TV_TUNER = "android.permission.ACCESS_TV_TUNER";
29    field public static final String ACCESS_ULTRASOUND = "android.permission.ACCESS_ULTRASOUND";
30    field public static final String ACCESS_VIBRATOR_STATE = "android.permission.ACCESS_VIBRATOR_STATE";
31    field public static final String ACTIVITY_EMBEDDING = "android.permission.ACTIVITY_EMBEDDING";
32    field public static final String ADD_ALWAYS_UNLOCKED_DISPLAY = "android.permission.ADD_ALWAYS_UNLOCKED_DISPLAY";
33    field public static final String ADD_TRUSTED_DISPLAY = "android.permission.ADD_TRUSTED_DISPLAY";
34    field public static final String ADJUST_RUNTIME_PERMISSIONS_POLICY = "android.permission.ADJUST_RUNTIME_PERMISSIONS_POLICY";
35    field public static final String ALLOCATE_AGGRESSIVE = "android.permission.ALLOCATE_AGGRESSIVE";
36    field public static final String ALLOW_ANY_CODEC_FOR_PLAYBACK = "android.permission.ALLOW_ANY_CODEC_FOR_PLAYBACK";
37    field public static final String ALLOW_PLACE_IN_MULTI_PANE_SETTINGS = "android.permission.ALLOW_PLACE_IN_MULTI_PANE_SETTINGS";
38    field public static final String ALLOW_SLIPPERY_TOUCHES = "android.permission.ALLOW_SLIPPERY_TOUCHES";
39    field public static final String AMBIENT_WALLPAPER = "android.permission.AMBIENT_WALLPAPER";
40    field public static final String APPROVE_INCIDENT_REPORTS = "android.permission.APPROVE_INCIDENT_REPORTS";
41    field public static final String ASSOCIATE_COMPANION_DEVICES = "android.permission.ASSOCIATE_COMPANION_DEVICES";
42    field public static final String BACKGROUND_CAMERA = "android.permission.BACKGROUND_CAMERA";
43    field public static final String BACKUP = "android.permission.BACKUP";
44    field public static final String BATTERY_PREDICTION = "android.permission.BATTERY_PREDICTION";
45    field public static final String BIND_AMBIENT_CONTEXT_DETECTION_SERVICE = "android.permission.BIND_AMBIENT_CONTEXT_DETECTION_SERVICE";
46    field public static final String BIND_ATTENTION_SERVICE = "android.permission.BIND_ATTENTION_SERVICE";
47    field public static final String BIND_AUGMENTED_AUTOFILL_SERVICE = "android.permission.BIND_AUGMENTED_AUTOFILL_SERVICE";
48    field public static final String BIND_CALL_DIAGNOSTIC_SERVICE = "android.permission.BIND_CALL_DIAGNOSTIC_SERVICE";
49    field public static final String BIND_CALL_STREAMING_SERVICE = "android.permission.BIND_CALL_STREAMING_SERVICE";
50    field public static final String BIND_CELL_BROADCAST_SERVICE = "android.permission.BIND_CELL_BROADCAST_SERVICE";
51    field @Deprecated public static final String BIND_CONNECTION_SERVICE = "android.permission.BIND_CONNECTION_SERVICE";
52    field public static final String BIND_CONTENT_CAPTURE_SERVICE = "android.permission.BIND_CONTENT_CAPTURE_SERVICE";
53    field public static final String BIND_CONTENT_SUGGESTIONS_SERVICE = "android.permission.BIND_CONTENT_SUGGESTIONS_SERVICE";
54    field public static final String BIND_DIRECTORY_SEARCH = "android.permission.BIND_DIRECTORY_SEARCH";
55    field public static final String BIND_DISPLAY_HASHING_SERVICE = "android.permission.BIND_DISPLAY_HASHING_SERVICE";
56    field public static final String BIND_DOMAIN_VERIFICATION_AGENT = "android.permission.BIND_DOMAIN_VERIFICATION_AGENT";
57    field public static final String BIND_EUICC_SERVICE = "android.permission.BIND_EUICC_SERVICE";
58    field public static final String BIND_EXTERNAL_STORAGE_SERVICE = "android.permission.BIND_EXTERNAL_STORAGE_SERVICE";
59    field public static final String BIND_FIELD_CLASSIFICATION_SERVICE = "android.permission.BIND_FIELD_CLASSIFICATION_SERVICE";
60    field public static final String BIND_GBA_SERVICE = "android.permission.BIND_GBA_SERVICE";
61    field public static final String BIND_HOTWORD_DETECTION_SERVICE = "android.permission.BIND_HOTWORD_DETECTION_SERVICE";
62    field public static final String BIND_IMS_SERVICE = "android.permission.BIND_IMS_SERVICE";
63    field public static final String BIND_KEYGUARD_APPWIDGET = "android.permission.BIND_KEYGUARD_APPWIDGET";
64    field public static final String BIND_MUSIC_RECOGNITION_SERVICE = "android.permission.BIND_MUSIC_RECOGNITION_SERVICE";
65    field public static final String BIND_NETWORK_RECOMMENDATION_SERVICE = "android.permission.BIND_NETWORK_RECOMMENDATION_SERVICE";
66    field public static final String BIND_NOTIFICATION_ASSISTANT_SERVICE = "android.permission.BIND_NOTIFICATION_ASSISTANT_SERVICE";
67    field public static final String BIND_PHONE_ACCOUNT_SUGGESTION_SERVICE = "android.permission.BIND_PHONE_ACCOUNT_SUGGESTION_SERVICE";
68    field public static final String BIND_PRINT_RECOMMENDATION_SERVICE = "android.permission.BIND_PRINT_RECOMMENDATION_SERVICE";
69    field public static final String BIND_REMOTE_LOCKSCREEN_VALIDATION_SERVICE = "android.permission.BIND_REMOTE_LOCKSCREEN_VALIDATION_SERVICE";
70    field public static final String BIND_RESOLVER_RANKER_SERVICE = "android.permission.BIND_RESOLVER_RANKER_SERVICE";
71    field public static final String BIND_RESUME_ON_REBOOT_SERVICE = "android.permission.BIND_RESUME_ON_REBOOT_SERVICE";
72    field public static final String BIND_ROTATION_RESOLVER_SERVICE = "android.permission.BIND_ROTATION_RESOLVER_SERVICE";
73    field public static final String BIND_RUNTIME_PERMISSION_PRESENTER_SERVICE = "android.permission.BIND_RUNTIME_PERMISSION_PRESENTER_SERVICE";
74    field public static final String BIND_SATELLITE_SERVICE = "android.permission.BIND_SATELLITE_SERVICE";
75    field public static final String BIND_SETTINGS_SUGGESTIONS_SERVICE = "android.permission.BIND_SETTINGS_SUGGESTIONS_SERVICE";
76    field public static final String BIND_SOUND_TRIGGER_DETECTION_SERVICE = "android.permission.BIND_SOUND_TRIGGER_DETECTION_SERVICE";
77    field public static final String BIND_TELEPHONY_DATA_SERVICE = "android.permission.BIND_TELEPHONY_DATA_SERVICE";
78    field public static final String BIND_TELEPHONY_NETWORK_SERVICE = "android.permission.BIND_TELEPHONY_NETWORK_SERVICE";
79    field public static final String BIND_TEXTCLASSIFIER_SERVICE = "android.permission.BIND_TEXTCLASSIFIER_SERVICE";
80    field public static final String BIND_TIME_ZONE_PROVIDER_SERVICE = "android.permission.BIND_TIME_ZONE_PROVIDER_SERVICE";
81    field public static final String BIND_TRACE_REPORT_SERVICE = "android.permission.BIND_TRACE_REPORT_SERVICE";
82    field public static final String BIND_TRANSLATION_SERVICE = "android.permission.BIND_TRANSLATION_SERVICE";
83    field public static final String BIND_TRUST_AGENT = "android.permission.BIND_TRUST_AGENT";
84    field public static final String BIND_TV_REMOTE_SERVICE = "android.permission.BIND_TV_REMOTE_SERVICE";
85    field public static final String BIND_VISUAL_QUERY_DETECTION_SERVICE = "android.permission.BIND_VISUAL_QUERY_DETECTION_SERVICE";
86    field public static final String BIND_WALLPAPER_EFFECTS_GENERATION_SERVICE = "android.permission.BIND_WALLPAPER_EFFECTS_GENERATION_SERVICE";
87    field public static final String BIND_WEARABLE_SENSING_SERVICE = "android.permission.BIND_WEARABLE_SENSING_SERVICE";
88    field public static final String BLUETOOTH_MAP = "android.permission.BLUETOOTH_MAP";
89    field public static final String BRICK = "android.permission.BRICK";
90    field public static final String BRIGHTNESS_SLIDER_USAGE = "android.permission.BRIGHTNESS_SLIDER_USAGE";
91    field public static final String BROADCAST_CLOSE_SYSTEM_DIALOGS = "android.permission.BROADCAST_CLOSE_SYSTEM_DIALOGS";
92    field @Deprecated public static final String BROADCAST_NETWORK_PRIVILEGED = "android.permission.BROADCAST_NETWORK_PRIVILEGED";
93    field public static final String BYPASS_ROLE_QUALIFICATION = "android.permission.BYPASS_ROLE_QUALIFICATION";
94    field public static final String CALL_AUDIO_INTERCEPTION = "android.permission.CALL_AUDIO_INTERCEPTION";
95    field public static final String CAMERA_DISABLE_TRANSMIT_LED = "android.permission.CAMERA_DISABLE_TRANSMIT_LED";
96    field public static final String CAMERA_OPEN_CLOSE_LISTENER = "android.permission.CAMERA_OPEN_CLOSE_LISTENER";
97    field public static final String CAPTURE_AUDIO_HOTWORD = "android.permission.CAPTURE_AUDIO_HOTWORD";
98    field public static final String CAPTURE_CONSENTLESS_BUGREPORT_ON_USERDEBUG_BUILD = "android.permission.CAPTURE_CONSENTLESS_BUGREPORT_ON_USERDEBUG_BUILD";
99    field public static final String CAPTURE_MEDIA_OUTPUT = "android.permission.CAPTURE_MEDIA_OUTPUT";
100    field public static final String CAPTURE_TUNER_AUDIO_INPUT = "android.permission.CAPTURE_TUNER_AUDIO_INPUT";
101    field public static final String CAPTURE_TV_INPUT = "android.permission.CAPTURE_TV_INPUT";
102    field public static final String CAPTURE_VOICE_COMMUNICATION_OUTPUT = "android.permission.CAPTURE_VOICE_COMMUNICATION_OUTPUT";
103    field public static final String CHANGE_APP_IDLE_STATE = "android.permission.CHANGE_APP_IDLE_STATE";
104    field public static final String CHANGE_APP_LAUNCH_TIME_ESTIMATE = "android.permission.CHANGE_APP_LAUNCH_TIME_ESTIMATE";
105    field public static final String CHANGE_DEVICE_IDLE_TEMP_WHITELIST = "android.permission.CHANGE_DEVICE_IDLE_TEMP_WHITELIST";
106    field public static final String CHECK_REMOTE_LOCKSCREEN = "android.permission.CHECK_REMOTE_LOCKSCREEN";
107    field public static final String CLEAR_APP_USER_DATA = "android.permission.CLEAR_APP_USER_DATA";
108    field public static final String COMPANION_APPROVE_WIFI_CONNECTIONS = "android.permission.COMPANION_APPROVE_WIFI_CONNECTIONS";
109    field public static final String CONFIGURE_DISPLAY_BRIGHTNESS = "android.permission.CONFIGURE_DISPLAY_BRIGHTNESS";
110    field public static final String CONFIGURE_INTERACT_ACROSS_PROFILES = "android.permission.CONFIGURE_INTERACT_ACROSS_PROFILES";
111    field @Deprecated public static final String CONNECTIVITY_INTERNAL = "android.permission.CONNECTIVITY_INTERNAL";
112    field public static final String CONNECTIVITY_USE_RESTRICTED_NETWORKS = "android.permission.CONNECTIVITY_USE_RESTRICTED_NETWORKS";
113    field public static final String CONTROL_DEVICE_LIGHTS = "android.permission.CONTROL_DEVICE_LIGHTS";
114    field public static final String CONTROL_DISPLAY_COLOR_TRANSFORMS = "android.permission.CONTROL_DISPLAY_COLOR_TRANSFORMS";
115    field public static final String CONTROL_DISPLAY_SATURATION = "android.permission.CONTROL_DISPLAY_SATURATION";
116    field public static final String CONTROL_INCALL_EXPERIENCE = "android.permission.CONTROL_INCALL_EXPERIENCE";
117    field public static final String CONTROL_KEYGUARD_SECURE_NOTIFICATIONS = "android.permission.CONTROL_KEYGUARD_SECURE_NOTIFICATIONS";
118    field public static final String CONTROL_OEM_PAID_NETWORK_PREFERENCE = "android.permission.CONTROL_OEM_PAID_NETWORK_PREFERENCE";
119    field public static final String CONTROL_VPN = "android.permission.CONTROL_VPN";
120    field public static final String CREATE_USERS = "android.permission.CREATE_USERS";
121    field public static final String CREATE_VIRTUAL_DEVICE = "android.permission.CREATE_VIRTUAL_DEVICE";
122    field public static final String CRYPT_KEEPER = "android.permission.CRYPT_KEEPER";
123    field public static final String DEVICE_POWER = "android.permission.DEVICE_POWER";
124    field public static final String DISABLE_SYSTEM_SOUND_EFFECTS = "android.permission.DISABLE_SYSTEM_SOUND_EFFECTS";
125    field public static final String DISPATCH_PROVISIONING_MESSAGE = "android.permission.DISPATCH_PROVISIONING_MESSAGE";
126    field public static final String DOMAIN_VERIFICATION_AGENT = "android.permission.DOMAIN_VERIFICATION_AGENT";
127    field public static final String ENTER_CAR_MODE_PRIORITIZED = "android.permission.ENTER_CAR_MODE_PRIORITIZED";
128    field public static final String EXEMPT_FROM_AUDIO_RECORD_RESTRICTIONS = "android.permission.EXEMPT_FROM_AUDIO_RECORD_RESTRICTIONS";
129    field public static final String FORCE_BACK = "android.permission.FORCE_BACK";
130    field public static final String FORCE_STOP_PACKAGES = "android.permission.FORCE_STOP_PACKAGES";
131    field public static final String GET_APP_METADATA = "android.permission.GET_APP_METADATA";
132    field public static final String GET_APP_OPS_STATS = "android.permission.GET_APP_OPS_STATS";
133    field public static final String GET_HISTORICAL_APP_OPS_STATS = "android.permission.GET_HISTORICAL_APP_OPS_STATS";
134    field public static final String GET_PROCESS_STATE_AND_OOM_SCORE = "android.permission.GET_PROCESS_STATE_AND_OOM_SCORE";
135    field public static final String GET_RUNTIME_PERMISSIONS = "android.permission.GET_RUNTIME_PERMISSIONS";
136    field public static final String GET_TOP_ACTIVITY_INFO = "android.permission.GET_TOP_ACTIVITY_INFO";
137    field @Deprecated public static final String GRANT_PROFILE_OWNER_DEVICE_IDS_ACCESS = "android.permission.GRANT_PROFILE_OWNER_DEVICE_IDS_ACCESS";
138    field public static final String GRANT_RUNTIME_PERMISSIONS = "android.permission.GRANT_RUNTIME_PERMISSIONS";
139    field public static final String GRANT_RUNTIME_PERMISSIONS_TO_TELEPHONY_DEFAULTS = "android.permission.GRANT_RUNTIME_PERMISSIONS_TO_TELEPHONY_DEFAULTS";
140    field public static final String HANDLE_CAR_MODE_CHANGES = "android.permission.HANDLE_CAR_MODE_CHANGES";
141    field public static final String HARDWARE_TEST = "android.permission.HARDWARE_TEST";
142    field public static final String HDMI_CEC = "android.permission.HDMI_CEC";
143    field @Deprecated public static final String HIDE_NON_SYSTEM_OVERLAY_WINDOWS = "android.permission.HIDE_NON_SYSTEM_OVERLAY_WINDOWS";
144    field public static final String INJECT_EVENTS = "android.permission.INJECT_EVENTS";
145    field public static final String INSTALL_DPC_PACKAGES = "android.permission.INSTALL_DPC_PACKAGES";
146    field public static final String INSTALL_DYNAMIC_SYSTEM = "android.permission.INSTALL_DYNAMIC_SYSTEM";
147    field public static final String INSTALL_EXISTING_PACKAGES = "com.android.permission.INSTALL_EXISTING_PACKAGES";
148    field public static final String INSTALL_GRANT_RUNTIME_PERMISSIONS = "android.permission.INSTALL_GRANT_RUNTIME_PERMISSIONS";
149    field public static final String INSTALL_LOCATION_TIME_ZONE_PROVIDER_SERVICE = "android.permission.INSTALL_LOCATION_TIME_ZONE_PROVIDER_SERVICE";
150    field public static final String INSTALL_PACKAGE_UPDATES = "android.permission.INSTALL_PACKAGE_UPDATES";
151    field public static final String INSTALL_SELF_UPDATES = "android.permission.INSTALL_SELF_UPDATES";
152    field public static final String INTENT_FILTER_VERIFICATION_AGENT = "android.permission.INTENT_FILTER_VERIFICATION_AGENT";
153    field public static final String INTERACT_ACROSS_USERS = "android.permission.INTERACT_ACROSS_USERS";
154    field public static final String INTERACT_ACROSS_USERS_FULL = "android.permission.INTERACT_ACROSS_USERS_FULL";
155    field public static final String INTERNAL_SYSTEM_WINDOW = "android.permission.INTERNAL_SYSTEM_WINDOW";
156    field public static final String INVOKE_CARRIER_SETUP = "android.permission.INVOKE_CARRIER_SETUP";
157    field public static final String KILL_ALL_BACKGROUND_PROCESSES = "android.permission.KILL_ALL_BACKGROUND_PROCESSES";
158    field public static final String KILL_UID = "android.permission.KILL_UID";
159    field public static final String LAUNCH_DEVICE_MANAGER_SETUP = "android.permission.LAUNCH_DEVICE_MANAGER_SETUP";
160    field public static final String LOCAL_MAC_ADDRESS = "android.permission.LOCAL_MAC_ADDRESS";
161    field public static final String LOCATION_BYPASS = "android.permission.LOCATION_BYPASS";
162    field public static final String LOCK_DEVICE = "android.permission.LOCK_DEVICE";
163    field public static final String LOG_FOREGROUND_RESOURCE_USE = "android.permission.LOG_FOREGROUND_RESOURCE_USE";
164    field public static final String LOOP_RADIO = "android.permission.LOOP_RADIO";
165    field public static final String MANAGE_ACCESSIBILITY = "android.permission.MANAGE_ACCESSIBILITY";
166    field @Deprecated public static final String MANAGE_ACTIVITY_STACKS = "android.permission.MANAGE_ACTIVITY_STACKS";
167    field public static final String MANAGE_ACTIVITY_TASKS = "android.permission.MANAGE_ACTIVITY_TASKS";
168    field public static final String MANAGE_APP_HIBERNATION = "android.permission.MANAGE_APP_HIBERNATION";
169    field public static final String MANAGE_APP_OPS_RESTRICTIONS = "android.permission.MANAGE_APP_OPS_RESTRICTIONS";
170    field public static final String MANAGE_APP_PREDICTIONS = "android.permission.MANAGE_APP_PREDICTIONS";
171    field public static final String MANAGE_APP_TOKENS = "android.permission.MANAGE_APP_TOKENS";
172    field public static final String MANAGE_AUTO_FILL = "android.permission.MANAGE_AUTO_FILL";
173    field public static final String MANAGE_BLUETOOTH_WHEN_WIRELESS_CONSENT_REQUIRED = "android.permission.MANAGE_BLUETOOTH_WHEN_WIRELESS_CONSENT_REQUIRED";
174    field public static final String MANAGE_CARRIER_OEM_UNLOCK_STATE = "android.permission.MANAGE_CARRIER_OEM_UNLOCK_STATE";
175    field public static final String MANAGE_CA_CERTIFICATES = "android.permission.MANAGE_CA_CERTIFICATES";
176    field public static final String MANAGE_CLIPBOARD_ACCESS_NOTIFICATION = "android.permission.MANAGE_CLIPBOARD_ACCESS_NOTIFICATION";
177    field public static final String MANAGE_CLOUDSEARCH = "android.permission.MANAGE_CLOUDSEARCH";
178    field public static final String MANAGE_CONTENT_CAPTURE = "android.permission.MANAGE_CONTENT_CAPTURE";
179    field public static final String MANAGE_CONTENT_SUGGESTIONS = "android.permission.MANAGE_CONTENT_SUGGESTIONS";
180    field public static final String MANAGE_DEBUGGING = "android.permission.MANAGE_DEBUGGING";
181    field public static final String MANAGE_DEFAULT_APPLICATIONS = "android.permission.MANAGE_DEFAULT_APPLICATIONS";
182    field public static final String MANAGE_DEVICE_ADMINS = "android.permission.MANAGE_DEVICE_ADMINS";
183    field public static final String MANAGE_DEVICE_POLICY_APP_EXEMPTIONS = "android.permission.MANAGE_DEVICE_POLICY_APP_EXEMPTIONS";
184    field public static final String MANAGE_ETHERNET_NETWORKS = "android.permission.MANAGE_ETHERNET_NETWORKS";
185    field public static final String MANAGE_FACTORY_RESET_PROTECTION = "android.permission.MANAGE_FACTORY_RESET_PROTECTION";
186    field public static final String MANAGE_GAME_ACTIVITY = "android.permission.MANAGE_GAME_ACTIVITY";
187    field public static final String MANAGE_GAME_MODE = "android.permission.MANAGE_GAME_MODE";
188    field public static final String MANAGE_HOTWORD_DETECTION = "android.permission.MANAGE_HOTWORD_DETECTION";
189    field public static final String MANAGE_IPSEC_TUNNELS = "android.permission.MANAGE_IPSEC_TUNNELS";
190    field public static final String MANAGE_LOW_POWER_STANDBY = "android.permission.MANAGE_LOW_POWER_STANDBY";
191    field public static final String MANAGE_MUSIC_RECOGNITION = "android.permission.MANAGE_MUSIC_RECOGNITION";
192    field public static final String MANAGE_NOTIFICATION_LISTENERS = "android.permission.MANAGE_NOTIFICATION_LISTENERS";
193    field public static final String MANAGE_ONE_TIME_PERMISSION_SESSIONS = "android.permission.MANAGE_ONE_TIME_PERMISSION_SESSIONS";
194    field public static final String MANAGE_PROFILE_AND_DEVICE_OWNERS = "android.permission.MANAGE_PROFILE_AND_DEVICE_OWNERS";
195    field public static final String MANAGE_ROLE_HOLDERS = "android.permission.MANAGE_ROLE_HOLDERS";
196    field public static final String MANAGE_ROLLBACKS = "android.permission.MANAGE_ROLLBACKS";
197    field public static final String MANAGE_ROTATION_RESOLVER = "android.permission.MANAGE_ROTATION_RESOLVER";
198    field public static final String MANAGE_SAFETY_CENTER = "android.permission.MANAGE_SAFETY_CENTER";
199    field public static final String MANAGE_SEARCH_UI = "android.permission.MANAGE_SEARCH_UI";
200    field public static final String MANAGE_SENSOR_PRIVACY = "android.permission.MANAGE_SENSOR_PRIVACY";
201    field public static final String MANAGE_SMARTSPACE = "android.permission.MANAGE_SMARTSPACE";
202    field public static final String MANAGE_SOUND_TRIGGER = "android.permission.MANAGE_SOUND_TRIGGER";
203    field public static final String MANAGE_SPEECH_RECOGNITION = "android.permission.MANAGE_SPEECH_RECOGNITION";
204    field public static final String MANAGE_SUBSCRIPTION_PLANS = "android.permission.MANAGE_SUBSCRIPTION_PLANS";
205    field public static final String MANAGE_SUBSCRIPTION_USER_ASSOCIATION = "android.permission.MANAGE_SUBSCRIPTION_USER_ASSOCIATION";
206    field public static final String MANAGE_TEST_NETWORKS = "android.permission.MANAGE_TEST_NETWORKS";
207    field public static final String MANAGE_TIME_AND_ZONE_DETECTION = "android.permission.MANAGE_TIME_AND_ZONE_DETECTION";
208    field public static final String MANAGE_UI_TRANSLATION = "android.permission.MANAGE_UI_TRANSLATION";
209    field public static final String MANAGE_USB = "android.permission.MANAGE_USB";
210    field public static final String MANAGE_USERS = "android.permission.MANAGE_USERS";
211    field public static final String MANAGE_USER_OEM_UNLOCK_STATE = "android.permission.MANAGE_USER_OEM_UNLOCK_STATE";
212    field public static final String MANAGE_WALLPAPER_EFFECTS_GENERATION = "android.permission.MANAGE_WALLPAPER_EFFECTS_GENERATION";
213    field public static final String MANAGE_WEAK_ESCROW_TOKEN = "android.permission.MANAGE_WEAK_ESCROW_TOKEN";
214    field public static final String MANAGE_WEARABLE_SENSING_SERVICE = "android.permission.MANAGE_WEARABLE_SENSING_SERVICE";
215    field public static final String MANAGE_WIFI_COUNTRY_CODE = "android.permission.MANAGE_WIFI_COUNTRY_CODE";
216    field public static final String MARK_DEVICE_ORGANIZATION_OWNED = "android.permission.MARK_DEVICE_ORGANIZATION_OWNED";
217    field public static final String MEDIA_RESOURCE_OVERRIDE_PID = "android.permission.MEDIA_RESOURCE_OVERRIDE_PID";
218    field public static final String MIGRATE_HEALTH_CONNECT_DATA = "android.permission.MIGRATE_HEALTH_CONNECT_DATA";
219    field public static final String MODIFY_APPWIDGET_BIND_PERMISSIONS = "android.permission.MODIFY_APPWIDGET_BIND_PERMISSIONS";
220    field public static final String MODIFY_AUDIO_ROUTING = "android.permission.MODIFY_AUDIO_ROUTING";
221    field public static final String MODIFY_AUDIO_SETTINGS_PRIVILEGED = "android.permission.MODIFY_AUDIO_SETTINGS_PRIVILEGED";
222    field public static final String MODIFY_CELL_BROADCASTS = "android.permission.MODIFY_CELL_BROADCASTS";
223    field public static final String MODIFY_DAY_NIGHT_MODE = "android.permission.MODIFY_DAY_NIGHT_MODE";
224    field @Deprecated public static final String MODIFY_NETWORK_ACCOUNTING = "android.permission.MODIFY_NETWORK_ACCOUNTING";
225    field public static final String MODIFY_PARENTAL_CONTROLS = "android.permission.MODIFY_PARENTAL_CONTROLS";
226    field public static final String MODIFY_QUIET_MODE = "android.permission.MODIFY_QUIET_MODE";
227    field public static final String MODIFY_SETTINGS_OVERRIDEABLE_BY_RESTORE = "android.permission.MODIFY_SETTINGS_OVERRIDEABLE_BY_RESTORE";
228    field public static final String MONITOR_DEVICE_CONFIG_ACCESS = "android.permission.MONITOR_DEVICE_CONFIG_ACCESS";
229    field public static final String MOVE_PACKAGE = "android.permission.MOVE_PACKAGE";
230    field public static final String NETWORK_AIRPLANE_MODE = "android.permission.NETWORK_AIRPLANE_MODE";
231    field public static final String NETWORK_CARRIER_PROVISIONING = "android.permission.NETWORK_CARRIER_PROVISIONING";
232    field public static final String NETWORK_FACTORY = "android.permission.NETWORK_FACTORY";
233    field public static final String NETWORK_MANAGED_PROVISIONING = "android.permission.NETWORK_MANAGED_PROVISIONING";
234    field public static final String NETWORK_SCAN = "android.permission.NETWORK_SCAN";
235    field public static final String NETWORK_SETTINGS = "android.permission.NETWORK_SETTINGS";
236    field public static final String NETWORK_SETUP_WIZARD = "android.permission.NETWORK_SETUP_WIZARD";
237    field public static final String NETWORK_SIGNAL_STRENGTH_WAKEUP = "android.permission.NETWORK_SIGNAL_STRENGTH_WAKEUP";
238    field public static final String NETWORK_STACK = "android.permission.NETWORK_STACK";
239    field public static final String NETWORK_STATS_PROVIDER = "android.permission.NETWORK_STATS_PROVIDER";
240    field public static final String NFC_SET_CONTROLLER_ALWAYS_ON = "android.permission.NFC_SET_CONTROLLER_ALWAYS_ON";
241    field public static final String NOTIFICATION_DURING_SETUP = "android.permission.NOTIFICATION_DURING_SETUP";
242    field public static final String NOTIFY_TV_INPUTS = "android.permission.NOTIFY_TV_INPUTS";
243    field public static final String OBSERVE_APP_USAGE = "android.permission.OBSERVE_APP_USAGE";
244    field public static final String OBSERVE_NETWORK_POLICY = "android.permission.OBSERVE_NETWORK_POLICY";
245    field public static final String OBSERVE_ROLE_HOLDERS = "android.permission.OBSERVE_ROLE_HOLDERS";
246    field public static final String OBSERVE_SENSOR_PRIVACY = "android.permission.OBSERVE_SENSOR_PRIVACY";
247    field public static final String OPEN_ACCESSIBILITY_DETAILS_SETTINGS = "android.permission.OPEN_ACCESSIBILITY_DETAILS_SETTINGS";
248    field public static final String OVERRIDE_COMPAT_CHANGE_CONFIG_ON_RELEASE_BUILD = "android.permission.OVERRIDE_COMPAT_CHANGE_CONFIG_ON_RELEASE_BUILD";
249    field public static final String PACKAGE_VERIFICATION_AGENT = "android.permission.PACKAGE_VERIFICATION_AGENT";
250    field public static final String PACKET_KEEPALIVE_OFFLOAD = "android.permission.PACKET_KEEPALIVE_OFFLOAD";
251    field public static final String PEERS_MAC_ADDRESS = "android.permission.PEERS_MAC_ADDRESS";
252    field public static final String PERFORM_CDMA_PROVISIONING = "android.permission.PERFORM_CDMA_PROVISIONING";
253    field public static final String PERFORM_IMS_SINGLE_REGISTRATION = "android.permission.PERFORM_IMS_SINGLE_REGISTRATION";
254    field public static final String PERFORM_SIM_ACTIVATION = "android.permission.PERFORM_SIM_ACTIVATION";
255    field public static final String POWER_SAVER = "android.permission.POWER_SAVER";
256    field public static final String PROVIDE_DEFAULT_ENABLED_CREDENTIAL_SERVICE = "android.permission.PROVIDE_DEFAULT_ENABLED_CREDENTIAL_SERVICE";
257    field public static final String PROVIDE_RESOLVER_RANKER_SERVICE = "android.permission.PROVIDE_RESOLVER_RANKER_SERVICE";
258    field public static final String PROVIDE_TRUST_AGENT = "android.permission.PROVIDE_TRUST_AGENT";
259    field public static final String PROVISION_DEMO_DEVICE = "android.permission.PROVISION_DEMO_DEVICE";
260    field public static final String QUERY_ADMIN_POLICY = "android.permission.QUERY_ADMIN_POLICY";
261    field public static final String QUERY_CLONED_APPS = "android.permission.QUERY_CLONED_APPS";
262    field @Deprecated public static final String QUERY_TIME_ZONE_RULES = "android.permission.QUERY_TIME_ZONE_RULES";
263    field public static final String QUERY_USERS = "android.permission.QUERY_USERS";
264    field public static final String RADIO_SCAN_WITHOUT_LOCATION = "android.permission.RADIO_SCAN_WITHOUT_LOCATION";
265    field public static final String READ_ACTIVE_EMERGENCY_SESSION = "android.permission.READ_ACTIVE_EMERGENCY_SESSION";
266    field public static final String READ_APP_SPECIFIC_LOCALES = "android.permission.READ_APP_SPECIFIC_LOCALES";
267    field public static final String READ_CARRIER_APP_INFO = "android.permission.READ_CARRIER_APP_INFO";
268    field public static final String READ_CELL_BROADCASTS = "android.permission.READ_CELL_BROADCASTS";
269    field public static final String READ_CLIPBOARD_IN_BACKGROUND = "android.permission.READ_CLIPBOARD_IN_BACKGROUND";
270    field public static final String READ_CONTENT_RATING_SYSTEMS = "android.permission.READ_CONTENT_RATING_SYSTEMS";
271    field public static final String READ_DEVICE_CONFIG = "android.permission.READ_DEVICE_CONFIG";
272    field public static final String READ_DREAM_STATE = "android.permission.READ_DREAM_STATE";
273    field public static final String READ_GLOBAL_APP_SEARCH_DATA = "android.permission.READ_GLOBAL_APP_SEARCH_DATA";
274    field public static final String READ_INSTALL_SESSIONS = "android.permission.READ_INSTALL_SESSIONS";
275    field public static final String READ_NETWORK_USAGE_HISTORY = "android.permission.READ_NETWORK_USAGE_HISTORY";
276    field public static final String READ_OEM_UNLOCK_STATE = "android.permission.READ_OEM_UNLOCK_STATE";
277    field public static final String READ_PEOPLE_DATA = "android.permission.READ_PEOPLE_DATA";
278    field public static final String READ_PRINT_SERVICES = "android.permission.READ_PRINT_SERVICES";
279    field public static final String READ_PRINT_SERVICE_RECOMMENDATIONS = "android.permission.READ_PRINT_SERVICE_RECOMMENDATIONS";
280    field public static final String READ_PRIVILEGED_PHONE_STATE = "android.permission.READ_PRIVILEGED_PHONE_STATE";
281    field public static final String READ_PROJECTION_STATE = "android.permission.READ_PROJECTION_STATE";
282    field public static final String READ_RESTRICTED_STATS = "android.permission.READ_RESTRICTED_STATS";
283    field public static final String READ_RUNTIME_PROFILES = "android.permission.READ_RUNTIME_PROFILES";
284    field public static final String READ_SAFETY_CENTER_STATUS = "android.permission.READ_SAFETY_CENTER_STATUS";
285    field public static final String READ_SEARCH_INDEXABLES = "android.permission.READ_SEARCH_INDEXABLES";
286    field public static final String READ_SYSTEM_UPDATE_INFO = "android.permission.READ_SYSTEM_UPDATE_INFO";
287    field public static final String READ_WALLPAPER_INTERNAL = "android.permission.READ_WALLPAPER_INTERNAL";
288    field public static final String READ_WIFI_CREDENTIAL = "android.permission.READ_WIFI_CREDENTIAL";
289    field public static final String READ_WRITE_SYNC_DISABLED_MODE_CONFIG = "android.permission.READ_WRITE_SYNC_DISABLED_MODE_CONFIG";
290    field public static final String REAL_GET_TASKS = "android.permission.REAL_GET_TASKS";
291    field public static final String RECEIVE_BLUETOOTH_MAP = "android.permission.RECEIVE_BLUETOOTH_MAP";
292    field public static final String RECEIVE_DATA_ACTIVITY_CHANGE = "android.permission.RECEIVE_DATA_ACTIVITY_CHANGE";
293    field public static final String RECEIVE_DEVICE_CUSTOMIZATION_READY = "android.permission.RECEIVE_DEVICE_CUSTOMIZATION_READY";
294    field public static final String RECEIVE_EMERGENCY_BROADCAST = "android.permission.RECEIVE_EMERGENCY_BROADCAST";
295    field public static final String RECEIVE_WIFI_CREDENTIAL_CHANGE = "android.permission.RECEIVE_WIFI_CREDENTIAL_CHANGE";
296    field public static final String RECORD_BACKGROUND_AUDIO = "android.permission.RECORD_BACKGROUND_AUDIO";
297    field public static final String RECOVERY = "android.permission.RECOVERY";
298    field public static final String RECOVER_KEYSTORE = "android.permission.RECOVER_KEYSTORE";
299    field public static final String REGISTER_CALL_PROVIDER = "android.permission.REGISTER_CALL_PROVIDER";
300    field public static final String REGISTER_CONNECTION_MANAGER = "android.permission.REGISTER_CONNECTION_MANAGER";
301    field public static final String REGISTER_SIM_SUBSCRIPTION = "android.permission.REGISTER_SIM_SUBSCRIPTION";
302    field public static final String REGISTER_STATS_PULL_ATOM = "android.permission.REGISTER_STATS_PULL_ATOM";
303    field public static final String REMOTE_DISPLAY_PROVIDER = "android.permission.REMOTE_DISPLAY_PROVIDER";
304    field public static final String REMOVE_DRM_CERTIFICATES = "android.permission.REMOVE_DRM_CERTIFICATES";
305    field public static final String REMOVE_TASKS = "android.permission.REMOVE_TASKS";
306    field public static final String RENOUNCE_PERMISSIONS = "android.permission.RENOUNCE_PERMISSIONS";
307    field @Deprecated public static final String REQUEST_NETWORK_SCORES = "android.permission.REQUEST_NETWORK_SCORES";
308    field public static final String REQUEST_NOTIFICATION_ASSISTANT_SERVICE = "android.permission.REQUEST_NOTIFICATION_ASSISTANT_SERVICE";
309    field public static final String RESET_PASSWORD = "android.permission.RESET_PASSWORD";
310    field public static final String RESTART_WIFI_SUBSYSTEM = "android.permission.RESTART_WIFI_SUBSYSTEM";
311    field public static final String RESTORE_RUNTIME_PERMISSIONS = "android.permission.RESTORE_RUNTIME_PERMISSIONS";
312    field public static final String RESTRICTED_VR_ACCESS = "android.permission.RESTRICTED_VR_ACCESS";
313    field public static final String RETRIEVE_WINDOW_CONTENT = "android.permission.RETRIEVE_WINDOW_CONTENT";
314    field public static final String REVIEW_ACCESSIBILITY_SERVICES = "android.permission.REVIEW_ACCESSIBILITY_SERVICES";
315    field public static final String REVOKE_RUNTIME_PERMISSIONS = "android.permission.REVOKE_RUNTIME_PERMISSIONS";
316    field public static final String ROTATE_SURFACE_FLINGER = "android.permission.ROTATE_SURFACE_FLINGER";
317    field public static final String SATELLITE_COMMUNICATION = "android.permission.SATELLITE_COMMUNICATION";
318    field public static final String SCHEDULE_PRIORITIZED_ALARM = "android.permission.SCHEDULE_PRIORITIZED_ALARM";
319    field @Deprecated public static final String SCORE_NETWORKS = "android.permission.SCORE_NETWORKS";
320    field public static final String SECURE_ELEMENT_PRIVILEGED_OPERATION = "android.permission.SECURE_ELEMENT_PRIVILEGED_OPERATION";
321    field public static final String SEND_CATEGORY_CAR_NOTIFICATIONS = "android.permission.SEND_CATEGORY_CAR_NOTIFICATIONS";
322    field public static final String SEND_DEVICE_CUSTOMIZATION_READY = "android.permission.SEND_DEVICE_CUSTOMIZATION_READY";
323    field public static final String SEND_SAFETY_CENTER_UPDATE = "android.permission.SEND_SAFETY_CENTER_UPDATE";
324    field public static final String SEND_SHOW_SUSPENDED_APP_DETAILS = "android.permission.SEND_SHOW_SUSPENDED_APP_DETAILS";
325    field public static final String SEND_SMS_NO_CONFIRMATION = "android.permission.SEND_SMS_NO_CONFIRMATION";
326    field public static final String SERIAL_PORT = "android.permission.SERIAL_PORT";
327    field public static final String SET_ACTIVITY_WATCHER = "android.permission.SET_ACTIVITY_WATCHER";
328    field public static final String SET_CLIP_SOURCE = "android.permission.SET_CLIP_SOURCE";
329    field public static final String SET_DEFAULT_ACCOUNT_FOR_CONTACTS = "android.permission.SET_DEFAULT_ACCOUNT_FOR_CONTACTS";
330    field public static final String SET_HARMFUL_APP_WARNINGS = "android.permission.SET_HARMFUL_APP_WARNINGS";
331    field public static final String SET_LOW_POWER_STANDBY_PORTS = "android.permission.SET_LOW_POWER_STANDBY_PORTS";
332    field public static final String SET_MEDIA_KEY_LISTENER = "android.permission.SET_MEDIA_KEY_LISTENER";
333    field public static final String SET_ORIENTATION = "android.permission.SET_ORIENTATION";
334    field public static final String SET_POINTER_SPEED = "android.permission.SET_POINTER_SPEED";
335    field public static final String SET_SCREEN_COMPATIBILITY = "android.permission.SET_SCREEN_COMPATIBILITY";
336    field public static final String SET_SYSTEM_AUDIO_CAPTION = "android.permission.SET_SYSTEM_AUDIO_CAPTION";
337    field public static final String SET_UNRESTRICTED_KEEP_CLEAR_AREAS = "android.permission.SET_UNRESTRICTED_KEEP_CLEAR_AREAS";
338    field public static final String SET_VOLUME_KEY_LONG_PRESS_LISTENER = "android.permission.SET_VOLUME_KEY_LONG_PRESS_LISTENER";
339    field public static final String SET_WALLPAPER_COMPONENT = "android.permission.SET_WALLPAPER_COMPONENT";
340    field public static final String SET_WALLPAPER_DIM_AMOUNT = "android.permission.SET_WALLPAPER_DIM_AMOUNT";
341    field public static final String SHOW_KEYGUARD_MESSAGE = "android.permission.SHOW_KEYGUARD_MESSAGE";
342    field public static final String SHUTDOWN = "android.permission.SHUTDOWN";
343    field public static final String SIGNAL_REBOOT_READINESS = "android.permission.SIGNAL_REBOOT_READINESS";
344    field public static final String SOUND_TRIGGER_RUN_IN_BATTERY_SAVER = "android.permission.SOUND_TRIGGER_RUN_IN_BATTERY_SAVER";
345    field public static final String STAGE_HEALTH_CONNECT_REMOTE_DATA = "android.permission.STAGE_HEALTH_CONNECT_REMOTE_DATA";
346    field public static final String START_ACTIVITIES_FROM_BACKGROUND = "android.permission.START_ACTIVITIES_FROM_BACKGROUND";
347    field public static final String START_CROSS_PROFILE_ACTIVITIES = "android.permission.START_CROSS_PROFILE_ACTIVITIES";
348    field public static final String START_REVIEW_PERMISSION_DECISIONS = "android.permission.START_REVIEW_PERMISSION_DECISIONS";
349    field public static final String START_TASKS_FROM_RECENTS = "android.permission.START_TASKS_FROM_RECENTS";
350    field public static final String STATUS_BAR_SERVICE = "android.permission.STATUS_BAR_SERVICE";
351    field public static final String STOP_APP_SWITCHES = "android.permission.STOP_APP_SWITCHES";
352    field public static final String SUBSTITUTE_NOTIFICATION_APP_NAME = "android.permission.SUBSTITUTE_NOTIFICATION_APP_NAME";
353    field public static final String SUBSTITUTE_SHARE_TARGET_APP_NAME_AND_ICON = "android.permission.SUBSTITUTE_SHARE_TARGET_APP_NAME_AND_ICON";
354    field public static final String SUGGEST_EXTERNAL_TIME = "android.permission.SUGGEST_EXTERNAL_TIME";
355    field public static final String SUSPEND_APPS = "android.permission.SUSPEND_APPS";
356    field public static final String SYSTEM_APPLICATION_OVERLAY = "android.permission.SYSTEM_APPLICATION_OVERLAY";
357    field public static final String SYSTEM_CAMERA = "android.permission.SYSTEM_CAMERA";
358    field public static final String TETHER_PRIVILEGED = "android.permission.TETHER_PRIVILEGED";
359    field public static final String TIS_EXTENSION_INTERFACE = "android.permission.TIS_EXTENSION_INTERFACE";
360    field public static final String TOGGLE_AUTOMOTIVE_PROJECTION = "android.permission.TOGGLE_AUTOMOTIVE_PROJECTION";
361    field public static final String TRIGGER_LOST_MODE = "android.permission.TRIGGER_LOST_MODE";
362    field public static final String TV_INPUT_HARDWARE = "android.permission.TV_INPUT_HARDWARE";
363    field public static final String TV_VIRTUAL_REMOTE_CONTROLLER = "android.permission.TV_VIRTUAL_REMOTE_CONTROLLER";
364    field public static final String UNLIMITED_SHORTCUTS_API_CALLS = "android.permission.UNLIMITED_SHORTCUTS_API_CALLS";
365    field public static final String UPDATE_APP_OPS_STATS = "android.permission.UPDATE_APP_OPS_STATS";
366    field public static final String UPDATE_DEVICE_MANAGEMENT_RESOURCES = "android.permission.UPDATE_DEVICE_MANAGEMENT_RESOURCES";
367    field public static final String UPDATE_DOMAIN_VERIFICATION_USER_SELECTION = "android.permission.UPDATE_DOMAIN_VERIFICATION_USER_SELECTION";
368    field public static final String UPDATE_FONTS = "android.permission.UPDATE_FONTS";
369    field public static final String UPDATE_LOCK = "android.permission.UPDATE_LOCK";
370    field @Deprecated public static final String UPDATE_TIME_ZONE_RULES = "android.permission.UPDATE_TIME_ZONE_RULES";
371    field public static final String UPGRADE_RUNTIME_PERMISSIONS = "android.permission.UPGRADE_RUNTIME_PERMISSIONS";
372    field public static final String USER_ACTIVITY = "android.permission.USER_ACTIVITY";
373    field public static final String USE_COLORIZED_NOTIFICATIONS = "android.permission.USE_COLORIZED_NOTIFICATIONS";
374    field public static final String USE_RESERVED_DISK = "android.permission.USE_RESERVED_DISK";
375    field public static final String UWB_PRIVILEGED = "android.permission.UWB_PRIVILEGED";
376    field public static final String WHITELIST_AUTO_REVOKE_PERMISSIONS = "android.permission.WHITELIST_AUTO_REVOKE_PERMISSIONS";
377    field public static final String WHITELIST_RESTRICTED_PERMISSIONS = "android.permission.WHITELIST_RESTRICTED_PERMISSIONS";
378    field public static final String WIFI_ACCESS_COEX_UNSAFE_CHANNELS = "android.permission.WIFI_ACCESS_COEX_UNSAFE_CHANNELS";
379    field public static final String WIFI_SET_DEVICE_MOBILITY_STATE = "android.permission.WIFI_SET_DEVICE_MOBILITY_STATE";
380    field public static final String WIFI_UPDATE_COEX_UNSAFE_CHANNELS = "android.permission.WIFI_UPDATE_COEX_UNSAFE_CHANNELS";
381    field public static final String WIFI_UPDATE_USABILITY_STATS_SCORE = "android.permission.WIFI_UPDATE_USABILITY_STATS_SCORE";
382    field public static final String WRITE_ALLOWLISTED_DEVICE_CONFIG = "android.permission.WRITE_ALLOWLISTED_DEVICE_CONFIG";
383    field public static final String WRITE_DEVICE_CONFIG = "android.permission.WRITE_DEVICE_CONFIG";
384    field public static final String WRITE_DREAM_STATE = "android.permission.WRITE_DREAM_STATE";
385    field public static final String WRITE_EMBEDDED_SUBSCRIPTIONS = "android.permission.WRITE_EMBEDDED_SUBSCRIPTIONS";
386    field @Deprecated public static final String WRITE_MEDIA_STORAGE = "android.permission.WRITE_MEDIA_STORAGE";
387    field public static final String WRITE_OBB = "android.permission.WRITE_OBB";
388    field public static final String WRITE_SECURITY_LOG = "android.permission.WRITE_SECURITY_LOG";
389    field public static final String WRITE_SMS = "android.permission.WRITE_SMS";
390  }
391
392  public static final class Manifest.permission_group {
393    field public static final String UNDEFINED = "android.permission-group.UNDEFINED";
394  }
395
396  public static final class R.array {
397    field public static final int config_keySystemUuidMapping = 17235973; // 0x1070005
398    field public static final int config_optionalIpSecAlgorithms = 17235974; // 0x1070006
399  }
400
401  public static final class R.attr {
402    field public static final int allowClearUserDataOnFailedRestore = 16844288; // 0x1010600
403    field public static final int gameSessionService = 16844373; // 0x1010655
404    field public static final int hotwordDetectionService = 16844326; // 0x1010626
405    field public static final int isVrOnly = 16844152; // 0x1010578
406    field public static final int minExtensionVersion = 16844305; // 0x1010611
407    field public static final int playHomeTransitionSound = 16844358; // 0x1010646
408    field public static final int requiredSystemPropertyName = 16844133; // 0x1010565
409    field public static final int requiredSystemPropertyValue = 16844134; // 0x1010566
410    field public static final int sdkVersion = 16844304; // 0x1010610
411    field public static final int supportsAmbientMode = 16844173; // 0x101058d
412    field public static final int userRestriction = 16844164; // 0x1010584
413    field public static final int visualQueryDetectionService = 16844410; // 0x101067a
414  }
415
416  public static final class R.bool {
417    field public static final int config_enableDefaultNotes = 17891338; // 0x111000a
418    field public static final int config_enableDefaultNotesForWorkProfile = 17891339; // 0x111000b
419    field public static final int config_enableQrCodeScannerOnLockScreen = 17891336; // 0x1110008
420    field public static final int config_safetyProtectionEnabled = 17891337; // 0x1110009
421    field public static final int config_sendPackageName = 17891328; // 0x1110000
422    field public static final int config_showDefaultAssistant = 17891329; // 0x1110001
423    field public static final int config_showDefaultEmergency = 17891330; // 0x1110002
424    field public static final int config_showDefaultHome = 17891331; // 0x1110003
425  }
426
427  public static final class R.color {
428    field public static final int system_notification_accent_color = 17170460; // 0x106001c
429  }
430
431  public static final class R.dimen {
432    field public static final int config_restrictedIconSize = 17104903; // 0x1050007
433    field public static final int config_viewConfigurationHandwritingGestureLineMargin = 17104906; // 0x105000a
434  }
435
436  public static final class R.drawable {
437    field public static final int ic_info = 17301684; // 0x10800b4
438    field public static final int ic_safety_protection = 17301685; // 0x10800b5
439  }
440
441  public static final class R.raw {
442    field public static final int loaderror = 17825792; // 0x1100000
443    field public static final int nodomain = 17825793; // 0x1100001
444  }
445
446  public static final class R.string {
447    field public static final int config_customMediaKeyDispatcher = 17039404; // 0x104002c
448    field public static final int config_customMediaSessionPolicyProvider = 17039405; // 0x104002d
449    field public static final int config_defaultAssistant = 17039393; // 0x1040021
450    field public static final int config_defaultAutomotiveNavigation = 17039424; // 0x1040040
451    field public static final int config_defaultBrowser = 17039394; // 0x1040022
452    field public static final int config_defaultCallRedirection = 17039397; // 0x1040025
453    field public static final int config_defaultCallScreening = 17039398; // 0x1040026
454    field public static final int config_defaultDialer = 17039395; // 0x1040023
455    field public static final int config_defaultNotes = 17039429; // 0x1040045
456    field public static final int config_defaultSms = 17039396; // 0x1040024
457    field public static final int config_devicePolicyManagement = 17039421; // 0x104003d
458    field public static final int config_feedbackIntentExtraKey = 17039391; // 0x104001f
459    field public static final int config_feedbackIntentNameKey = 17039392; // 0x1040020
460    field public static final int config_helpIntentExtraKey = 17039389; // 0x104001d
461    field public static final int config_helpIntentNameKey = 17039390; // 0x104001e
462    field public static final int config_helpPackageNameKey = 17039387; // 0x104001b
463    field public static final int config_helpPackageNameValue = 17039388; // 0x104001c
464    field public static final int config_systemActivityRecognizer = 17039416; // 0x1040038
465    field public static final int config_systemAmbientAudioIntelligence = 17039411; // 0x1040033
466    field public static final int config_systemAppProtectionService = 17039422; // 0x104003e
467    field public static final int config_systemAudioIntelligence = 17039412; // 0x1040034
468    field public static final int config_systemAutomotiveCalendarSyncManager = 17039423; // 0x104003f
469    field public static final int config_systemAutomotiveCluster = 17039400; // 0x1040028
470    field public static final int config_systemAutomotiveProjection = 17039401; // 0x1040029
471    field public static final int config_systemCallStreaming = 17039431; // 0x1040047
472    field public static final int config_systemCompanionDeviceProvider = 17039417; // 0x1040039
473    field public static final int config_systemContacts = 17039403; // 0x104002b
474    field public static final int config_systemFinancedDeviceController = 17039430; // 0x1040046
475    field public static final int config_systemGallery = 17039399; // 0x1040027
476    field public static final int config_systemNotificationIntelligence = 17039413; // 0x1040035
477    field public static final int config_systemSettingsIntelligence = 17039426; // 0x1040042
478    field public static final int config_systemShell = 17039402; // 0x104002a
479    field public static final int config_systemSpeechRecognizer = 17039406; // 0x104002e
480    field public static final int config_systemSupervision = 17039420; // 0x104003c
481    field public static final int config_systemTelevisionNotificationHandler = 17039409; // 0x1040031
482    field public static final int config_systemTextIntelligence = 17039414; // 0x1040036
483    field public static final int config_systemUi = 17039418; // 0x104003a
484    field public static final int config_systemUiIntelligence = 17039410; // 0x1040032
485    field public static final int config_systemVisualIntelligence = 17039415; // 0x1040037
486    field public static final int config_systemWearHealthService = 17039428; // 0x1040044
487    field public static final int config_systemWellbeing = 17039408; // 0x1040030
488    field public static final int config_systemWifiCoexManager = 17039407; // 0x104002f
489    field public static final int safety_protection_display_text = 17039425; // 0x1040041
490  }
491
492  public static final class R.style {
493    field public static final int Theme_DeviceDefault_DocumentsUI = 16974562; // 0x10302e2
494    field public static final int Theme_Leanback_FormWizard = 16974544; // 0x10302d0
495  }
496
497}
498
499package android.accessibilityservice {
500
501  public class AccessibilityServiceInfo implements android.os.Parcelable {
502    method public void setAccessibilityTool(boolean);
503  }
504
505}
506
507package android.accounts {
508
509  public class AccountManager {
510    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);
511  }
512
513}
514
515package android.app {
516
517  @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 {
518    method public void convertFromTranslucent();
519    method public boolean convertToTranslucent(android.app.Activity.TranslucentConversionListener, android.app.ActivityOptions);
520    method @Deprecated public boolean isBackgroundVisibleBehind();
521    method @Deprecated public void onBackgroundVisibleBehindChanged(boolean);
522    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);
523    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);
524    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);
525  }
526
527  public static interface Activity.TranslucentConversionListener {
528    method public void onTranslucentConversionComplete(boolean);
529  }
530
531  public class ActivityManager {
532    method @RequiresPermission(android.Manifest.permission.PACKAGE_USAGE_STATS) public void addOnUidImportanceListener(android.app.ActivityManager.OnUidImportanceListener, int);
533    method @RequiresPermission(android.Manifest.permission.FORCE_STOP_PACKAGES) public void forceStopPackage(String);
534    method @RequiresPermission(anyOf={"android.permission.INTERACT_ACROSS_USERS", "android.permission.INTERACT_ACROSS_USERS_FULL"}) public static int getCurrentUser();
535    method @RequiresPermission(android.Manifest.permission.PACKAGE_USAGE_STATS) public int getPackageImportance(String);
536    method @NonNull public java.util.Collection<java.util.Locale> getSupportedLocales();
537    method @RequiresPermission(android.Manifest.permission.PACKAGE_USAGE_STATS) public int getUidImportance(int);
538    method @RequiresPermission(android.Manifest.permission.FORCE_STOP_PACKAGES) public void killProcessesWhenImperceptible(@NonNull int[], @NonNull String);
539    method @RequiresPermission(android.Manifest.permission.KILL_UID) public void killUid(int, String);
540    method @RequiresPermission(android.Manifest.permission.LOG_FOREGROUND_RESOURCE_USE) public void noteForegroundResourceUseBegin(int, int, int) throws java.lang.SecurityException;
541    method @RequiresPermission(android.Manifest.permission.LOG_FOREGROUND_RESOURCE_USE) public void noteForegroundResourceUseEnd(int, int, int) throws java.lang.SecurityException;
542    method @RequiresPermission(android.Manifest.permission.PACKAGE_USAGE_STATS) public void removeOnUidImportanceListener(android.app.ActivityManager.OnUidImportanceListener);
543    method public void setDeviceLocales(@NonNull android.os.LocaleList);
544    method @RequiresPermission(android.Manifest.permission.RESTRICTED_VR_ACCESS) public static void setPersistentVrThread(int);
545    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.INTERACT_ACROSS_USERS_FULL}) public boolean startProfile(@NonNull android.os.UserHandle);
546    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.INTERACT_ACROSS_USERS_FULL}) public boolean stopProfile(@NonNull android.os.UserHandle);
547    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS}) public boolean switchUser(@NonNull android.os.UserHandle);
548    field public static final int FOREGROUND_SERVICE_API_TYPE_AUDIO = 5; // 0x5
549    field public static final int FOREGROUND_SERVICE_API_TYPE_BLUETOOTH = 2; // 0x2
550    field public static final int FOREGROUND_SERVICE_API_TYPE_CAMERA = 1; // 0x1
551    field public static final int FOREGROUND_SERVICE_API_TYPE_CDM = 9; // 0x9
552    field public static final int FOREGROUND_SERVICE_API_TYPE_LOCATION = 3; // 0x3
553    field public static final int FOREGROUND_SERVICE_API_TYPE_MEDIA_PLAYBACK = 4; // 0x4
554    field public static final int FOREGROUND_SERVICE_API_TYPE_MICROPHONE = 6; // 0x6
555    field public static final int FOREGROUND_SERVICE_API_TYPE_PHONE_CALL = 7; // 0x7
556    field public static final int FOREGROUND_SERVICE_API_TYPE_USB = 8; // 0x8
557    field public static final int PROCESS_CAPABILITY_FOREGROUND_CAMERA = 2; // 0x2
558    field public static final int PROCESS_CAPABILITY_FOREGROUND_LOCATION = 1; // 0x1
559    field public static final int PROCESS_CAPABILITY_FOREGROUND_MICROPHONE = 4; // 0x4
560    field public static final int PROCESS_CAPABILITY_NONE = 0; // 0x0
561  }
562
563  public static interface ActivityManager.OnUidImportanceListener {
564    method public void onUidImportance(int, int);
565  }
566
567  public class ActivityOptions {
568    method public int getLaunchTaskId();
569    method @RequiresPermission(android.Manifest.permission.START_TASKS_FROM_RECENTS) public void setLaunchTaskId(int);
570  }
571
572  public class AlarmManager {
573    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void set(int, long, long, long, @NonNull android.app.PendingIntent, @Nullable android.os.WorkSource);
574    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);
575    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);
576    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);
577    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);
578    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);
579  }
580
581  public class AppOpsManager {
582    method @Nullable @RequiresPermission(android.Manifest.permission.GET_APP_OPS_STATS) public android.app.RuntimeAppOpAccessMessage collectRuntimeAppOpAccessMessage();
583    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>);
584    method public static String[] getOpStrs();
585    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...);
586    method @NonNull @RequiresPermission(android.Manifest.permission.GET_APP_OPS_STATS) public java.util.List<android.app.AppOpsManager.PackageOps> getPackagesForOps(@Nullable String[]);
587    method public static int opToDefaultMode(@NonNull String);
588    method @Nullable public static String opToPermission(@NonNull String);
589    method @RequiresPermission("android.permission.MANAGE_APP_OPS_MODES") public void setMode(@NonNull String, int, @Nullable String, int);
590    method @RequiresPermission("android.permission.MANAGE_APP_OPS_MODES") public void setUidMode(@NonNull String, int, int);
591    method @RequiresPermission(value="android.permission.WATCH_APPOPS", conditional=true) public void startWatchingNoted(@NonNull String[], @NonNull android.app.AppOpsManager.OnOpNotedListener);
592    method @RequiresPermission(value="android.permission.WATCH_APPOPS", conditional=true) public void startWatchingNoted(@NonNull String[], @NonNull java.util.concurrent.Executor, @NonNull android.app.AppOpsManager.OnOpNotedListener);
593    method public void stopWatchingNoted(@NonNull android.app.AppOpsManager.OnOpNotedListener);
594    field public static final int HISTORY_FLAGS_ALL = 3; // 0x3
595    field public static final int HISTORY_FLAG_AGGREGATE = 1; // 0x1
596    field public static final int HISTORY_FLAG_DISCRETE = 2; // 0x2
597    field public static final int HISTORY_FLAG_GET_ATTRIBUTION_CHAINS = 4; // 0x4
598    field public static final String OPSTR_ACCEPT_HANDOVER = "android:accept_handover";
599    field public static final String OPSTR_ACCESS_ACCESSIBILITY = "android:access_accessibility";
600    field public static final String OPSTR_ACCESS_NOTIFICATIONS = "android:access_notifications";
601    field public static final String OPSTR_ACTIVATE_PLATFORM_VPN = "android:activate_platform_vpn";
602    field public static final String OPSTR_ACTIVATE_VPN = "android:activate_vpn";
603    field public static final String OPSTR_ASSIST_SCREENSHOT = "android:assist_screenshot";
604    field public static final String OPSTR_ASSIST_STRUCTURE = "android:assist_structure";
605    field public static final String OPSTR_AUDIO_ACCESSIBILITY_VOLUME = "android:audio_accessibility_volume";
606    field public static final String OPSTR_AUDIO_ALARM_VOLUME = "android:audio_alarm_volume";
607    field public static final String OPSTR_AUDIO_BLUETOOTH_VOLUME = "android:audio_bluetooth_volume";
608    field public static final String OPSTR_AUDIO_MASTER_VOLUME = "android:audio_master_volume";
609    field public static final String OPSTR_AUDIO_MEDIA_VOLUME = "android:audio_media_volume";
610    field public static final String OPSTR_AUDIO_NOTIFICATION_VOLUME = "android:audio_notification_volume";
611    field public static final String OPSTR_AUDIO_RING_VOLUME = "android:audio_ring_volume";
612    field public static final String OPSTR_AUDIO_VOICE_VOLUME = "android:audio_voice_volume";
613    field public static final String OPSTR_AUTO_REVOKE_MANAGED_BY_INSTALLER = "android:auto_revoke_managed_by_installer";
614    field public static final String OPSTR_AUTO_REVOKE_PERMISSIONS_IF_UNUSED = "android:auto_revoke_permissions_if_unused";
615    field public static final String OPSTR_BIND_ACCESSIBILITY_SERVICE = "android:bind_accessibility_service";
616    field public static final String OPSTR_CAPTURE_CONSENTLESS_BUGREPORT_ON_USERDEBUG_BUILD = "android:capture_consentless_bugreport_on_userdebug_build";
617    field public static final String OPSTR_CHANGE_WIFI_STATE = "android:change_wifi_state";
618    field public static final String OPSTR_ESTABLISH_VPN_MANAGER = "android:establish_vpn_manager";
619    field public static final String OPSTR_ESTABLISH_VPN_SERVICE = "android:establish_vpn_service";
620    field public static final String OPSTR_GET_ACCOUNTS = "android:get_accounts";
621    field public static final String OPSTR_GPS = "android:gps";
622    field public static final String OPSTR_INSTANT_APP_START_FOREGROUND = "android:instant_app_start_foreground";
623    field public static final String OPSTR_INTERACT_ACROSS_PROFILES = "android:interact_across_profiles";
624    field public static final String OPSTR_LEGACY_STORAGE = "android:legacy_storage";
625    field public static final String OPSTR_LOADER_USAGE_STATS = "android:loader_usage_stats";
626    field public static final String OPSTR_MANAGE_EXTERNAL_STORAGE = "android:manage_external_storage";
627    field public static final String OPSTR_MANAGE_IPSEC_TUNNELS = "android:manage_ipsec_tunnels";
628    field public static final String OPSTR_MANAGE_ONGOING_CALLS = "android:manage_ongoing_calls";
629    field public static final String OPSTR_MUTE_MICROPHONE = "android:mute_microphone";
630    field public static final String OPSTR_NEIGHBORING_CELLS = "android:neighboring_cells";
631    field public static final String OPSTR_PHONE_CALL_CAMERA = "android:phone_call_camera";
632    field public static final String OPSTR_PHONE_CALL_MICROPHONE = "android:phone_call_microphone";
633    field public static final String OPSTR_PLAY_AUDIO = "android:play_audio";
634    field public static final String OPSTR_POST_NOTIFICATION = "android:post_notification";
635    field public static final String OPSTR_PROJECT_MEDIA = "android:project_media";
636    field public static final String OPSTR_READ_CLIPBOARD = "android:read_clipboard";
637    field public static final String OPSTR_READ_ICC_SMS = "android:read_icc_sms";
638    field public static final String OPSTR_READ_MEDIA_AUDIO = "android:read_media_audio";
639    field public static final String OPSTR_READ_MEDIA_IMAGES = "android:read_media_images";
640    field public static final String OPSTR_READ_MEDIA_VIDEO = "android:read_media_video";
641    field public static final String OPSTR_READ_MEDIA_VISUAL_USER_SELECTED = "android:read_media_visual_user_selected";
642    field public static final String OPSTR_READ_WRITE_HEALTH_DATA = "android:read_write_health_data";
643    field public static final String OPSTR_RECEIVE_AMBIENT_TRIGGER_AUDIO = "android:receive_ambient_trigger_audio";
644    field public static final String OPSTR_RECEIVE_EMERGENCY_BROADCAST = "android:receive_emergency_broadcast";
645    field public static final String OPSTR_RECEIVE_EXPLICIT_USER_INTERACTION_AUDIO = "android:receive_explicit_user_interaction_audio";
646    field public static final String OPSTR_REQUEST_DELETE_PACKAGES = "android:request_delete_packages";
647    field public static final String OPSTR_REQUEST_INSTALL_PACKAGES = "android:request_install_packages";
648    field public static final String OPSTR_RUN_ANY_IN_BACKGROUND = "android:run_any_in_background";
649    field public static final String OPSTR_RUN_IN_BACKGROUND = "android:run_in_background";
650    field public static final String OPSTR_START_FOREGROUND = "android:start_foreground";
651    field public static final String OPSTR_SYSTEM_EXEMPT_FROM_HIBERNATION = "android:system_exempt_from_hibernation";
652    field public static final String OPSTR_TAKE_AUDIO_FOCUS = "android:take_audio_focus";
653    field public static final String OPSTR_TAKE_MEDIA_BUTTONS = "android:take_media_buttons";
654    field public static final String OPSTR_TOAST_WINDOW = "android:toast_window";
655    field public static final String OPSTR_TURN_SCREEN_ON = "android:turn_screen_on";
656    field public static final String OPSTR_VIBRATE = "android:vibrate";
657    field public static final String OPSTR_WAKE_LOCK = "android:wake_lock";
658    field public static final String OPSTR_WIFI_SCAN = "android:wifi_scan";
659    field public static final String OPSTR_WRITE_CLIPBOARD = "android:write_clipboard";
660    field public static final String OPSTR_WRITE_ICC_SMS = "android:write_icc_sms";
661    field public static final String OPSTR_WRITE_MEDIA_AUDIO = "android:write_media_audio";
662    field public static final String OPSTR_WRITE_MEDIA_IMAGES = "android:write_media_images";
663    field public static final String OPSTR_WRITE_MEDIA_VIDEO = "android:write_media_video";
664    field public static final String OPSTR_WRITE_SMS = "android:write_sms";
665    field public static final String OPSTR_WRITE_WALLPAPER = "android:write_wallpaper";
666    field public static final int OP_FLAGS_ALL = 31; // 0x1f
667    field public static final int OP_FLAGS_ALL_TRUSTED = 13; // 0xd
668    field public static final int OP_FLAG_SELF = 1; // 0x1
669    field public static final int OP_FLAG_TRUSTED_PROXIED = 8; // 0x8
670    field public static final int OP_FLAG_TRUSTED_PROXY = 2; // 0x2
671    field public static final int OP_FLAG_UNTRUSTED_PROXIED = 16; // 0x10
672    field public static final int OP_FLAG_UNTRUSTED_PROXY = 4; // 0x4
673    field public static final int UID_STATE_BACKGROUND = 600; // 0x258
674    field public static final int UID_STATE_CACHED = 700; // 0x2bc
675    field public static final int UID_STATE_FOREGROUND = 500; // 0x1f4
676    field public static final int UID_STATE_FOREGROUND_SERVICE = 400; // 0x190
677    field @Deprecated public static final int UID_STATE_FOREGROUND_SERVICE_LOCATION = 300; // 0x12c
678    field public static final int UID_STATE_PERSISTENT = 100; // 0x64
679    field public static final int UID_STATE_TOP = 200; // 0xc8
680  }
681
682  public static final class AppOpsManager.AttributedHistoricalOps implements android.os.Parcelable {
683    method public int describeContents();
684    method @Nullable public android.app.AppOpsManager.HistoricalOp getOp(@NonNull String);
685    method @NonNull public android.app.AppOpsManager.HistoricalOp getOpAt(@IntRange(from=0) int);
686    method @IntRange(from=0) public int getOpCount();
687    method @Nullable public String getTag();
688    method public void writeToParcel(@NonNull android.os.Parcel, int);
689    field @NonNull public static final android.os.Parcelable.Creator<android.app.AppOpsManager.AttributedHistoricalOps> CREATOR;
690  }
691
692  public static final class AppOpsManager.AttributedOpEntry implements android.os.Parcelable {
693    method public int describeContents();
694    method public long getLastAccessBackgroundTime(int);
695    method public long getLastAccessForegroundTime(int);
696    method public long getLastAccessTime(int);
697    method public long getLastAccessTime(int, int, int);
698    method public long getLastBackgroundDuration(int);
699    method @Nullable public android.app.AppOpsManager.OpEventProxyInfo getLastBackgroundProxyInfo(int);
700    method public long getLastDuration(int);
701    method public long getLastDuration(int, int, int);
702    method public long getLastForegroundDuration(int);
703    method @Nullable public android.app.AppOpsManager.OpEventProxyInfo getLastForegroundProxyInfo(int);
704    method @Nullable public android.app.AppOpsManager.OpEventProxyInfo getLastProxyInfo(int);
705    method @Nullable public android.app.AppOpsManager.OpEventProxyInfo getLastProxyInfo(int, int, int);
706    method public long getLastRejectBackgroundTime(int);
707    method public long getLastRejectForegroundTime(int);
708    method public long getLastRejectTime(int);
709    method public long getLastRejectTime(int, int, int);
710    method public boolean isRunning();
711    method public void writeToParcel(@NonNull android.os.Parcel, int);
712    field @NonNull public static final android.os.Parcelable.Creator<android.app.AppOpsManager.AttributedOpEntry> CREATOR;
713  }
714
715  public static final class AppOpsManager.HistoricalOp implements android.os.Parcelable {
716    method public int describeContents();
717    method public long getAccessCount(int, int, int);
718    method public long getAccessDuration(int, int, int);
719    method public long getBackgroundAccessCount(int);
720    method public long getBackgroundAccessDuration(int);
721    method @NonNull public java.util.List<android.app.AppOpsManager.AttributedOpEntry> getBackgroundDiscreteAccesses(int);
722    method public long getBackgroundRejectCount(int);
723    method @NonNull public android.app.AppOpsManager.AttributedOpEntry getDiscreteAccessAt(@IntRange(from=0) int);
724    method @IntRange(from=0) public int getDiscreteAccessCount();
725    method @NonNull public java.util.List<android.app.AppOpsManager.AttributedOpEntry> getDiscreteAccesses(int, int, int);
726    method public long getForegroundAccessCount(int);
727    method public long getForegroundAccessDuration(int);
728    method @NonNull public java.util.List<android.app.AppOpsManager.AttributedOpEntry> getForegroundDiscreteAccesses(int);
729    method public long getForegroundRejectCount(int);
730    method @NonNull public String getOpName();
731    method public long getRejectCount(int, int, int);
732    method public void writeToParcel(android.os.Parcel, int);
733    field @NonNull public static final android.os.Parcelable.Creator<android.app.AppOpsManager.HistoricalOp> CREATOR;
734  }
735
736  public static final class AppOpsManager.HistoricalOps implements android.os.Parcelable {
737    method public int describeContents();
738    method public long getBeginTimeMillis();
739    method public long getEndTimeMillis();
740    method @IntRange(from=0) public int getUidCount();
741    method @Nullable public android.app.AppOpsManager.HistoricalUidOps getUidOps(int);
742    method @NonNull public android.app.AppOpsManager.HistoricalUidOps getUidOpsAt(@IntRange(from=0) int);
743    method public void writeToParcel(android.os.Parcel, int);
744    field @NonNull public static final android.os.Parcelable.Creator<android.app.AppOpsManager.HistoricalOps> CREATOR;
745  }
746
747  public static final class AppOpsManager.HistoricalOpsRequest {
748  }
749
750  public static final class AppOpsManager.HistoricalOpsRequest.Builder {
751    ctor public AppOpsManager.HistoricalOpsRequest.Builder(long, long);
752    method @NonNull public android.app.AppOpsManager.HistoricalOpsRequest build();
753    method @NonNull public android.app.AppOpsManager.HistoricalOpsRequest.Builder setAttributionTag(@Nullable String);
754    method @NonNull public android.app.AppOpsManager.HistoricalOpsRequest.Builder setFlags(int);
755    method @NonNull public android.app.AppOpsManager.HistoricalOpsRequest.Builder setHistoryFlags(int);
756    method @NonNull public android.app.AppOpsManager.HistoricalOpsRequest.Builder setOpNames(@Nullable java.util.List<java.lang.String>);
757    method @NonNull public android.app.AppOpsManager.HistoricalOpsRequest.Builder setPackageName(@Nullable String);
758    method @NonNull public android.app.AppOpsManager.HistoricalOpsRequest.Builder setUid(int);
759  }
760
761  public static final class AppOpsManager.HistoricalPackageOps implements android.os.Parcelable {
762    method public int describeContents();
763    method @Nullable public android.app.AppOpsManager.AttributedHistoricalOps getAttributedOps(@Nullable String);
764    method @NonNull public android.app.AppOpsManager.AttributedHistoricalOps getAttributedOpsAt(@IntRange(from=0) int);
765    method @IntRange(from=0) public int getAttributedOpsCount();
766    method @Nullable public android.app.AppOpsManager.HistoricalOp getOp(@NonNull String);
767    method @NonNull public android.app.AppOpsManager.HistoricalOp getOpAt(@IntRange(from=0) int);
768    method @IntRange(from=0) public int getOpCount();
769    method @NonNull public String getPackageName();
770    method public void writeToParcel(@NonNull android.os.Parcel, int);
771    field @NonNull public static final android.os.Parcelable.Creator<android.app.AppOpsManager.HistoricalPackageOps> CREATOR;
772  }
773
774  public static final class AppOpsManager.HistoricalUidOps implements android.os.Parcelable {
775    method public int describeContents();
776    method @IntRange(from=0) public int getPackageCount();
777    method @Nullable public android.app.AppOpsManager.HistoricalPackageOps getPackageOps(@NonNull String);
778    method @NonNull public android.app.AppOpsManager.HistoricalPackageOps getPackageOpsAt(@IntRange(from=0) int);
779    method public int getUid();
780    method public void writeToParcel(android.os.Parcel, int);
781    field @NonNull public static final android.os.Parcelable.Creator<android.app.AppOpsManager.HistoricalUidOps> CREATOR;
782  }
783
784  public static interface AppOpsManager.OnOpNotedListener {
785    method public void onOpNoted(@NonNull String, int, @NonNull String, @Nullable String, int, int);
786  }
787
788  public static final class AppOpsManager.OpEntry implements android.os.Parcelable {
789    method public int describeContents();
790    method @NonNull public java.util.Map<java.lang.String,android.app.AppOpsManager.AttributedOpEntry> getAttributedOpEntries();
791    method @Deprecated public long getDuration();
792    method public long getLastAccessBackgroundTime(int);
793    method public long getLastAccessForegroundTime(int);
794    method public long getLastAccessTime(int);
795    method public long getLastAccessTime(int, int, int);
796    method public long getLastBackgroundDuration(int);
797    method @Nullable public android.app.AppOpsManager.OpEventProxyInfo getLastBackgroundProxyInfo(int);
798    method public long getLastDuration(int);
799    method public long getLastDuration(int, int, int);
800    method public long getLastForegroundDuration(int);
801    method @Nullable public android.app.AppOpsManager.OpEventProxyInfo getLastForegroundProxyInfo(int);
802    method @Nullable public android.app.AppOpsManager.OpEventProxyInfo getLastProxyInfo(int);
803    method @Nullable public android.app.AppOpsManager.OpEventProxyInfo getLastProxyInfo(int, int, int);
804    method public long getLastRejectBackgroundTime(int);
805    method public long getLastRejectForegroundTime(int);
806    method public long getLastRejectTime(int);
807    method public long getLastRejectTime(int, int, int);
808    method public int getMode();
809    method @NonNull public String getOpStr();
810    method @Deprecated @Nullable public String getProxyPackageName();
811    method @Deprecated @Nullable public String getProxyPackageName(int, int);
812    method @Deprecated public int getProxyUid();
813    method @Deprecated public int getProxyUid(int, int);
814    method public boolean isRunning();
815    method public void writeToParcel(android.os.Parcel, int);
816    field @NonNull public static final android.os.Parcelable.Creator<android.app.AppOpsManager.OpEntry> CREATOR;
817  }
818
819  public static final class AppOpsManager.OpEventProxyInfo implements android.os.Parcelable {
820    method public int describeContents();
821    method @Nullable public String getAttributionTag();
822    method @Nullable public String getPackageName();
823    method @IntRange(from=0) public int getUid();
824    method public void writeToParcel(@NonNull android.os.Parcel, int);
825    field @NonNull public static final android.os.Parcelable.Creator<android.app.AppOpsManager.OpEventProxyInfo> CREATOR;
826  }
827
828  public static final class AppOpsManager.PackageOps implements android.os.Parcelable {
829    method public int describeContents();
830    method @NonNull public java.util.List<android.app.AppOpsManager.OpEntry> getOps();
831    method @NonNull public String getPackageName();
832    method public int getUid();
833    method public void writeToParcel(@NonNull android.os.Parcel, int);
834    field @NonNull public static final android.os.Parcelable.Creator<android.app.AppOpsManager.PackageOps> CREATOR;
835  }
836
837  public class BroadcastOptions {
838    method public void clearRequireCompatChange();
839    method public int getPendingIntentBackgroundActivityStartMode();
840    method @Deprecated public boolean isPendingIntentBackgroundActivityLaunchAllowed();
841    method @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RESPONSE_STATS) public void recordResponseEventWhileInBackground(@IntRange(from=0) long);
842    method @RequiresPermission(android.Manifest.permission.START_ACTIVITIES_FROM_BACKGROUND) public void setBackgroundActivityStartsAllowed(boolean);
843    method public void setDontSendToRestrictedApps(boolean);
844    method @Deprecated public void setPendingIntentBackgroundActivityLaunchAllowed(boolean);
845    method @NonNull public android.app.BroadcastOptions setPendingIntentBackgroundActivityStartMode(int);
846    method public void setRequireAllOfPermissions(@Nullable String[]);
847    method public void setRequireCompatChange(long, boolean);
848    method public void setRequireNoneOfPermissions(@Nullable String[]);
849    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);
850    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);
851  }
852
853  public class DownloadManager {
854    method @RequiresPermission(android.Manifest.permission.WRITE_MEDIA_STORAGE) public void onMediaStoreDownloadsDeleted(@NonNull android.util.LongSparseArray<java.lang.String>);
855    field public static final String ACTION_DOWNLOAD_COMPLETED = "android.intent.action.DOWNLOAD_COMPLETED";
856  }
857
858  public final class GameManager {
859    method @Nullable @RequiresPermission(android.Manifest.permission.MANAGE_GAME_MODE) public android.app.GameModeInfo getGameModeInfo(@NonNull String);
860    method @RequiresPermission(android.Manifest.permission.MANAGE_GAME_MODE) public void setGameMode(@NonNull String, int);
861    method @RequiresPermission(android.Manifest.permission.MANAGE_GAME_MODE) public void updateCustomGameModeConfiguration(@NonNull String, @NonNull android.app.GameModeConfiguration);
862  }
863
864  public final class GameModeConfiguration implements android.os.Parcelable {
865    method public int describeContents();
866    method public int getFpsOverride();
867    method public float getScalingFactor();
868    method public void writeToParcel(@NonNull android.os.Parcel, int);
869    field @NonNull public static final android.os.Parcelable.Creator<android.app.GameModeConfiguration> CREATOR;
870    field public static final int FPS_OVERRIDE_NONE = 0; // 0x0
871  }
872
873  public static final class GameModeConfiguration.Builder {
874    ctor public GameModeConfiguration.Builder();
875    ctor public GameModeConfiguration.Builder(@NonNull android.app.GameModeConfiguration);
876    method @NonNull public android.app.GameModeConfiguration build();
877    method @NonNull public android.app.GameModeConfiguration.Builder setFpsOverride(int);
878    method @NonNull public android.app.GameModeConfiguration.Builder setScalingFactor(float);
879  }
880
881  public final class GameModeInfo implements android.os.Parcelable {
882    ctor @Deprecated public GameModeInfo(int, @NonNull int[]);
883    method public int describeContents();
884    method public int getActiveGameMode();
885    method @NonNull public int[] getAvailableGameModes();
886    method @Nullable public android.app.GameModeConfiguration getGameModeConfiguration(int);
887    method @NonNull public int[] getOverriddenGameModes();
888    method public boolean isDownscalingAllowed();
889    method public boolean isFpsOverrideAllowed();
890    method public void writeToParcel(@NonNull android.os.Parcel, int);
891    field @NonNull public static final android.os.Parcelable.Creator<android.app.GameModeInfo> CREATOR;
892  }
893
894  public static final class GameModeInfo.Builder {
895    ctor public GameModeInfo.Builder();
896    method @NonNull public android.app.GameModeInfo build();
897    method @NonNull public android.app.GameModeInfo.Builder setActiveGameMode(@NonNull int);
898    method @NonNull public android.app.GameModeInfo.Builder setAvailableGameModes(@NonNull int[]);
899    method @NonNull public android.app.GameModeInfo.Builder setDownscalingAllowed(boolean);
900    method @NonNull public android.app.GameModeInfo.Builder setFpsOverrideAllowed(boolean);
901    method @NonNull public android.app.GameModeInfo.Builder setGameModeConfiguration(int, @NonNull android.app.GameModeConfiguration);
902    method @NonNull public android.app.GameModeInfo.Builder setOverriddenGameModes(@NonNull int[]);
903  }
904
905  public abstract class InstantAppResolverService extends android.app.Service {
906    ctor public InstantAppResolverService();
907    method public final void attachBaseContext(android.content.Context);
908    method public final android.os.IBinder onBind(android.content.Intent);
909    method @Deprecated public void onGetInstantAppIntentFilter(@Nullable int[], @NonNull String, @NonNull android.app.InstantAppResolverService.InstantAppResolutionCallback);
910    method @Deprecated public void onGetInstantAppIntentFilter(@NonNull android.content.Intent, @Nullable int[], @NonNull String, @NonNull android.app.InstantAppResolverService.InstantAppResolutionCallback);
911    method @Deprecated public void onGetInstantAppIntentFilter(@NonNull android.content.Intent, @Nullable int[], @NonNull android.os.UserHandle, @NonNull String, @NonNull android.app.InstantAppResolverService.InstantAppResolutionCallback);
912    method @MainThread public void onGetInstantAppIntentFilter(@NonNull android.content.pm.InstantAppRequestInfo, @NonNull android.app.InstantAppResolverService.InstantAppResolutionCallback);
913    method @Deprecated public void onGetInstantAppResolveInfo(@Nullable int[], @NonNull String, @NonNull android.app.InstantAppResolverService.InstantAppResolutionCallback);
914    method @Deprecated public void onGetInstantAppResolveInfo(@NonNull android.content.Intent, @Nullable int[], @NonNull String, @NonNull android.app.InstantAppResolverService.InstantAppResolutionCallback);
915    method @Deprecated public void onGetInstantAppResolveInfo(@NonNull android.content.Intent, @Nullable int[], @NonNull android.os.UserHandle, @NonNull String, @NonNull android.app.InstantAppResolverService.InstantAppResolutionCallback);
916    method @MainThread public void onGetInstantAppResolveInfo(@NonNull android.content.pm.InstantAppRequestInfo, @NonNull android.app.InstantAppResolverService.InstantAppResolutionCallback);
917  }
918
919  public static final class InstantAppResolverService.InstantAppResolutionCallback {
920    method public void onInstantAppResolveInfo(java.util.List<android.content.pm.InstantAppResolveInfo>);
921  }
922
923  public class KeyguardManager {
924    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);
925    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);
926    method public android.content.Intent createConfirmFactoryResetCredentialIntent(CharSequence, CharSequence, CharSequence);
927    method @RequiresPermission("android.permission.SET_INITIAL_LOCK") public int getMinLockLength(boolean, int);
928    method @RequiresPermission(android.Manifest.permission.CONTROL_KEYGUARD_SECURE_NOTIFICATIONS) public boolean getPrivateNotificationsAllowed();
929    method @RequiresPermission("android.permission.SET_INITIAL_LOCK") public boolean isValidLockPasswordComplexity(int, @NonNull byte[], int);
930    method @RequiresPermission(android.Manifest.permission.MANAGE_WEAK_ESCROW_TOKEN) public boolean isWeakEscrowTokenActive(long, @NonNull android.os.UserHandle);
931    method @RequiresPermission(android.Manifest.permission.MANAGE_WEAK_ESCROW_TOKEN) public boolean isWeakEscrowTokenValid(long, @NonNull byte[], @NonNull android.os.UserHandle);
932    method @RequiresPermission(android.Manifest.permission.MANAGE_WEAK_ESCROW_TOKEN) public boolean registerWeakEscrowTokenRemovedListener(@NonNull java.util.concurrent.Executor, @NonNull android.app.KeyguardManager.WeakEscrowTokenRemovedListener);
933    method @RequiresPermission(android.Manifest.permission.MANAGE_WEAK_ESCROW_TOKEN) public boolean removeWeakEscrowToken(long, @NonNull android.os.UserHandle);
934    method @RequiresPermission(android.Manifest.permission.SHOW_KEYGUARD_MESSAGE) public void requestDismissKeyguard(@NonNull android.app.Activity, @Nullable CharSequence, @Nullable android.app.KeyguardManager.KeyguardDismissCallback);
935    method @RequiresPermission("android.permission.SET_INITIAL_LOCK") public boolean setLock(int, @NonNull byte[], int);
936    method @RequiresPermission(android.Manifest.permission.CONTROL_KEYGUARD_SECURE_NOTIFICATIONS) public void setPrivateNotificationsAllowed(boolean);
937    method @NonNull @RequiresPermission(android.Manifest.permission.CHECK_REMOTE_LOCKSCREEN) public android.app.RemoteLockscreenValidationSession startRemoteLockscreenValidation();
938    method @RequiresPermission(android.Manifest.permission.MANAGE_WEAK_ESCROW_TOKEN) public boolean unregisterWeakEscrowTokenRemovedListener(@NonNull android.app.KeyguardManager.WeakEscrowTokenRemovedListener);
939    method @NonNull @RequiresPermission(android.Manifest.permission.CHECK_REMOTE_LOCKSCREEN) public android.app.RemoteLockscreenValidationResult validateRemoteLockscreen(@NonNull byte[]);
940    field public static final int PASSWORD = 0; // 0x0
941    field public static final int PATTERN = 2; // 0x2
942    field public static final int PIN = 1; // 0x1
943  }
944
945  public static interface KeyguardManager.WeakEscrowTokenActivatedListener {
946    method public void onWeakEscrowTokenActivated(long, @NonNull android.os.UserHandle);
947  }
948
949  public static interface KeyguardManager.WeakEscrowTokenRemovedListener {
950    method public void onWeakEscrowTokenRemoved(long, @NonNull android.os.UserHandle);
951  }
952
953  public class LocaleManager {
954    method @RequiresPermission(android.Manifest.permission.CHANGE_CONFIGURATION) public void setApplicationLocales(@NonNull String, @NonNull android.os.LocaleList);
955  }
956
957  public class Notification implements android.os.Parcelable {
958    field public static final String CATEGORY_CAR_EMERGENCY = "car_emergency";
959    field public static final String CATEGORY_CAR_INFORMATION = "car_information";
960    field public static final String CATEGORY_CAR_WARNING = "car_warning";
961    field @RequiresPermission(android.Manifest.permission.NOTIFICATION_DURING_SETUP) public static final String EXTRA_ALLOW_DURING_SETUP = "android.allowDuringSetup";
962    field @RequiresPermission(android.Manifest.permission.SUBSTITUTE_NOTIFICATION_APP_NAME) public static final String EXTRA_SUBSTITUTE_APP_NAME = "android.substName";
963    field public static final int FLAG_AUTOGROUP_SUMMARY = 1024; // 0x400
964  }
965
966  public static class Notification.Action implements android.os.Parcelable {
967    field public static final int SEMANTIC_ACTION_CONVERSATION_IS_PHISHING = 12; // 0xc
968    field public static final int SEMANTIC_ACTION_MARK_CONVERSATION_AS_PRIORITY = 11; // 0xb
969  }
970
971  public static final class Notification.TvExtender implements android.app.Notification.Extender {
972    ctor public Notification.TvExtender();
973    ctor public Notification.TvExtender(android.app.Notification);
974    method public android.app.Notification.Builder extend(android.app.Notification.Builder);
975    method public String getChannelId();
976    method public android.app.PendingIntent getContentIntent();
977    method public android.app.PendingIntent getDeleteIntent();
978    method public boolean getSuppressShowOverApps();
979    method public boolean isAvailableOnTv();
980    method public android.app.Notification.TvExtender setChannel(String);
981    method public android.app.Notification.TvExtender setChannelId(String);
982    method public android.app.Notification.TvExtender setContentIntent(android.app.PendingIntent);
983    method public android.app.Notification.TvExtender setDeleteIntent(android.app.PendingIntent);
984    method public android.app.Notification.TvExtender setSuppressShowOverApps(boolean);
985  }
986
987  public final class NotificationChannel implements android.os.Parcelable {
988    method public int getUserLockedFields();
989    method public boolean isDeleted();
990    method public void populateFromXml(org.xmlpull.v1.XmlPullParser);
991    method public org.json.JSONObject toJson() throws org.json.JSONException;
992    method public void writeXml(org.xmlpull.v1.XmlSerializer) throws java.io.IOException;
993    field public static final int USER_LOCKED_SOUND = 32; // 0x20
994  }
995
996  public final class NotificationChannelGroup implements android.os.Parcelable {
997    method public org.json.JSONObject toJson() throws org.json.JSONException;
998  }
999
1000  public class NotificationManager {
1001    method @NonNull public java.util.List<java.lang.String> getAllowedAssistantAdjustments();
1002    method @Nullable public android.content.ComponentName getAllowedNotificationAssistant();
1003    method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_NOTIFICATION_LISTENERS) public java.util.List<android.content.ComponentName> getEnabledNotificationListeners();
1004    method public boolean isNotificationAssistantAccessGranted(@NonNull android.content.ComponentName);
1005    method public void setNotificationAssistantAccessGranted(@Nullable android.content.ComponentName, boolean);
1006    method @RequiresPermission(android.Manifest.permission.MANAGE_NOTIFICATION_LISTENERS) public void setNotificationListenerAccessGranted(@NonNull android.content.ComponentName, boolean, boolean);
1007    field @RequiresPermission(android.Manifest.permission.STATUS_BAR_SERVICE) public static final String ACTION_CLOSE_NOTIFICATION_HANDLER_PANEL = "android.app.action.CLOSE_NOTIFICATION_HANDLER_PANEL";
1008    field @RequiresPermission(android.Manifest.permission.STATUS_BAR_SERVICE) public static final String ACTION_OPEN_NOTIFICATION_HANDLER_PANEL = "android.app.action.OPEN_NOTIFICATION_HANDLER_PANEL";
1009    field @RequiresPermission(android.Manifest.permission.STATUS_BAR_SERVICE) public static final String ACTION_TOGGLE_NOTIFICATION_HANDLER_PANEL = "android.app.action.TOGGLE_NOTIFICATION_HANDLER_PANEL";
1010  }
1011
1012  public final class RemoteLockscreenValidationResult implements android.os.Parcelable {
1013    method public int describeContents();
1014    method public int getResultCode();
1015    method public long getTimeoutMillis();
1016    method public void writeToParcel(@NonNull android.os.Parcel, int);
1017    field @NonNull public static final android.os.Parcelable.Creator<android.app.RemoteLockscreenValidationResult> CREATOR;
1018    field public static final int RESULT_GUESS_INVALID = 2; // 0x2
1019    field public static final int RESULT_GUESS_VALID = 1; // 0x1
1020    field public static final int RESULT_LOCKOUT = 3; // 0x3
1021    field public static final int RESULT_NO_REMAINING_ATTEMPTS = 4; // 0x4
1022    field public static final int RESULT_SESSION_EXPIRED = 5; // 0x5
1023  }
1024
1025  public static final class RemoteLockscreenValidationResult.Builder {
1026    ctor public RemoteLockscreenValidationResult.Builder();
1027    method @NonNull public android.app.RemoteLockscreenValidationResult build();
1028    method @NonNull public android.app.RemoteLockscreenValidationResult.Builder setResultCode(int);
1029    method @NonNull public android.app.RemoteLockscreenValidationResult.Builder setTimeoutMillis(long);
1030  }
1031
1032  public final class RemoteLockscreenValidationSession implements android.os.Parcelable {
1033    method public int describeContents();
1034    method public int getLockType();
1035    method public int getRemainingAttempts();
1036    method @NonNull public byte[] getSourcePublicKey();
1037    method public void writeToParcel(@NonNull android.os.Parcel, int);
1038    field @NonNull public static final android.os.Parcelable.Creator<android.app.RemoteLockscreenValidationSession> CREATOR;
1039  }
1040
1041  public static final class RemoteLockscreenValidationSession.Builder {
1042    ctor public RemoteLockscreenValidationSession.Builder();
1043    method @NonNull public android.app.RemoteLockscreenValidationSession build();
1044    method @NonNull public android.app.RemoteLockscreenValidationSession.Builder setLockType(int);
1045    method @NonNull public android.app.RemoteLockscreenValidationSession.Builder setRemainingAttempts(int);
1046    method @NonNull public android.app.RemoteLockscreenValidationSession.Builder setSourcePublicKey(@NonNull byte[]);
1047  }
1048
1049  public final class RuntimeAppOpAccessMessage implements android.os.Parcelable {
1050    ctor public RuntimeAppOpAccessMessage(@IntRange(from=0L) int, @IntRange(from=0L) int, @NonNull String, @Nullable String, @NonNull String, int);
1051    method public int describeContents();
1052    method @Nullable public String getAttributionTag();
1053    method @NonNull public String getMessage();
1054    method @NonNull public String getOp();
1055    method @NonNull public String getPackageName();
1056    method public int getSamplingStrategy();
1057    method @IntRange(from=0L) public int getUid();
1058    method public void writeToParcel(@NonNull android.os.Parcel, int);
1059    field @NonNull public static final android.os.Parcelable.Creator<android.app.RuntimeAppOpAccessMessage> CREATOR;
1060  }
1061
1062  public class SearchManager implements android.content.DialogInterface.OnCancelListener android.content.DialogInterface.OnDismissListener {
1063    method public void launchAssist(@Nullable android.os.Bundle);
1064  }
1065
1066  public class StatusBarManager {
1067    method @NonNull @RequiresPermission(android.Manifest.permission.STATUS_BAR) public android.app.StatusBarManager.DisableInfo getDisableInfo();
1068    method @RequiresPermission(android.Manifest.permission.STATUS_BAR) public int getNavBarMode();
1069    method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void registerNearbyMediaDevicesProvider(@NonNull android.media.NearbyMediaDevicesProvider);
1070    method @RequiresPermission(android.Manifest.permission.STATUS_BAR) public void setDisabledForSetup(boolean);
1071    method @RequiresPermission(android.Manifest.permission.STATUS_BAR) public void setNavBarMode(int);
1072    method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void unregisterNearbyMediaDevicesProvider(@NonNull android.media.NearbyMediaDevicesProvider);
1073    method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void updateMediaTapToTransferReceiverDisplay(int, @NonNull android.media.MediaRoute2Info, @Nullable android.graphics.drawable.Icon, @Nullable CharSequence);
1074    method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void updateMediaTapToTransferSenderDisplay(int, @NonNull android.media.MediaRoute2Info, @Nullable java.util.concurrent.Executor, @Nullable Runnable);
1075    field public static final int MEDIA_TRANSFER_RECEIVER_STATE_CLOSE_TO_SENDER = 0; // 0x0
1076    field public static final int MEDIA_TRANSFER_RECEIVER_STATE_FAR_FROM_SENDER = 1; // 0x1
1077    field public static final int MEDIA_TRANSFER_RECEIVER_STATE_TRANSFER_TO_RECEIVER_FAILED = 3; // 0x3
1078    field public static final int MEDIA_TRANSFER_RECEIVER_STATE_TRANSFER_TO_RECEIVER_SUCCEEDED = 2; // 0x2
1079    field public static final int MEDIA_TRANSFER_SENDER_STATE_ALMOST_CLOSE_TO_END_CAST = 1; // 0x1
1080    field public static final int MEDIA_TRANSFER_SENDER_STATE_ALMOST_CLOSE_TO_START_CAST = 0; // 0x0
1081    field public static final int MEDIA_TRANSFER_SENDER_STATE_FAR_FROM_RECEIVER = 8; // 0x8
1082    field public static final int MEDIA_TRANSFER_SENDER_STATE_TRANSFER_TO_RECEIVER_FAILED = 6; // 0x6
1083    field public static final int MEDIA_TRANSFER_SENDER_STATE_TRANSFER_TO_RECEIVER_SUCCEEDED = 4; // 0x4
1084    field public static final int MEDIA_TRANSFER_SENDER_STATE_TRANSFER_TO_RECEIVER_TRIGGERED = 2; // 0x2
1085    field public static final int MEDIA_TRANSFER_SENDER_STATE_TRANSFER_TO_THIS_DEVICE_FAILED = 7; // 0x7
1086    field public static final int MEDIA_TRANSFER_SENDER_STATE_TRANSFER_TO_THIS_DEVICE_SUCCEEDED = 5; // 0x5
1087    field public static final int MEDIA_TRANSFER_SENDER_STATE_TRANSFER_TO_THIS_DEVICE_TRIGGERED = 3; // 0x3
1088    field public static final int NAV_BAR_MODE_DEFAULT = 0; // 0x0
1089    field public static final int NAV_BAR_MODE_KIDS = 1; // 0x1
1090  }
1091
1092  public static final class StatusBarManager.DisableInfo {
1093    method public boolean areAllComponentsEnabled();
1094    method public boolean isNavigateToHomeDisabled();
1095    method public boolean isNotificationPeekingDisabled();
1096    method public boolean isRecentsDisabled();
1097    method public boolean isSearchDisabled();
1098    method public boolean isStatusBarExpansionDisabled();
1099  }
1100
1101  public final class SystemServiceRegistry {
1102    method public static <TServiceClass> void registerContextAwareService(@NonNull String, @NonNull Class<TServiceClass>, @NonNull android.app.SystemServiceRegistry.ContextAwareServiceProducerWithBinder<TServiceClass>);
1103    method public static <TServiceClass> void registerContextAwareService(@NonNull String, @NonNull Class<TServiceClass>, @NonNull android.app.SystemServiceRegistry.ContextAwareServiceProducerWithoutBinder<TServiceClass>);
1104    method public static <TServiceClass> void registerStaticService(@NonNull String, @NonNull Class<TServiceClass>, @NonNull android.app.SystemServiceRegistry.StaticServiceProducerWithBinder<TServiceClass>);
1105    method public static <TServiceClass> void registerStaticService(@NonNull String, @NonNull Class<TServiceClass>, @NonNull android.app.SystemServiceRegistry.StaticServiceProducerWithoutBinder<TServiceClass>);
1106  }
1107
1108  public static interface SystemServiceRegistry.ContextAwareServiceProducerWithBinder<TServiceClass> {
1109    method @NonNull public TServiceClass createService(@NonNull android.content.Context, @NonNull android.os.IBinder);
1110  }
1111
1112  public static interface SystemServiceRegistry.ContextAwareServiceProducerWithoutBinder<TServiceClass> {
1113    method @NonNull public TServiceClass createService(@NonNull android.content.Context);
1114  }
1115
1116  public static interface SystemServiceRegistry.StaticServiceProducerWithBinder<TServiceClass> {
1117    method @NonNull public TServiceClass createService(@NonNull android.os.IBinder);
1118  }
1119
1120  public static interface SystemServiceRegistry.StaticServiceProducerWithoutBinder<TServiceClass> {
1121    method @NonNull public TServiceClass createService();
1122  }
1123
1124  public class UiModeManager {
1125    method @RequiresPermission(android.Manifest.permission.READ_PROJECTION_STATE) public void addOnProjectionStateChangedListener(int, @NonNull java.util.concurrent.Executor, @NonNull android.app.UiModeManager.OnProjectionStateChangedListener);
1126    method @RequiresPermission(android.Manifest.permission.ENTER_CAR_MODE_PRIORITIZED) public void enableCarMode(@IntRange(from=0) int, int);
1127    method @RequiresPermission(android.Manifest.permission.READ_PROJECTION_STATE) public int getActiveProjectionTypes();
1128    method @RequiresPermission(android.Manifest.permission.MODIFY_DAY_NIGHT_MODE) public int getNightModeCustomType();
1129    method @NonNull @RequiresPermission(android.Manifest.permission.READ_PROJECTION_STATE) public java.util.Set<java.lang.String> getProjectingPackages(int);
1130    method @RequiresPermission(value=android.Manifest.permission.TOGGLE_AUTOMOTIVE_PROJECTION, conditional=true) public boolean releaseProjection(int);
1131    method @RequiresPermission(android.Manifest.permission.READ_PROJECTION_STATE) public void removeOnProjectionStateChangedListener(@NonNull android.app.UiModeManager.OnProjectionStateChangedListener);
1132    method @RequiresPermission(value=android.Manifest.permission.TOGGLE_AUTOMOTIVE_PROJECTION, conditional=true) public boolean requestProjection(int);
1133    method @RequiresPermission(android.Manifest.permission.MODIFY_DAY_NIGHT_MODE) public boolean setNightModeActivatedForCustomMode(int, boolean);
1134    method @RequiresPermission(android.Manifest.permission.MODIFY_DAY_NIGHT_MODE) public void setNightModeCustomType(int);
1135    field public static final String ACTION_ENTER_CAR_MODE_PRIORITIZED = "android.app.action.ENTER_CAR_MODE_PRIORITIZED";
1136    field public static final String ACTION_EXIT_CAR_MODE_PRIORITIZED = "android.app.action.EXIT_CAR_MODE_PRIORITIZED";
1137    field public static final int DEFAULT_PRIORITY = 0; // 0x0
1138    field public static final String EXTRA_CALLING_PACKAGE = "android.app.extra.CALLING_PACKAGE";
1139    field public static final String EXTRA_PRIORITY = "android.app.extra.PRIORITY";
1140    field public static final int MODE_NIGHT_CUSTOM_TYPE_BEDTIME = 1; // 0x1
1141    field public static final int MODE_NIGHT_CUSTOM_TYPE_SCHEDULE = 0; // 0x0
1142    field public static final int MODE_NIGHT_CUSTOM_TYPE_UNKNOWN = -1; // 0xffffffff
1143    field public static final int PROJECTION_TYPE_ALL = -1; // 0xffffffff
1144    field public static final int PROJECTION_TYPE_AUTOMOTIVE = 1; // 0x1
1145    field public static final int PROJECTION_TYPE_NONE = 0; // 0x0
1146  }
1147
1148  public static interface UiModeManager.OnProjectionStateChangedListener {
1149    method public void onProjectionStateChanged(int, @NonNull java.util.Set<java.lang.String>);
1150  }
1151
1152  public final class Vr2dDisplayProperties implements android.os.Parcelable {
1153    ctor public Vr2dDisplayProperties(int, int, int);
1154    method public int describeContents();
1155    method public void dump(@NonNull java.io.PrintWriter, @NonNull String);
1156    method public int getAddedFlags();
1157    method public int getDpi();
1158    method public int getHeight();
1159    method public int getRemovedFlags();
1160    method public int getWidth();
1161    method public void writeToParcel(android.os.Parcel, int);
1162    field @NonNull public static final android.os.Parcelable.Creator<android.app.Vr2dDisplayProperties> CREATOR;
1163    field public static final int FLAG_VIRTUAL_DISPLAY_ENABLED = 1; // 0x1
1164  }
1165
1166  public static final class Vr2dDisplayProperties.Builder {
1167    ctor public Vr2dDisplayProperties.Builder();
1168    method @NonNull public android.app.Vr2dDisplayProperties.Builder addFlags(int);
1169    method @NonNull public android.app.Vr2dDisplayProperties build();
1170    method @NonNull public android.app.Vr2dDisplayProperties.Builder removeFlags(int);
1171    method @NonNull public android.app.Vr2dDisplayProperties.Builder setDimensions(int, int, int);
1172    method @NonNull public android.app.Vr2dDisplayProperties.Builder setEnabled(boolean);
1173  }
1174
1175  public class VrManager {
1176    method @RequiresPermission(android.Manifest.permission.RESTRICTED_VR_ACCESS) public int getVr2dDisplayId();
1177    method @RequiresPermission(anyOf={android.Manifest.permission.RESTRICTED_VR_ACCESS, "android.permission.ACCESS_VR_STATE"}) public boolean isPersistentVrModeEnabled();
1178    method @RequiresPermission(anyOf={android.Manifest.permission.RESTRICTED_VR_ACCESS, "android.permission.ACCESS_VR_STATE"}) public boolean isVrModeEnabled();
1179    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);
1180    method @RequiresPermission(android.Manifest.permission.RESTRICTED_VR_ACCESS) public void setAndBindVrCompositor(android.content.ComponentName);
1181    method @RequiresPermission(android.Manifest.permission.RESTRICTED_VR_ACCESS) public void setPersistentVrModeEnabled(boolean);
1182    method @RequiresPermission("android.permission.ACCESS_VR_MANAGER") public void setStandbyEnabled(boolean);
1183    method @RequiresPermission(android.Manifest.permission.RESTRICTED_VR_ACCESS) public void setVr2dDisplayProperties(@NonNull android.app.Vr2dDisplayProperties);
1184    method @RequiresPermission(android.Manifest.permission.RESTRICTED_VR_ACCESS) public void setVrInputMethod(@Nullable android.content.ComponentName);
1185    method @RequiresPermission(anyOf={android.Manifest.permission.RESTRICTED_VR_ACCESS, "android.permission.ACCESS_VR_STATE"}) public void unregisterVrStateCallback(@NonNull android.app.VrStateCallback);
1186  }
1187
1188  public abstract class VrStateCallback {
1189    ctor public VrStateCallback();
1190    method public void onPersistentVrStateChanged(boolean);
1191    method public void onVrStateChanged(boolean);
1192  }
1193
1194  public final class WallpaperInfo implements android.os.Parcelable {
1195    method public boolean supportsAmbientMode();
1196  }
1197
1198  public class WallpaperManager {
1199    method @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS_FULL) public void clearWallpaper(int, int);
1200    method @FloatRange(from=0.0f, to=1.0f) @RequiresPermission(android.Manifest.permission.SET_WALLPAPER_DIM_AMOUNT) public float getWallpaperDimAmount();
1201    method public void setDisplayOffset(android.os.IBinder, int, int);
1202    method @RequiresPermission(android.Manifest.permission.SET_WALLPAPER_COMPONENT) public boolean setWallpaperComponent(android.content.ComponentName);
1203    method @RequiresPermission(android.Manifest.permission.SET_WALLPAPER_COMPONENT) public boolean setWallpaperComponentWithFlags(@NonNull android.content.ComponentName, int);
1204    method @RequiresPermission(android.Manifest.permission.SET_WALLPAPER_DIM_AMOUNT) public void setWallpaperDimAmount(@FloatRange(from=0.0f, to=1.0f) float);
1205  }
1206
1207}
1208
1209package android.app.admin {
1210
1211  public final class AccountTypePolicyKey extends android.app.admin.PolicyKey {
1212    method public int describeContents();
1213    method @NonNull public String getAccountType();
1214    method public void writeToParcel(@NonNull android.os.Parcel, int);
1215    field @NonNull public static final android.os.Parcelable.Creator<android.app.admin.AccountTypePolicyKey> CREATOR;
1216  }
1217
1218  public abstract class Authority implements android.os.Parcelable {
1219    method public int describeContents();
1220  }
1221
1222  public final class DeviceAdminAuthority extends android.app.admin.Authority {
1223    ctor public DeviceAdminAuthority();
1224    method public void writeToParcel(@NonNull android.os.Parcel, int);
1225    field @NonNull public static final android.os.Parcelable.Creator<android.app.admin.DeviceAdminAuthority> CREATOR;
1226  }
1227
1228  public final class DevicePolicyDrawableResource implements android.os.Parcelable {
1229    ctor public DevicePolicyDrawableResource(@NonNull android.content.Context, @NonNull String, @NonNull String, @NonNull String, @DrawableRes int);
1230    ctor public DevicePolicyDrawableResource(@NonNull android.content.Context, @NonNull String, @NonNull String, @DrawableRes int);
1231    method public int describeContents();
1232    method @NonNull public String getDrawableId();
1233    method @NonNull public String getDrawableSource();
1234    method @NonNull public String getDrawableStyle();
1235    method @DrawableRes public int getResourceIdInCallingPackage();
1236    method public void writeToParcel(@NonNull android.os.Parcel, int);
1237    field @NonNull public static final android.os.Parcelable.Creator<android.app.admin.DevicePolicyDrawableResource> CREATOR;
1238  }
1239
1240  public class DevicePolicyKeyguardService extends android.app.Service {
1241    ctor public DevicePolicyKeyguardService();
1242    method @Nullable public void dismiss();
1243    method @Nullable public final android.os.IBinder onBind(@Nullable android.content.Intent);
1244    method @Nullable public android.view.SurfaceControlViewHost.SurfacePackage onCreateKeyguardSurface(@NonNull android.os.IBinder);
1245  }
1246
1247  public class DevicePolicyManager {
1248    method @RequiresPermission(android.Manifest.permission.MANAGE_PROFILE_AND_DEVICE_OWNERS) public int checkProvisioningPrecondition(@NonNull String, @NonNull String);
1249    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;
1250    method @Nullable public android.content.Intent createProvisioningIntentFromNfcIntent(@NonNull android.content.Intent);
1251    method @RequiresPermission(android.Manifest.permission.MANAGE_PROFILE_AND_DEVICE_OWNERS) public void finalizeWorkProfileProvisioning(@NonNull android.os.UserHandle, @Nullable android.accounts.Account);
1252    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;
1253    method @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS) public boolean getBluetoothContactSharingDisabled(@NonNull android.os.UserHandle);
1254    method @Nullable @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public String getDeviceOwner();
1255    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.MANAGE_PROFILE_AND_DEVICE_OWNERS}) public android.content.ComponentName getDeviceOwnerComponentOnAnyUser();
1256    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.MANAGE_PROFILE_AND_DEVICE_OWNERS}) public String getDeviceOwnerNameOnAnyUser();
1257    method @Nullable public CharSequence getDeviceOwnerOrganizationName();
1258    method @Nullable @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public android.os.UserHandle getDeviceOwnerUser();
1259    method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_PROFILE_AND_DEVICE_OWNERS) public android.app.admin.DevicePolicyState getDevicePolicyState();
1260    method @Nullable @RequiresPermission(android.Manifest.permission.MANAGE_PROFILE_AND_DEVICE_OWNERS) public String getFinancedDeviceKioskRoleHolder();
1261    method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.QUERY_ADMIN_POLICY}) public java.util.List<java.lang.String> getPermittedAccessibilityServices(int);
1262    method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.QUERY_ADMIN_POLICY}) public java.util.List<java.lang.String> getPermittedInputMethodsForCurrentUser();
1263    method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_PROFILE_AND_DEVICE_OWNERS) public java.util.List<android.os.UserHandle> getPolicyManagedProfiles(@NonNull android.os.UserHandle);
1264    method @Nullable public android.content.ComponentName getProfileOwner() throws java.lang.IllegalArgumentException;
1265    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;
1266    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.MANAGE_PROFILE_AND_DEVICE_OWNERS}) public int getUserProvisioningState();
1267    method public boolean isDeviceManaged();
1268    method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public boolean isDeviceProvisioned();
1269    method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public boolean isDeviceProvisioningConfigApplied();
1270    method @RequiresPermission(android.Manifest.permission.MANAGE_PROFILE_AND_DEVICE_OWNERS) public boolean isDpcDownloaded();
1271    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.MANAGE_PROFILE_AND_DEVICE_OWNERS}) public boolean isManagedKiosk();
1272    method public boolean isSecondaryLockscreenEnabled(@NonNull android.os.UserHandle);
1273    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.MANAGE_PROFILE_AND_DEVICE_OWNERS}) public boolean isUnattendedManagedKiosk();
1274    method @RequiresPermission("android.permission.NOTIFY_PENDING_SYSTEM_UPDATE") public void notifyPendingSystemUpdate(long);
1275    method @RequiresPermission("android.permission.NOTIFY_PENDING_SYSTEM_UPDATE") public void notifyPendingSystemUpdate(long, boolean);
1276    method @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS_FULL) public boolean packageHasActiveAdmins(String);
1277    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;
1278    method @RequiresPermission(android.Manifest.permission.TRIGGER_LOST_MODE) public void sendLostModeLocationUpdate(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Boolean>);
1279    method @Deprecated @RequiresPermission(android.Manifest.permission.MANAGE_DEVICE_ADMINS) public boolean setActiveProfileOwner(@NonNull android.content.ComponentName, String) throws java.lang.IllegalArgumentException;
1280    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;
1281    method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public void setDeviceProvisioningConfigApplied();
1282    method @RequiresPermission(android.Manifest.permission.MANAGE_PROFILE_AND_DEVICE_OWNERS) public void setDpcDownloaded(boolean);
1283    method @Deprecated @RequiresPermission(value=android.Manifest.permission.GRANT_PROFILE_OWNER_DEVICE_IDS_ACCESS, conditional=true) public void setProfileOwnerCanAccessDeviceIds(@NonNull android.content.ComponentName);
1284    method public void setSecondaryLockscreenEnabled(@NonNull android.content.ComponentName, boolean);
1285    method @RequiresPermission(android.Manifest.permission.MANAGE_PROFILE_AND_DEVICE_OWNERS) public void setUserProvisioningState(int, @NonNull android.os.UserHandle);
1286    method @RequiresPermission(android.Manifest.permission.MANAGE_ROLE_HOLDERS) public boolean shouldAllowBypassingDevicePolicyManagementRoleQualification();
1287    field public static final String ACCOUNT_FEATURE_DEVICE_OR_PROFILE_OWNER_ALLOWED = "android.account.DEVICE_OR_PROFILE_OWNER_ALLOWED";
1288    field public static final String ACCOUNT_FEATURE_DEVICE_OR_PROFILE_OWNER_DISALLOWED = "android.account.DEVICE_OR_PROFILE_OWNER_DISALLOWED";
1289    field public static final String ACTION_BIND_SECONDARY_LOCKSCREEN_SERVICE = "android.app.action.BIND_SECONDARY_LOCKSCREEN_SERVICE";
1290    field @RequiresPermission(android.Manifest.permission.DISPATCH_PROVISIONING_MESSAGE) public static final String ACTION_ESTABLISH_NETWORK_CONNECTION = "android.app.action.ESTABLISH_NETWORK_CONNECTION";
1291    field public static final String ACTION_LOST_MODE_LOCATION_UPDATE = "android.app.action.LOST_MODE_LOCATION_UPDATE";
1292    field public static final String ACTION_PROVISION_FINALIZATION = "android.app.action.PROVISION_FINALIZATION";
1293    field public static final String ACTION_PROVISION_FINANCED_DEVICE = "android.app.action.PROVISION_FINANCED_DEVICE";
1294    field public static final String ACTION_PROVISION_MANAGED_DEVICE_FROM_TRUSTED_SOURCE = "android.app.action.PROVISION_MANAGED_DEVICE_FROM_TRUSTED_SOURCE";
1295    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";
1296    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";
1297    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";
1298    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";
1299    field public static final String ACTION_SET_PROFILE_OWNER = "android.app.action.SET_PROFILE_OWNER";
1300    field @Deprecated public static final String ACTION_STATE_USER_SETUP_COMPLETE = "android.app.action.STATE_USER_SETUP_COMPLETE";
1301    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";
1302    field public static final int EXEMPT_FROM_ACTIVITY_BG_START_RESTRICTION = 2; // 0x2
1303    field public static final int EXEMPT_FROM_DISMISSIBLE_NOTIFICATIONS = 1; // 0x1
1304    field public static final int EXEMPT_FROM_HIBERNATION = 3; // 0x3
1305    field public static final int EXEMPT_FROM_POWER_RESTRICTIONS = 4; // 0x4
1306    field public static final int EXEMPT_FROM_SUSPENSION = 0; // 0x0
1307    field public static final String EXTRA_FORCE_UPDATE_ROLE_HOLDER = "android.app.extra.FORCE_UPDATE_ROLE_HOLDER";
1308    field public static final String EXTRA_LOST_MODE_LOCATION = "android.app.extra.LOST_MODE_LOCATION";
1309    field public static final String EXTRA_PROFILE_OWNER_NAME = "android.app.extra.PROFILE_OWNER_NAME";
1310    field @Deprecated public static final String EXTRA_PROVISIONING_DEVICE_ADMIN_PACKAGE_ICON_URI = "android.app.extra.PROVISIONING_DEVICE_ADMIN_PACKAGE_ICON_URI";
1311    field @Deprecated public static final String EXTRA_PROVISIONING_DEVICE_ADMIN_PACKAGE_LABEL = "android.app.extra.PROVISIONING_DEVICE_ADMIN_PACKAGE_LABEL";
1312    field public static final String EXTRA_PROVISIONING_ORGANIZATION_NAME = "android.app.extra.PROVISIONING_ORGANIZATION_NAME";
1313    field public static final String EXTRA_PROVISIONING_RETURN_BEFORE_POLICY_COMPLIANCE = "android.app.extra.PROVISIONING_RETURN_BEFORE_POLICY_COMPLIANCE";
1314    field public static final String EXTRA_PROVISIONING_ROLE_HOLDER_CUSTOM_USER_CONSENT_INTENT = "android.app.extra.PROVISIONING_ROLE_HOLDER_CUSTOM_USER_CONSENT_INTENT";
1315    field public static final String EXTRA_PROVISIONING_ROLE_HOLDER_EXTRAS_BUNDLE = "android.app.extra.PROVISIONING_ROLE_HOLDER_EXTRAS_BUNDLE";
1316    field public static final String EXTRA_PROVISIONING_ROLE_HOLDER_PACKAGE_DOWNLOAD_COOKIE_HEADER = "android.app.extra.PROVISIONING_ROLE_HOLDER_PACKAGE_DOWNLOAD_COOKIE_HEADER";
1317    field public static final String EXTRA_PROVISIONING_ROLE_HOLDER_PACKAGE_DOWNLOAD_LOCATION = "android.app.extra.PROVISIONING_ROLE_HOLDER_PACKAGE_DOWNLOAD_LOCATION";
1318    field public static final String EXTRA_PROVISIONING_ROLE_HOLDER_SIGNATURE_CHECKSUM = "android.app.extra.PROVISIONING_ROLE_HOLDER_SIGNATURE_CHECKSUM";
1319    field public static final String EXTRA_PROVISIONING_SKIP_OWNERSHIP_DISCLAIMER = "android.app.extra.PROVISIONING_SKIP_OWNERSHIP_DISCLAIMER";
1320    field public static final String EXTRA_PROVISIONING_SUPPORTED_MODES = "android.app.extra.PROVISIONING_SUPPORTED_MODES";
1321    field public static final String EXTRA_PROVISIONING_SUPPORT_URL = "android.app.extra.PROVISIONING_SUPPORT_URL";
1322    field public static final String EXTRA_PROVISIONING_TRIGGER = "android.app.extra.PROVISIONING_TRIGGER";
1323    field public static final String EXTRA_RESTRICTION = "android.app.extra.RESTRICTION";
1324    field public static final String EXTRA_ROLE_HOLDER_PROVISIONING_INITIATOR_PACKAGE = "android.app.extra.ROLE_HOLDER_PROVISIONING_INITIATOR_PACKAGE";
1325    field public static final String EXTRA_ROLE_HOLDER_STATE = "android.app.extra.ROLE_HOLDER_STATE";
1326    field public static final String EXTRA_ROLE_HOLDER_UPDATE_RESULT_CODE = "android.app.extra.ROLE_HOLDER_UPDATE_RESULT_CODE";
1327    field public static final int FLAG_SUPPORTED_MODES_DEVICE_OWNER = 4; // 0x4
1328    field public static final int FLAG_SUPPORTED_MODES_ORGANIZATION_OWNED = 1; // 0x1
1329    field public static final int FLAG_SUPPORTED_MODES_PERSONALLY_OWNED = 2; // 0x2
1330    field public static final int PROVISIONING_TRIGGER_CLOUD_ENROLLMENT = 1; // 0x1
1331    field public static final int PROVISIONING_TRIGGER_MANAGED_ACCOUNT = 4; // 0x4
1332    field public static final int PROVISIONING_TRIGGER_NFC = 5; // 0x5
1333    field @Deprecated public static final int PROVISIONING_TRIGGER_PERSISTENT_DEVICE_OWNER = 3; // 0x3
1334    field public static final int PROVISIONING_TRIGGER_QR_CODE = 2; // 0x2
1335    field public static final int PROVISIONING_TRIGGER_UNSPECIFIED = 0; // 0x0
1336    field public static final String REQUIRED_APP_MANAGED_DEVICE = "android.app.REQUIRED_APP_MANAGED_DEVICE";
1337    field public static final String REQUIRED_APP_MANAGED_PROFILE = "android.app.REQUIRED_APP_MANAGED_PROFILE";
1338    field public static final String REQUIRED_APP_MANAGED_USER = "android.app.REQUIRED_APP_MANAGED_USER";
1339    field public static final int RESULT_DEVICE_OWNER_SET = 123; // 0x7b
1340    field public static final int RESULT_UPDATE_DEVICE_POLICY_MANAGEMENT_ROLE_HOLDER_PROVISIONING_DISABLED = 3; // 0x3
1341    field public static final int RESULT_UPDATE_DEVICE_POLICY_MANAGEMENT_ROLE_HOLDER_RECOVERABLE_ERROR = 1; // 0x1
1342    field public static final int RESULT_UPDATE_DEVICE_POLICY_MANAGEMENT_ROLE_HOLDER_UNRECOVERABLE_ERROR = 2; // 0x2
1343    field public static final int RESULT_UPDATE_ROLE_HOLDER = 2; // 0x2
1344    field public static final int RESULT_WORK_PROFILE_CREATED = 122; // 0x7a
1345    field public static final int STATE_USER_PROFILE_COMPLETE = 4; // 0x4
1346    field public static final int STATE_USER_PROFILE_FINALIZED = 5; // 0x5
1347    field public static final int STATE_USER_SETUP_COMPLETE = 2; // 0x2
1348    field public static final int STATE_USER_SETUP_FINALIZED = 3; // 0x3
1349    field public static final int STATE_USER_SETUP_INCOMPLETE = 1; // 0x1
1350    field public static final int STATE_USER_UNMANAGED = 0; // 0x0
1351    field public static final int STATUS_ACCOUNTS_NOT_EMPTY = 6; // 0x6
1352    field public static final int STATUS_CANNOT_ADD_MANAGED_PROFILE = 11; // 0xb
1353    field public static final int STATUS_DEVICE_ADMIN_NOT_SUPPORTED = 13; // 0xd
1354    field public static final int STATUS_HAS_DEVICE_OWNER = 1; // 0x1
1355    field public static final int STATUS_HAS_PAIRED = 8; // 0x8
1356    field public static final int STATUS_HEADLESS_SYSTEM_USER_MODE_NOT_SUPPORTED = 16; // 0x10
1357    field public static final int STATUS_MANAGED_USERS_NOT_SUPPORTED = 9; // 0x9
1358    field public static final int STATUS_NONSYSTEM_USER_EXISTS = 5; // 0x5
1359    field public static final int STATUS_NOT_SYSTEM_USER = 7; // 0x7
1360    field public static final int STATUS_OK = 0; // 0x0
1361    field public static final int STATUS_PROVISIONING_NOT_ALLOWED_FOR_NON_DEVELOPER_USERS = 15; // 0xf
1362    field public static final int STATUS_SYSTEM_USER = 10; // 0xa
1363    field public static final int STATUS_UNKNOWN_ERROR = -1; // 0xffffffff
1364    field public static final int STATUS_USER_HAS_PROFILE_OWNER = 2; // 0x2
1365    field public static final int STATUS_USER_NOT_RUNNING = 3; // 0x3
1366    field public static final int STATUS_USER_SETUP_COMPLETED = 4; // 0x4
1367  }
1368
1369  public static final class DevicePolicyResources.Strings {
1370  }
1371
1372  public static final class DevicePolicyResources.Strings.DefaultAppSettings {
1373    field public static final String HOME_MISSING_WORK_PROFILE_SUPPORT_MESSAGE = "DefaultAppSettings.HOME_MISSING_WORK_PROFILE_SUPPORT_MESSAGE";
1374    field public static final String WORK_PROFILE_DEFAULT_APPS_TITLE = "DefaultAppSettings.WORK_PROFILE_DEFAULT_APPS_TITLE";
1375  }
1376
1377  public static final class DevicePolicyResources.Strings.PermissionSettings {
1378    field public static final String BACKGROUND_ACCESS_DISABLED_BY_ADMIN_MESSAGE = "PermissionSettings.BACKGROUND_ACCESS_DISABLED_BY_ADMIN_MESSAGE";
1379    field public static final String BACKGROUND_ACCESS_ENABLED_BY_ADMIN_MESSAGE = "PermissionSettings.BACKGROUND_ACCESS_ENABLED_BY_ADMIN_MESSAGE";
1380    field public static final String FOREGROUND_ACCESS_ENABLED_BY_ADMIN_MESSAGE = "PermissionSettings.FOREGROUND_ACCESS_ENABLED_BY_ADMIN_MESSAGE";
1381    field public static final String LOCATION_AUTO_GRANTED_MESSAGE = "PermissionSettings.LOCATION_AUTO_GRANTED_MESSAGE";
1382  }
1383
1384  public class DevicePolicyResourcesManager {
1385    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_MANAGEMENT_RESOURCES) public void resetDrawables(@NonNull java.util.Set<java.lang.String>);
1386    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_MANAGEMENT_RESOURCES) public void resetStrings(@NonNull java.util.Set<java.lang.String>);
1387    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_MANAGEMENT_RESOURCES) public void setDrawables(@NonNull java.util.Set<android.app.admin.DevicePolicyDrawableResource>);
1388    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_MANAGEMENT_RESOURCES) public void setStrings(@NonNull java.util.Set<android.app.admin.DevicePolicyStringResource>);
1389  }
1390
1391  public final class DevicePolicyState implements android.os.Parcelable {
1392    method public int describeContents();
1393    method @NonNull public java.util.Map<android.os.UserHandle,java.util.Map<android.app.admin.PolicyKey,android.app.admin.PolicyState<?>>> getPoliciesForAllUsers();
1394    method @NonNull public java.util.Map<android.app.admin.PolicyKey,android.app.admin.PolicyState<?>> getPoliciesForUser(@NonNull android.os.UserHandle);
1395    method public void writeToParcel(@NonNull android.os.Parcel, int);
1396    field @NonNull public static final android.os.Parcelable.Creator<android.app.admin.DevicePolicyState> CREATOR;
1397  }
1398
1399  public final class DevicePolicyStringResource implements android.os.Parcelable {
1400    ctor public DevicePolicyStringResource(@NonNull android.content.Context, @NonNull String, @StringRes int);
1401    method public int describeContents();
1402    method public int getResourceIdInCallingPackage();
1403    method @NonNull public String getStringId();
1404    method public void writeToParcel(@NonNull android.os.Parcel, int);
1405    field @NonNull public static final android.os.Parcelable.Creator<android.app.admin.DevicePolicyStringResource> CREATOR;
1406  }
1407
1408  public final class DpcAuthority extends android.app.admin.Authority {
1409    ctor public DpcAuthority();
1410    method public void writeToParcel(@NonNull android.os.Parcel, int);
1411    field @NonNull public static final android.os.Parcelable.Creator<android.app.admin.DpcAuthority> CREATOR;
1412  }
1413
1414  public final class EnforcingAdmin implements android.os.Parcelable {
1415    ctor public EnforcingAdmin(@NonNull String, @NonNull android.app.admin.Authority, @NonNull android.os.UserHandle);
1416    method public int describeContents();
1417    method @NonNull public android.app.admin.Authority getAuthority();
1418    method @NonNull public String getPackageName();
1419    method @NonNull public android.os.UserHandle getUserHandle();
1420    method public void writeToParcel(@NonNull android.os.Parcel, int);
1421    field @NonNull public static final android.os.Parcelable.Creator<android.app.admin.EnforcingAdmin> CREATOR;
1422  }
1423
1424  public final class FullyManagedDeviceProvisioningParams implements android.os.Parcelable {
1425    method public boolean canDeviceOwnerGrantSensorsPermissions();
1426    method public int describeContents();
1427    method @NonNull public android.os.PersistableBundle getAdminExtras();
1428    method @NonNull public android.content.ComponentName getDeviceAdminComponentName();
1429    method public long getLocalTime();
1430    method @Nullable public java.util.Locale getLocale();
1431    method @NonNull public String getOwnerName();
1432    method @Nullable public String getTimeZone();
1433    method public boolean isDemoDevice();
1434    method public boolean isLeaveAllSystemAppsEnabled();
1435    method public void writeToParcel(@NonNull android.os.Parcel, @Nullable int);
1436    field @NonNull public static final android.os.Parcelable.Creator<android.app.admin.FullyManagedDeviceProvisioningParams> CREATOR;
1437  }
1438
1439  public static final class FullyManagedDeviceProvisioningParams.Builder {
1440    ctor public FullyManagedDeviceProvisioningParams.Builder(@NonNull android.content.ComponentName, @NonNull String);
1441    method @NonNull public android.app.admin.FullyManagedDeviceProvisioningParams build();
1442    method @NonNull public android.app.admin.FullyManagedDeviceProvisioningParams.Builder setAdminExtras(@NonNull android.os.PersistableBundle);
1443    method @NonNull public android.app.admin.FullyManagedDeviceProvisioningParams.Builder setCanDeviceOwnerGrantSensorsPermissions(boolean);
1444    method @NonNull public android.app.admin.FullyManagedDeviceProvisioningParams.Builder setDemoDevice(boolean);
1445    method @NonNull public android.app.admin.FullyManagedDeviceProvisioningParams.Builder setLeaveAllSystemAppsEnabled(boolean);
1446    method @NonNull public android.app.admin.FullyManagedDeviceProvisioningParams.Builder setLocalTime(long);
1447    method @NonNull public android.app.admin.FullyManagedDeviceProvisioningParams.Builder setLocale(@Nullable java.util.Locale);
1448    method @NonNull public android.app.admin.FullyManagedDeviceProvisioningParams.Builder setTimeZone(@Nullable String);
1449  }
1450
1451  public final class IntentFilterPolicyKey extends android.app.admin.PolicyKey {
1452    method public int describeContents();
1453    method @NonNull public android.content.IntentFilter getIntentFilter();
1454    method public void writeToParcel(@NonNull android.os.Parcel, int);
1455    field @NonNull public static final android.os.Parcelable.Creator<android.app.admin.IntentFilterPolicyKey> CREATOR;
1456  }
1457
1458  public final class LockTaskPolicy implements android.os.Parcelable {
1459    method public int describeContents();
1460    method public int getFlags();
1461    method @NonNull public java.util.Set<java.lang.String> getPackages();
1462    method public void writeToParcel(@NonNull android.os.Parcel, int);
1463    field @NonNull public static final android.os.Parcelable.Creator<android.app.admin.LockTaskPolicy> CREATOR;
1464  }
1465
1466  public final class ManagedProfileProvisioningParams implements android.os.Parcelable {
1467    method public int describeContents();
1468    method @Nullable public android.accounts.Account getAccountToMigrate();
1469    method @NonNull public android.os.PersistableBundle getAdminExtras();
1470    method @NonNull public String getOwnerName();
1471    method @NonNull public android.content.ComponentName getProfileAdminComponentName();
1472    method @Nullable public String getProfileName();
1473    method public boolean isKeepingAccountOnMigration();
1474    method public boolean isLeaveAllSystemAppsEnabled();
1475    method public boolean isOrganizationOwnedProvisioning();
1476    method public void writeToParcel(@NonNull android.os.Parcel, @Nullable int);
1477    field @NonNull public static final android.os.Parcelable.Creator<android.app.admin.ManagedProfileProvisioningParams> CREATOR;
1478  }
1479
1480  public static final class ManagedProfileProvisioningParams.Builder {
1481    ctor public ManagedProfileProvisioningParams.Builder(@NonNull android.content.ComponentName, @NonNull String);
1482    method @NonNull public android.app.admin.ManagedProfileProvisioningParams build();
1483    method @NonNull public android.app.admin.ManagedProfileProvisioningParams.Builder setAccountToMigrate(@Nullable android.accounts.Account);
1484    method @NonNull public android.app.admin.ManagedProfileProvisioningParams.Builder setAdminExtras(@NonNull android.os.PersistableBundle);
1485    method @NonNull public android.app.admin.ManagedProfileProvisioningParams.Builder setKeepingAccountOnMigration(boolean);
1486    method @NonNull public android.app.admin.ManagedProfileProvisioningParams.Builder setLeaveAllSystemAppsEnabled(boolean);
1487    method @NonNull public android.app.admin.ManagedProfileProvisioningParams.Builder setOrganizationOwnedProvisioning(boolean);
1488    method @NonNull public android.app.admin.ManagedProfileProvisioningParams.Builder setProfileName(@Nullable String);
1489  }
1490
1491  public final class NoArgsPolicyKey extends android.app.admin.PolicyKey {
1492    method public int describeContents();
1493    method public void writeToParcel(@NonNull android.os.Parcel, int);
1494    field @NonNull public static final android.os.Parcelable.Creator<android.app.admin.NoArgsPolicyKey> CREATOR;
1495  }
1496
1497  public final class PackagePermissionPolicyKey extends android.app.admin.PolicyKey {
1498    method public int describeContents();
1499    method @NonNull public String getPackageName();
1500    method @NonNull public String getPermissionName();
1501    method public void writeToParcel(@NonNull android.os.Parcel, int);
1502    field @NonNull public static final android.os.Parcelable.Creator<android.app.admin.PackagePermissionPolicyKey> CREATOR;
1503  }
1504
1505  public final class PackagePolicyKey extends android.app.admin.PolicyKey {
1506    method public int describeContents();
1507    method @NonNull public String getPackageName();
1508    method public void writeToParcel(@NonNull android.os.Parcel, int);
1509    field @NonNull public static final android.os.Parcelable.Creator<android.app.admin.PackagePolicyKey> CREATOR;
1510  }
1511
1512  public abstract class PolicyKey implements android.os.Parcelable {
1513    method @NonNull public String getIdentifier();
1514  }
1515
1516  public final class PolicyState<V> implements android.os.Parcelable {
1517    method public int describeContents();
1518    method @Nullable public V getCurrentResolvedPolicy();
1519    method @NonNull public java.util.LinkedHashMap<android.app.admin.EnforcingAdmin,V> getPoliciesSetByAdmins();
1520    method public void writeToParcel(@NonNull android.os.Parcel, int);
1521    field @NonNull public static final android.os.Parcelable.Creator<android.app.admin.PolicyState<?>> CREATOR;
1522  }
1523
1524  public class ProvisioningException extends android.util.AndroidException {
1525    ctor public ProvisioningException(@NonNull Exception, int);
1526    ctor public ProvisioningException(@NonNull Exception, int, @Nullable String);
1527    method public int getProvisioningError();
1528    field public static final int ERROR_ADMIN_PACKAGE_INSTALLATION_FAILED = 3; // 0x3
1529    field public static final int ERROR_PRE_CONDITION_FAILED = 1; // 0x1
1530    field public static final int ERROR_PROFILE_CREATION_FAILED = 2; // 0x2
1531    field public static final int ERROR_REMOVE_NON_REQUIRED_APPS_FAILED = 6; // 0x6
1532    field public static final int ERROR_SETTING_PROFILE_OWNER_FAILED = 4; // 0x4
1533    field public static final int ERROR_SET_DEVICE_OWNER_FAILED = 7; // 0x7
1534    field public static final int ERROR_STARTING_PROFILE_FAILED = 5; // 0x5
1535    field public static final int ERROR_UNKNOWN = 0; // 0x0
1536  }
1537
1538  public final class RoleAuthority extends android.app.admin.Authority {
1539    ctor public RoleAuthority(@NonNull java.util.Set<java.lang.String>);
1540    method @NonNull public java.util.Set<java.lang.String> getRoles();
1541    method public void writeToParcel(@NonNull android.os.Parcel, int);
1542    field @NonNull public static final android.os.Parcelable.Creator<android.app.admin.RoleAuthority> CREATOR;
1543  }
1544
1545  public class SecurityLog {
1546    method @RequiresPermission(android.Manifest.permission.WRITE_SECURITY_LOG) public static int writeEvent(int, @NonNull java.lang.Object...);
1547  }
1548
1549  public final class SystemUpdatePolicy implements android.os.Parcelable {
1550    method public android.app.admin.SystemUpdatePolicy.InstallationOption getInstallationOptionAt(long);
1551    field public static final int TYPE_PAUSE = 4; // 0x4
1552  }
1553
1554  public static class SystemUpdatePolicy.InstallationOption {
1555    method public long getEffectiveTime();
1556    method public int getType();
1557  }
1558
1559  public final class UnknownAuthority extends android.app.admin.Authority {
1560    ctor public UnknownAuthority();
1561    method public void writeToParcel(@NonNull android.os.Parcel, int);
1562    field @NonNull public static final android.os.Parcelable.Creator<android.app.admin.UnknownAuthority> CREATOR;
1563  }
1564
1565  public final class UserRestrictionPolicyKey extends android.app.admin.PolicyKey {
1566    method public int describeContents();
1567    method @NonNull public String getRestriction();
1568    method public void writeToParcel(@NonNull android.os.Parcel, int);
1569    field @NonNull public static final android.os.Parcelable.Creator<android.app.admin.UserRestrictionPolicyKey> CREATOR;
1570  }
1571
1572}
1573
1574package android.app.ambientcontext {
1575
1576  public final class AmbientContextEvent implements android.os.Parcelable {
1577    method public int describeContents();
1578    method public int getConfidenceLevel();
1579    method public int getDensityLevel();
1580    method @NonNull public java.time.Instant getEndTime();
1581    method public int getEventType();
1582    method @NonNull public java.time.Instant getStartTime();
1583    method @NonNull public android.os.PersistableBundle getVendorData();
1584    method public void writeToParcel(@NonNull android.os.Parcel, int);
1585    field @NonNull public static final android.os.Parcelable.Creator<android.app.ambientcontext.AmbientContextEvent> CREATOR;
1586    field public static final int EVENT_BACK_DOUBLE_TAP = 3; // 0x3
1587    field public static final int EVENT_COUGH = 1; // 0x1
1588    field public static final int EVENT_SNORE = 2; // 0x2
1589    field public static final int EVENT_UNKNOWN = 0; // 0x0
1590    field public static final int EVENT_VENDOR_WEARABLE_START = 100000; // 0x186a0
1591    field public static final String KEY_VENDOR_WEARABLE_EVENT_NAME = "wearable_event_name";
1592    field public static final int LEVEL_HIGH = 5; // 0x5
1593    field public static final int LEVEL_LOW = 1; // 0x1
1594    field public static final int LEVEL_MEDIUM = 3; // 0x3
1595    field public static final int LEVEL_MEDIUM_HIGH = 4; // 0x4
1596    field public static final int LEVEL_MEDIUM_LOW = 2; // 0x2
1597    field public static final int LEVEL_UNKNOWN = 0; // 0x0
1598  }
1599
1600  public static final class AmbientContextEvent.Builder {
1601    ctor public AmbientContextEvent.Builder();
1602    method @NonNull public android.app.ambientcontext.AmbientContextEvent build();
1603    method @NonNull public android.app.ambientcontext.AmbientContextEvent.Builder setConfidenceLevel(int);
1604    method @NonNull public android.app.ambientcontext.AmbientContextEvent.Builder setDensityLevel(int);
1605    method @NonNull public android.app.ambientcontext.AmbientContextEvent.Builder setEndTime(@NonNull java.time.Instant);
1606    method @NonNull public android.app.ambientcontext.AmbientContextEvent.Builder setEventType(int);
1607    method @NonNull public android.app.ambientcontext.AmbientContextEvent.Builder setStartTime(@NonNull java.time.Instant);
1608    method @NonNull public android.app.ambientcontext.AmbientContextEvent.Builder setVendorData(@NonNull android.os.PersistableBundle);
1609  }
1610
1611  public final class AmbientContextEventRequest implements android.os.Parcelable {
1612    method public int describeContents();
1613    method @NonNull public java.util.Set<java.lang.Integer> getEventTypes();
1614    method @NonNull public android.os.PersistableBundle getOptions();
1615    method public void writeToParcel(@NonNull android.os.Parcel, int);
1616    field @NonNull public static final android.os.Parcelable.Creator<android.app.ambientcontext.AmbientContextEventRequest> CREATOR;
1617  }
1618
1619  public static final class AmbientContextEventRequest.Builder {
1620    ctor public AmbientContextEventRequest.Builder();
1621    method @NonNull public android.app.ambientcontext.AmbientContextEventRequest.Builder addEventType(int);
1622    method @NonNull public android.app.ambientcontext.AmbientContextEventRequest build();
1623    method @NonNull public android.app.ambientcontext.AmbientContextEventRequest.Builder setOptions(@NonNull android.os.PersistableBundle);
1624  }
1625
1626  public final class AmbientContextManager {
1627    method @NonNull public static java.util.List<android.app.ambientcontext.AmbientContextEvent> getEventsFromIntent(@NonNull android.content.Intent);
1628    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>);
1629    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>);
1630    method @RequiresPermission(android.Manifest.permission.ACCESS_AMBIENT_CONTEXT_EVENT) public void startConsentActivity(@NonNull java.util.Set<java.lang.Integer>);
1631    method @RequiresPermission(android.Manifest.permission.ACCESS_AMBIENT_CONTEXT_EVENT) public void unregisterObserver();
1632    field public static final String EXTRA_AMBIENT_CONTEXT_EVENTS = "android.app.ambientcontext.extra.AMBIENT_CONTEXT_EVENTS";
1633    field public static final int STATUS_ACCESS_DENIED = 5; // 0x5
1634    field public static final int STATUS_MICROPHONE_DISABLED = 4; // 0x4
1635    field public static final int STATUS_NOT_SUPPORTED = 2; // 0x2
1636    field public static final int STATUS_SERVICE_UNAVAILABLE = 3; // 0x3
1637    field public static final int STATUS_SUCCESS = 1; // 0x1
1638    field public static final int STATUS_UNKNOWN = 0; // 0x0
1639  }
1640
1641}
1642
1643package android.app.assist {
1644
1645  public final class ActivityId implements android.os.Parcelable {
1646    method public int describeContents();
1647    method public void writeToParcel(@NonNull android.os.Parcel, int);
1648    field @NonNull public static final android.os.Parcelable.Creator<android.app.assist.ActivityId> CREATOR;
1649  }
1650
1651  public static class AssistStructure.ViewNode {
1652    ctor public AssistStructure.ViewNode();
1653  }
1654
1655}
1656
1657package android.app.backup {
1658
1659  public class BackupDataInput {
1660    ctor public BackupDataInput(java.io.FileDescriptor);
1661  }
1662
1663  public class BackupDataOutput {
1664    ctor public BackupDataOutput(java.io.FileDescriptor);
1665    ctor public BackupDataOutput(java.io.FileDescriptor, long);
1666  }
1667
1668  public class BackupManager {
1669    method @RequiresPermission(android.Manifest.permission.BACKUP) public void backupNow();
1670    method @RequiresPermission(android.Manifest.permission.BACKUP) public android.app.backup.RestoreSession beginRestoreSession();
1671    method @RequiresPermission(android.Manifest.permission.BACKUP) public void cancelBackups();
1672    method @RequiresPermission(android.Manifest.permission.BACKUP) public void excludeKeysFromRestore(@NonNull String, @NonNull java.util.List<java.lang.String>);
1673    method @RequiresPermission(android.Manifest.permission.BACKUP) public long getAvailableRestoreToken(String);
1674    method @NonNull public android.app.backup.BackupRestoreEventLogger getBackupRestoreEventLogger(@NonNull android.app.backup.BackupAgent);
1675    method @RequiresPermission(android.Manifest.permission.BACKUP) public android.content.Intent getConfigurationIntent(String);
1676    method @RequiresPermission(android.Manifest.permission.BACKUP) public String getCurrentTransport();
1677    method @Nullable @RequiresPermission(android.Manifest.permission.BACKUP) public android.content.ComponentName getCurrentTransportComponent();
1678    method @RequiresPermission(android.Manifest.permission.BACKUP) public android.content.Intent getDataManagementIntent(String);
1679    method @Nullable @RequiresPermission(android.Manifest.permission.BACKUP) public CharSequence getDataManagementIntentLabel(@NonNull String);
1680    method @Deprecated @Nullable @RequiresPermission(android.Manifest.permission.BACKUP) public String getDataManagementLabel(@NonNull String);
1681    method @NonNull public android.app.backup.BackupRestoreEventLogger getDelayedRestoreLogger();
1682    method @RequiresPermission(android.Manifest.permission.BACKUP) public String getDestinationString(String);
1683    method @RequiresPermission(android.Manifest.permission.BACKUP) public boolean isAppEligibleForBackup(String);
1684    method @RequiresPermission(android.Manifest.permission.BACKUP) public boolean isBackupEnabled();
1685    method @RequiresPermission(android.Manifest.permission.BACKUP) public boolean isBackupServiceActive(android.os.UserHandle);
1686    method @RequiresPermission(android.Manifest.permission.BACKUP) public String[] listAllTransports();
1687    method public void reportDelayedRestoreResult(@NonNull android.app.backup.BackupRestoreEventLogger);
1688    method @RequiresPermission(android.Manifest.permission.BACKUP) public int requestBackup(String[], android.app.backup.BackupObserver);
1689    method @RequiresPermission(android.Manifest.permission.BACKUP) public int requestBackup(String[], android.app.backup.BackupObserver, android.app.backup.BackupManagerMonitor, int);
1690    method @Deprecated public int requestRestore(android.app.backup.RestoreObserver, android.app.backup.BackupManagerMonitor);
1691    method @Deprecated @RequiresPermission(android.Manifest.permission.BACKUP) public String selectBackupTransport(String);
1692    method @RequiresPermission(android.Manifest.permission.BACKUP) public void selectBackupTransport(android.content.ComponentName, android.app.backup.SelectBackupTransportCallback);
1693    method @RequiresPermission(android.Manifest.permission.BACKUP) public void setAncestralSerialNumber(long);
1694    method @RequiresPermission(android.Manifest.permission.BACKUP) public void setAutoRestore(boolean);
1695    method @RequiresPermission(android.Manifest.permission.BACKUP) public void setBackupEnabled(boolean);
1696    method @RequiresPermission(allOf={android.Manifest.permission.BACKUP, android.Manifest.permission.INTERACT_ACROSS_USERS_FULL}, conditional=true) public void setFrameworkSchedulingEnabled(boolean);
1697    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);
1698    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);
1699    field public static final int ERROR_AGENT_FAILURE = -1003; // 0xfffffc15
1700    field public static final int ERROR_BACKUP_CANCELLED = -2003; // 0xfffff82d
1701    field public static final int ERROR_BACKUP_NOT_ALLOWED = -2001; // 0xfffff82f
1702    field public static final int ERROR_PACKAGE_NOT_FOUND = -2002; // 0xfffff82e
1703    field public static final int ERROR_TRANSPORT_ABORTED = -1000; // 0xfffffc18
1704    field public static final int ERROR_TRANSPORT_INVALID = -2; // 0xfffffffe
1705    field public static final int ERROR_TRANSPORT_PACKAGE_REJECTED = -1002; // 0xfffffc16
1706    field public static final int ERROR_TRANSPORT_QUOTA_EXCEEDED = -1005; // 0xfffffc13
1707    field public static final int ERROR_TRANSPORT_UNAVAILABLE = -1; // 0xffffffff
1708    field public static final int FLAG_NON_INCREMENTAL_BACKUP = 1; // 0x1
1709    field public static final String PACKAGE_MANAGER_SENTINEL = "@pm@";
1710    field public static final int SUCCESS = 0; // 0x0
1711  }
1712
1713  public class BackupManagerMonitor {
1714    ctor public BackupManagerMonitor();
1715    method public void onEvent(android.os.Bundle);
1716    field public static final String EXTRA_LOG_AGENT_LOGGING_RESULTS = "android.app.backup.extra.LOG_AGENT_LOGGING_RESULTS";
1717    field public static final String EXTRA_LOG_CANCEL_ALL = "android.app.backup.extra.LOG_CANCEL_ALL";
1718    field public static final String EXTRA_LOG_EVENT_CATEGORY = "android.app.backup.extra.LOG_EVENT_CATEGORY";
1719    field public static final String EXTRA_LOG_EVENT_ID = "android.app.backup.extra.LOG_EVENT_ID";
1720    field public static final String EXTRA_LOG_EVENT_PACKAGE_LONG_VERSION = "android.app.backup.extra.LOG_EVENT_PACKAGE_FULL_VERSION";
1721    field public static final String EXTRA_LOG_EVENT_PACKAGE_NAME = "android.app.backup.extra.LOG_EVENT_PACKAGE_NAME";
1722    field @Deprecated public static final String EXTRA_LOG_EVENT_PACKAGE_VERSION = "android.app.backup.extra.LOG_EVENT_PACKAGE_VERSION";
1723    field public static final String EXTRA_LOG_EXCEPTION_FULL_BACKUP = "android.app.backup.extra.LOG_EXCEPTION_FULL_BACKUP";
1724    field public static final String EXTRA_LOG_ILLEGAL_KEY = "android.app.backup.extra.LOG_ILLEGAL_KEY";
1725    field public static final String EXTRA_LOG_MANIFEST_PACKAGE_NAME = "android.app.backup.extra.LOG_MANIFEST_PACKAGE_NAME";
1726    field public static final String EXTRA_LOG_OLD_VERSION = "android.app.backup.extra.LOG_OLD_VERSION";
1727    field public static final String EXTRA_LOG_POLICY_ALLOW_APKS = "android.app.backup.extra.LOG_POLICY_ALLOW_APKS";
1728    field public static final String EXTRA_LOG_PREFLIGHT_ERROR = "android.app.backup.extra.LOG_PREFLIGHT_ERROR";
1729    field public static final String EXTRA_LOG_RESTORE_ANYWAY = "android.app.backup.extra.LOG_RESTORE_ANYWAY";
1730    field public static final String EXTRA_LOG_RESTORE_VERSION = "android.app.backup.extra.LOG_RESTORE_VERSION";
1731    field public static final String EXTRA_LOG_WIDGET_PACKAGE_NAME = "android.app.backup.extra.LOG_WIDGET_PACKAGE_NAME";
1732    field public static final int LOG_EVENT_CATEGORY_AGENT = 2; // 0x2
1733    field public static final int LOG_EVENT_CATEGORY_BACKUP_MANAGER_POLICY = 3; // 0x3
1734    field public static final int LOG_EVENT_CATEGORY_TRANSPORT = 1; // 0x1
1735    field public static final int LOG_EVENT_ID_AGENT_LOGGING_RESULTS = 52; // 0x34
1736    field public static final int LOG_EVENT_ID_APK_NOT_INSTALLED = 40; // 0x28
1737    field public static final int LOG_EVENT_ID_APP_HAS_NO_AGENT = 28; // 0x1c
1738    field public static final int LOG_EVENT_ID_BACKUP_DISABLED = 13; // 0xd
1739    field public static final int LOG_EVENT_ID_CANNOT_RESTORE_WITHOUT_APK = 41; // 0x29
1740    field public static final int LOG_EVENT_ID_CANT_FIND_AGENT = 30; // 0x1e
1741    field public static final int LOG_EVENT_ID_CORRUPT_MANIFEST = 46; // 0x2e
1742    field public static final int LOG_EVENT_ID_DEVICE_NOT_PROVISIONED = 14; // 0xe
1743    field public static final int LOG_EVENT_ID_ERROR_PREFLIGHT = 16; // 0x10
1744    field public static final int LOG_EVENT_ID_EXCEPTION_FULL_BACKUP = 19; // 0x13
1745    field public static final int LOG_EVENT_ID_EXPECTED_DIFFERENT_PACKAGE = 43; // 0x2b
1746    field public static final int LOG_EVENT_ID_FULL_BACKUP_CANCEL = 4; // 0x4
1747    field public static final int LOG_EVENT_ID_FULL_RESTORE_ALLOW_BACKUP_FALSE = 39; // 0x27
1748    field public static final int LOG_EVENT_ID_FULL_RESTORE_SIGNATURE_MISMATCH = 37; // 0x25
1749    field public static final int LOG_EVENT_ID_FULL_RESTORE_TIMEOUT = 45; // 0x2d
1750    field public static final int LOG_EVENT_ID_ILLEGAL_KEY = 5; // 0x5
1751    field public static final int LOG_EVENT_ID_KEY_VALUE_BACKUP_CANCEL = 21; // 0x15
1752    field public static final int LOG_EVENT_ID_KEY_VALUE_RESTORE_TIMEOUT = 31; // 0x1f
1753    field public static final int LOG_EVENT_ID_LOST_TRANSPORT = 25; // 0x19
1754    field public static final int LOG_EVENT_ID_MISSING_SIGNATURE = 42; // 0x2a
1755    field public static final int LOG_EVENT_ID_NO_DATA_TO_SEND = 7; // 0x7
1756    field public static final int LOG_EVENT_ID_NO_PACKAGES = 49; // 0x31
1757    field public static final int LOG_EVENT_ID_NO_PM_METADATA_RECEIVED = 23; // 0x17
1758    field public static final int LOG_EVENT_ID_NO_RESTORE_METADATA_AVAILABLE = 22; // 0x16
1759    field public static final int LOG_EVENT_ID_PACKAGE_INELIGIBLE = 9; // 0x9
1760    field public static final int LOG_EVENT_ID_PACKAGE_KEY_VALUE_PARTICIPANT = 10; // 0xa
1761    field public static final int LOG_EVENT_ID_PACKAGE_NOT_FOUND = 12; // 0xc
1762    field public static final int LOG_EVENT_ID_PACKAGE_NOT_PRESENT = 26; // 0x1a
1763    field public static final int LOG_EVENT_ID_PACKAGE_STOPPED = 11; // 0xb
1764    field public static final int LOG_EVENT_ID_PACKAGE_TRANSPORT_NOT_PRESENT = 15; // 0xf
1765    field public static final int LOG_EVENT_ID_PM_AGENT_HAS_NO_METADATA = 24; // 0x18
1766    field public static final int LOG_EVENT_ID_QUOTA_HIT_PREFLIGHT = 18; // 0x12
1767    field public static final int LOG_EVENT_ID_RESTORE_ANY_VERSION = 34; // 0x22
1768    field public static final int LOG_EVENT_ID_RESTORE_VERSION_HIGHER = 27; // 0x1b
1769    field public static final int LOG_EVENT_ID_SIGNATURE_MISMATCH = 29; // 0x1d
1770    field public static final int LOG_EVENT_ID_SYSTEM_APP_NO_AGENT = 38; // 0x26
1771    field public static final int LOG_EVENT_ID_TRANSPORT_IS_NULL = 50; // 0x32
1772    field public static final int LOG_EVENT_ID_TRANSPORT_NON_INCREMENTAL_BACKUP_REQUIRED = 51; // 0x33
1773    field public static final int LOG_EVENT_ID_UNKNOWN_VERSION = 44; // 0x2c
1774    field public static final int LOG_EVENT_ID_VERSIONS_MATCH = 35; // 0x23
1775    field public static final int LOG_EVENT_ID_VERSION_OF_BACKUP_OLDER = 36; // 0x24
1776    field public static final int LOG_EVENT_ID_WIDGET_METADATA_MISMATCH = 47; // 0x2f
1777    field public static final int LOG_EVENT_ID_WIDGET_UNKNOWN_VERSION = 48; // 0x30
1778  }
1779
1780  public abstract class BackupObserver {
1781    ctor public BackupObserver();
1782    method public void backupFinished(int);
1783    method public void onResult(String, int);
1784    method public void onUpdate(String, android.app.backup.BackupProgress);
1785  }
1786
1787  public class BackupProgress implements android.os.Parcelable {
1788    ctor public BackupProgress(long, long);
1789    method public int describeContents();
1790    method public void writeToParcel(android.os.Parcel, int);
1791    field @NonNull public static final android.os.Parcelable.Creator<android.app.backup.BackupProgress> CREATOR;
1792    field public final long bytesExpected;
1793    field public final long bytesTransferred;
1794  }
1795
1796  public final class BackupRestoreEventLogger {
1797    method public void logBackupMetadata(@NonNull String, @NonNull String);
1798    method public void logItemsBackedUp(@NonNull String, int);
1799    method public void logItemsBackupFailed(@NonNull String, int, @Nullable String);
1800    method public void logItemsRestoreFailed(@NonNull String, int, @Nullable String);
1801    method public void logItemsRestored(@NonNull String, int);
1802    method public void logRestoreMetadata(@NonNull String, @NonNull String);
1803  }
1804
1805  public static final class BackupRestoreEventLogger.DataTypeResult implements android.os.Parcelable {
1806    ctor public BackupRestoreEventLogger.DataTypeResult(@NonNull String);
1807    method public int describeContents();
1808    method @NonNull public String getDataType();
1809    method @NonNull public java.util.Map<java.lang.String,java.lang.Integer> getErrors();
1810    method public int getFailCount();
1811    method @Nullable public byte[] getMetadataHash();
1812    method public int getSuccessCount();
1813    method public void writeToParcel(@NonNull android.os.Parcel, int);
1814    field @NonNull public static final android.os.Parcelable.Creator<android.app.backup.BackupRestoreEventLogger.DataTypeResult> CREATOR;
1815  }
1816
1817  public class BackupTransport {
1818    ctor public BackupTransport();
1819    method public int abortFullRestore();
1820    method public void cancelFullBackup();
1821    method public int checkFullBackupSize(long);
1822    method public int clearBackupData(android.content.pm.PackageInfo);
1823    method public android.content.Intent configurationIntent();
1824    method public String currentDestinationString();
1825    method public android.content.Intent dataManagementIntent();
1826    method @Nullable public CharSequence dataManagementIntentLabel();
1827    method @Deprecated @Nullable public String dataManagementLabel();
1828    method public int finishBackup();
1829    method public void finishRestore();
1830    method public android.app.backup.RestoreSet[] getAvailableRestoreSets();
1831    method @Nullable public android.app.backup.BackupManagerMonitor getBackupManagerMonitor();
1832    method public long getBackupQuota(String, boolean);
1833    method public android.os.IBinder getBinder();
1834    method public long getCurrentRestoreSet();
1835    method public int getNextFullRestoreDataChunk(android.os.ParcelFileDescriptor);
1836    method public int getRestoreData(android.os.ParcelFileDescriptor);
1837    method public int getTransportFlags();
1838    method public int initializeDevice();
1839    method public boolean isAppEligibleForBackup(android.content.pm.PackageInfo, boolean);
1840    method public String name();
1841    method public android.app.backup.RestoreDescription nextRestorePackage();
1842    method public int performBackup(android.content.pm.PackageInfo, android.os.ParcelFileDescriptor, int);
1843    method public int performBackup(android.content.pm.PackageInfo, android.os.ParcelFileDescriptor);
1844    method public int performFullBackup(android.content.pm.PackageInfo, android.os.ParcelFileDescriptor, int);
1845    method public int performFullBackup(android.content.pm.PackageInfo, android.os.ParcelFileDescriptor);
1846    method public long requestBackupTime();
1847    method public long requestFullBackupTime();
1848    method public int sendBackupData(int);
1849    method public int startRestore(long, android.content.pm.PackageInfo[]);
1850    method public String transportDirName();
1851    field public static final int AGENT_ERROR = -1003; // 0xfffffc15
1852    field public static final int AGENT_UNKNOWN = -1004; // 0xfffffc14
1853    field public static final String EXTRA_TRANSPORT_REGISTRATION = "android.app.backup.extra.TRANSPORT_REGISTRATION";
1854    field public static final int FLAG_DATA_NOT_CHANGED = 8; // 0x8
1855    field public static final int FLAG_INCREMENTAL = 2; // 0x2
1856    field public static final int FLAG_NON_INCREMENTAL = 4; // 0x4
1857    field public static final int FLAG_USER_INITIATED = 1; // 0x1
1858    field public static final int NO_MORE_DATA = -1; // 0xffffffff
1859    field public static final int TRANSPORT_ERROR = -1000; // 0xfffffc18
1860    field public static final int TRANSPORT_NON_INCREMENTAL_BACKUP_REQUIRED = -1006; // 0xfffffc12
1861    field public static final int TRANSPORT_NOT_INITIALIZED = -1001; // 0xfffffc17
1862    field public static final int TRANSPORT_OK = 0; // 0x0
1863    field public static final int TRANSPORT_PACKAGE_REJECTED = -1002; // 0xfffffc16
1864    field public static final int TRANSPORT_QUOTA_EXCEEDED = -1005; // 0xfffffc13
1865  }
1866
1867  public class RestoreDescription implements android.os.Parcelable {
1868    ctor public RestoreDescription(String, int);
1869    method public int describeContents();
1870    method public int getDataType();
1871    method public String getPackageName();
1872    method public void writeToParcel(android.os.Parcel, int);
1873    field @NonNull public static final android.os.Parcelable.Creator<android.app.backup.RestoreDescription> CREATOR;
1874    field public static final android.app.backup.RestoreDescription NO_MORE_PACKAGES;
1875    field public static final int TYPE_FULL_STREAM = 2; // 0x2
1876    field public static final int TYPE_KEY_VALUE = 1; // 0x1
1877  }
1878
1879  public abstract class RestoreObserver {
1880    method public void restoreSetsAvailable(android.app.backup.RestoreSet[]);
1881  }
1882
1883  public class RestoreSession {
1884    method public void endRestoreSession();
1885    method public int getAvailableRestoreSets(android.app.backup.RestoreObserver, android.app.backup.BackupManagerMonitor);
1886    method public int getAvailableRestoreSets(android.app.backup.RestoreObserver);
1887    method public int restoreAll(long, android.app.backup.RestoreObserver, android.app.backup.BackupManagerMonitor);
1888    method public int restoreAll(long, android.app.backup.RestoreObserver);
1889    method public int restorePackage(String, android.app.backup.RestoreObserver, android.app.backup.BackupManagerMonitor);
1890    method public int restorePackage(String, android.app.backup.RestoreObserver);
1891    method public int restorePackages(long, @Nullable android.app.backup.RestoreObserver, @NonNull java.util.Set<java.lang.String>, @Nullable android.app.backup.BackupManagerMonitor);
1892    method public int restorePackages(long, @Nullable android.app.backup.RestoreObserver, @NonNull java.util.Set<java.lang.String>);
1893  }
1894
1895  public class RestoreSet implements android.os.Parcelable {
1896    ctor public RestoreSet();
1897    ctor public RestoreSet(@Nullable String, @Nullable String, long);
1898    ctor public RestoreSet(@Nullable String, @Nullable String, long, int);
1899    method public int describeContents();
1900    method public void writeToParcel(android.os.Parcel, int);
1901    field @NonNull public static final android.os.Parcelable.Creator<android.app.backup.RestoreSet> CREATOR;
1902    field public final int backupTransportFlags;
1903    field @Nullable public String device;
1904    field @Nullable public String name;
1905    field public long token;
1906  }
1907
1908  public abstract class SelectBackupTransportCallback {
1909    ctor public SelectBackupTransportCallback();
1910    method public void onFailure(int);
1911    method public void onSuccess(String);
1912  }
1913
1914}
1915
1916package android.app.cloudsearch {
1917
1918  public class CloudSearchManager {
1919    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);
1920  }
1921
1922  public static interface CloudSearchManager.CallBack {
1923    method public void onSearchFailed(@NonNull android.app.cloudsearch.SearchRequest, @NonNull android.app.cloudsearch.SearchResponse);
1924    method public void onSearchSucceeded(@NonNull android.app.cloudsearch.SearchRequest, @NonNull android.app.cloudsearch.SearchResponse);
1925  }
1926
1927  public final class SearchRequest implements android.os.Parcelable {
1928    method public int describeContents();
1929    method @NonNull public String getCallerPackageName();
1930    method public float getMaxLatencyMillis();
1931    method @NonNull public String getQuery();
1932    method @NonNull public String getRequestId();
1933    method public int getResultNumber();
1934    method public int getResultOffset();
1935    method @NonNull public android.os.Bundle getSearchConstraints();
1936    method public void writeToParcel(@NonNull android.os.Parcel, int);
1937    field public static final String CONSTRAINT_IS_PRESUBMIT_SUGGESTION = "android.app.cloudsearch.IS_PRESUBMIT_SUGGESTION";
1938    field public static final String CONSTRAINT_SEARCH_PROVIDER_FILTER = "android.app.cloudsearch.SEARCH_PROVIDER_FILTER";
1939    field @NonNull public static final android.os.Parcelable.Creator<android.app.cloudsearch.SearchRequest> CREATOR;
1940  }
1941
1942  public static final class SearchRequest.Builder {
1943    ctor public SearchRequest.Builder(@NonNull String);
1944    method @NonNull public android.app.cloudsearch.SearchRequest build();
1945    method @NonNull public android.app.cloudsearch.SearchRequest.Builder setMaxLatencyMillis(float);
1946    method @NonNull public android.app.cloudsearch.SearchRequest.Builder setQuery(@NonNull String);
1947    method @NonNull public android.app.cloudsearch.SearchRequest.Builder setResultNumber(int);
1948    method @NonNull public android.app.cloudsearch.SearchRequest.Builder setResultOffset(int);
1949    method @NonNull public android.app.cloudsearch.SearchRequest.Builder setSearchConstraints(@Nullable android.os.Bundle);
1950  }
1951
1952  public final class SearchResponse implements android.os.Parcelable {
1953    method public int describeContents();
1954    method @NonNull public java.util.List<android.app.cloudsearch.SearchResult> getSearchResults();
1955    method @NonNull public String getSource();
1956    method public int getStatusCode();
1957    method public void writeToParcel(@NonNull android.os.Parcel, int);
1958    field @NonNull public static final android.os.Parcelable.Creator<android.app.cloudsearch.SearchResponse> CREATOR;
1959    field public static final int SEARCH_STATUS_NO_INTERNET = 2; // 0x2
1960    field public static final int SEARCH_STATUS_OK = 0; // 0x0
1961    field public static final int SEARCH_STATUS_TIME_OUT = 1; // 0x1
1962    field public static final int SEARCH_STATUS_UNKNOWN = -1; // 0xffffffff
1963  }
1964
1965  public static final class SearchResponse.Builder {
1966    ctor public SearchResponse.Builder(int);
1967    method @NonNull public android.app.cloudsearch.SearchResponse build();
1968    method @NonNull public android.app.cloudsearch.SearchResponse.Builder setSearchResults(@NonNull java.util.List<android.app.cloudsearch.SearchResult>);
1969    method @NonNull public android.app.cloudsearch.SearchResponse.Builder setStatusCode(int);
1970  }
1971
1972  public final class SearchResult implements android.os.Parcelable {
1973    method public int describeContents();
1974    method @NonNull public android.os.Bundle getExtraInfos();
1975    method public float getScore();
1976    method @NonNull public String getSnippet();
1977    method @NonNull public String getTitle();
1978    method public void writeToParcel(@NonNull android.os.Parcel, int);
1979    field @NonNull public static final android.os.Parcelable.Creator<android.app.cloudsearch.SearchResult> CREATOR;
1980    field public static final String EXTRAINFO_ACTION_APP_CARD = "android.app.cloudsearch.ACTION_APP_CARD";
1981    field public static final String EXTRAINFO_ACTION_BUTTON_IMAGE_PREREGISTERING = "android.app.cloudsearch.ACTION_BUTTON_IMAGE";
1982    field public static final String EXTRAINFO_ACTION_BUTTON_TEXT_PREREGISTERING = "android.app.cloudsearch.ACTION_BUTTON_TEXT";
1983    field public static final String EXTRAINFO_ACTION_INSTALL_BUTTON = "android.app.cloudsearch.ACTION_INSTALL_BUTTON";
1984    field public static final String EXTRAINFO_APP_BADGES = "android.app.cloudsearch.APP_BADGES";
1985    field public static final String EXTRAINFO_APP_CONTAINS_ADS_DISCLAIMER = "android.app.cloudsearch.APP_CONTAINS_ADS_DISCLAIMER";
1986    field public static final String EXTRAINFO_APP_CONTAINS_IAP_DISCLAIMER = "android.app.cloudsearch.APP_CONTAINS_IAP_DISCLAIMER";
1987    field public static final String EXTRAINFO_APP_DEVELOPER_NAME = "android.app.cloudsearch.APP_DEVELOPER_NAME";
1988    field public static final String EXTRAINFO_APP_DOMAIN_URL = "android.app.cloudsearch.APP_DOMAIN_URL";
1989    field public static final String EXTRAINFO_APP_IARC = "android.app.cloudsearch.APP_IARC";
1990    field public static final String EXTRAINFO_APP_ICON = "android.app.cloudsearch.APP_ICON";
1991    field public static final String EXTRAINFO_APP_INSTALL_COUNT = "android.app.cloudsearch.APP_INSTALL_COUNT";
1992    field public static final String EXTRAINFO_APP_PACKAGE_NAME = "android.app.cloudsearch.APP_PACKAGE_NAME";
1993    field public static final String EXTRAINFO_APP_REVIEW_COUNT = "android.app.cloudsearch.APP_REVIEW_COUNT";
1994    field public static final String EXTRAINFO_APP_SIZE_BYTES = "android.app.cloudsearch.APP_SIZE_BYTES";
1995    field public static final String EXTRAINFO_APP_STAR_RATING = "android.app.cloudsearch.APP_STAR_RATING";
1996    field public static final String EXTRAINFO_LONG_DESCRIPTION = "android.app.cloudsearch.LONG_DESCRIPTION";
1997    field public static final String EXTRAINFO_SCREENSHOTS = "android.app.cloudsearch.SCREENSHOTS";
1998    field public static final String EXTRAINFO_SHORT_DESCRIPTION = "android.app.cloudsearch.SHORT_DESCRIPTION";
1999    field public static final String EXTRAINFO_WEB_ICON = "android.app.cloudsearch.WEB_ICON";
2000    field public static final String EXTRAINFO_WEB_URL = "android.app.cloudsearch.WEB_URL";
2001  }
2002
2003  public static final class SearchResult.Builder {
2004    ctor public SearchResult.Builder(@NonNull String, @NonNull android.os.Bundle);
2005    method @NonNull public android.app.cloudsearch.SearchResult build();
2006    method @NonNull public android.app.cloudsearch.SearchResult.Builder setExtraInfos(@NonNull android.os.Bundle);
2007    method @NonNull public android.app.cloudsearch.SearchResult.Builder setScore(float);
2008    method @NonNull public android.app.cloudsearch.SearchResult.Builder setSnippet(@NonNull String);
2009    method @NonNull public android.app.cloudsearch.SearchResult.Builder setTitle(@NonNull String);
2010  }
2011
2012}
2013
2014package android.app.compat {
2015
2016  public final class CompatChanges {
2017    method public static boolean isChangeEnabled(long);
2018    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);
2019    method @RequiresPermission(allOf={"android.permission.READ_COMPAT_CHANGE_CONFIG", "android.permission.LOG_COMPAT_CHANGE"}) public static boolean isChangeEnabled(long, int);
2020    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>>);
2021    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>);
2022    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>>);
2023    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>);
2024  }
2025
2026  public final class PackageOverride {
2027    method public long getMaxVersionCode();
2028    method public long getMinVersionCode();
2029    method public boolean isEnabled();
2030  }
2031
2032  public static final class PackageOverride.Builder {
2033    ctor public PackageOverride.Builder();
2034    method @NonNull public android.app.compat.PackageOverride build();
2035    method @NonNull public android.app.compat.PackageOverride.Builder setEnabled(boolean);
2036    method @NonNull public android.app.compat.PackageOverride.Builder setMaxVersionCode(long);
2037    method @NonNull public android.app.compat.PackageOverride.Builder setMinVersionCode(long);
2038  }
2039
2040}
2041
2042package android.app.contentsuggestions {
2043
2044  public final class ClassificationsRequest implements android.os.Parcelable {
2045    method public int describeContents();
2046    method @NonNull public android.os.Bundle getExtras();
2047    method @NonNull public java.util.List<android.app.contentsuggestions.ContentSelection> getSelections();
2048    method public void writeToParcel(android.os.Parcel, int);
2049    field @NonNull public static final android.os.Parcelable.Creator<android.app.contentsuggestions.ClassificationsRequest> CREATOR;
2050  }
2051
2052  public static final class ClassificationsRequest.Builder {
2053    ctor public ClassificationsRequest.Builder(@NonNull java.util.List<android.app.contentsuggestions.ContentSelection>);
2054    method @NonNull public android.app.contentsuggestions.ClassificationsRequest build();
2055    method @NonNull public android.app.contentsuggestions.ClassificationsRequest.Builder setExtras(@NonNull android.os.Bundle);
2056  }
2057
2058  public final class ContentClassification implements android.os.Parcelable {
2059    ctor public ContentClassification(@NonNull String, @NonNull android.os.Bundle);
2060    method public int describeContents();
2061    method @NonNull public android.os.Bundle getExtras();
2062    method @NonNull public String getId();
2063    method public void writeToParcel(android.os.Parcel, int);
2064    field @NonNull public static final android.os.Parcelable.Creator<android.app.contentsuggestions.ContentClassification> CREATOR;
2065  }
2066
2067  public final class ContentSelection implements android.os.Parcelable {
2068    ctor public ContentSelection(@NonNull String, @NonNull android.os.Bundle);
2069    method public int describeContents();
2070    method @NonNull public android.os.Bundle getExtras();
2071    method @NonNull public String getId();
2072    method public void writeToParcel(android.os.Parcel, int);
2073    field @NonNull public static final android.os.Parcelable.Creator<android.app.contentsuggestions.ContentSelection> CREATOR;
2074  }
2075
2076  public final class ContentSuggestionsManager {
2077    method public void classifyContentSelections(@NonNull android.app.contentsuggestions.ClassificationsRequest, @NonNull java.util.concurrent.Executor, @NonNull android.app.contentsuggestions.ContentSuggestionsManager.ClassificationsCallback);
2078    method public boolean isEnabled();
2079    method public void notifyInteraction(@NonNull String, @NonNull android.os.Bundle);
2080    method public void provideContextImage(@NonNull android.graphics.Bitmap, @NonNull android.os.Bundle);
2081    method public void provideContextImage(int, @NonNull android.os.Bundle);
2082    method public void suggestContentSelections(@NonNull android.app.contentsuggestions.SelectionsRequest, @NonNull java.util.concurrent.Executor, @NonNull android.app.contentsuggestions.ContentSuggestionsManager.SelectionsCallback);
2083  }
2084
2085  public static interface ContentSuggestionsManager.ClassificationsCallback {
2086    method public void onContentClassificationsAvailable(int, @NonNull java.util.List<android.app.contentsuggestions.ContentClassification>);
2087  }
2088
2089  public static interface ContentSuggestionsManager.SelectionsCallback {
2090    method public void onContentSelectionsAvailable(int, @NonNull java.util.List<android.app.contentsuggestions.ContentSelection>);
2091  }
2092
2093  public final class SelectionsRequest implements android.os.Parcelable {
2094    method public int describeContents();
2095    method @NonNull public android.os.Bundle getExtras();
2096    method @Nullable public android.graphics.Point getInterestPoint();
2097    method public int getTaskId();
2098    method public void writeToParcel(android.os.Parcel, int);
2099    field @NonNull public static final android.os.Parcelable.Creator<android.app.contentsuggestions.SelectionsRequest> CREATOR;
2100  }
2101
2102  public static final class SelectionsRequest.Builder {
2103    ctor public SelectionsRequest.Builder(int);
2104    method @NonNull public android.app.contentsuggestions.SelectionsRequest build();
2105    method @NonNull public android.app.contentsuggestions.SelectionsRequest.Builder setExtras(@NonNull android.os.Bundle);
2106    method @NonNull public android.app.contentsuggestions.SelectionsRequest.Builder setInterestPoint(@NonNull android.graphics.Point);
2107  }
2108
2109}
2110
2111package android.app.job {
2112
2113  public abstract class JobScheduler {
2114    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public abstract int scheduleAsPackage(@NonNull android.app.job.JobInfo, @NonNull String, int, String);
2115  }
2116
2117  public class JobSchedulerFrameworkInitializer {
2118    method public static void registerServiceWrappers();
2119  }
2120
2121}
2122
2123package android.app.people {
2124
2125  public final class PeopleManager {
2126    method @RequiresPermission(android.Manifest.permission.READ_PEOPLE_DATA) public boolean isConversation(@NonNull String, @NonNull String);
2127  }
2128
2129}
2130
2131package android.app.prediction {
2132
2133  public final class AppPredictionContext implements android.os.Parcelable {
2134    method public int describeContents();
2135    method @Nullable public android.os.Bundle getExtras();
2136    method @NonNull public String getPackageName();
2137    method @IntRange(from=0) public int getPredictedTargetCount();
2138    method @NonNull public String getUiSurface();
2139    method public void writeToParcel(@NonNull android.os.Parcel, int);
2140    field @NonNull public static final android.os.Parcelable.Creator<android.app.prediction.AppPredictionContext> CREATOR;
2141  }
2142
2143  public static final class AppPredictionContext.Builder {
2144    ctor public AppPredictionContext.Builder(@NonNull android.content.Context);
2145    method @NonNull public android.app.prediction.AppPredictionContext build();
2146    method @NonNull public android.app.prediction.AppPredictionContext.Builder setExtras(@Nullable android.os.Bundle);
2147    method @NonNull public android.app.prediction.AppPredictionContext.Builder setPredictedTargetCount(@IntRange(from=0) int);
2148    method @NonNull public android.app.prediction.AppPredictionContext.Builder setUiSurface(@NonNull String);
2149  }
2150
2151  public final class AppPredictionManager {
2152    method @NonNull public android.app.prediction.AppPredictor createAppPredictionSession(@NonNull android.app.prediction.AppPredictionContext);
2153  }
2154
2155  public final class AppPredictionSessionId implements android.os.Parcelable {
2156    method public int describeContents();
2157    method public void writeToParcel(android.os.Parcel, int);
2158    field @NonNull public static final android.os.Parcelable.Creator<android.app.prediction.AppPredictionSessionId> CREATOR;
2159  }
2160
2161  public final class AppPredictor {
2162    method public void destroy();
2163    method public void notifyAppTargetEvent(@NonNull android.app.prediction.AppTargetEvent);
2164    method public void notifyLaunchLocationShown(@NonNull String, @NonNull java.util.List<android.app.prediction.AppTargetId>);
2165    method public void registerPredictionUpdates(@NonNull java.util.concurrent.Executor, @NonNull android.app.prediction.AppPredictor.Callback);
2166    method public void requestPredictionUpdate();
2167    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>>);
2168    method public void unregisterPredictionUpdates(@NonNull android.app.prediction.AppPredictor.Callback);
2169  }
2170
2171  public static interface AppPredictor.Callback {
2172    method public void onTargetsAvailable(@NonNull java.util.List<android.app.prediction.AppTarget>);
2173  }
2174
2175  public final class AppTarget implements android.os.Parcelable {
2176    method public int describeContents();
2177    method @Nullable public String getClassName();
2178    method @NonNull public android.app.prediction.AppTargetId getId();
2179    method @NonNull public String getPackageName();
2180    method @IntRange(from=0) public int getRank();
2181    method @Nullable public android.content.pm.ShortcutInfo getShortcutInfo();
2182    method @NonNull public android.os.UserHandle getUser();
2183    method public void writeToParcel(android.os.Parcel, int);
2184    field @NonNull public static final android.os.Parcelable.Creator<android.app.prediction.AppTarget> CREATOR;
2185  }
2186
2187  public static final class AppTarget.Builder {
2188    ctor public AppTarget.Builder(@NonNull android.app.prediction.AppTargetId, @NonNull String, @NonNull android.os.UserHandle);
2189    ctor public AppTarget.Builder(@NonNull android.app.prediction.AppTargetId, @NonNull android.content.pm.ShortcutInfo);
2190    method @NonNull public android.app.prediction.AppTarget build();
2191    method @NonNull public android.app.prediction.AppTarget.Builder setClassName(@NonNull String);
2192    method @NonNull public android.app.prediction.AppTarget.Builder setRank(@IntRange(from=0) int);
2193  }
2194
2195  public final class AppTargetEvent implements android.os.Parcelable {
2196    method public int describeContents();
2197    method public int getAction();
2198    method @Nullable public String getLaunchLocation();
2199    method @Nullable public android.app.prediction.AppTarget getTarget();
2200    method public void writeToParcel(android.os.Parcel, int);
2201    field public static final int ACTION_DISMISS = 2; // 0x2
2202    field public static final int ACTION_LAUNCH = 1; // 0x1
2203    field public static final int ACTION_PIN = 3; // 0x3
2204    field public static final int ACTION_UNDISMISS = 5; // 0x5
2205    field public static final int ACTION_UNPIN = 4; // 0x4
2206    field @NonNull public static final android.os.Parcelable.Creator<android.app.prediction.AppTargetEvent> CREATOR;
2207  }
2208
2209  public static final class AppTargetEvent.Builder {
2210    ctor public AppTargetEvent.Builder(@Nullable android.app.prediction.AppTarget, int);
2211    method @NonNull public android.app.prediction.AppTargetEvent build();
2212    method @NonNull public android.app.prediction.AppTargetEvent.Builder setLaunchLocation(@Nullable String);
2213  }
2214
2215  public final class AppTargetId implements android.os.Parcelable {
2216    ctor public AppTargetId(@NonNull String);
2217    method public int describeContents();
2218    method public void writeToParcel(android.os.Parcel, int);
2219    field @NonNull public static final android.os.Parcelable.Creator<android.app.prediction.AppTargetId> CREATOR;
2220  }
2221
2222}
2223
2224package android.app.search {
2225
2226  public final class Query implements android.os.Parcelable {
2227    ctor public Query(@NonNull String, long, @NonNull android.os.Bundle);
2228    ctor public Query(@NonNull String, long);
2229    method public int describeContents();
2230    method @NonNull public android.os.Bundle getExtras();
2231    method @NonNull public String getInput();
2232    method public long getTimestampMillis();
2233    method public void writeToParcel(@NonNull android.os.Parcel, int);
2234    field @NonNull public static final android.os.Parcelable.Creator<android.app.search.Query> CREATOR;
2235    field public static final String EXTRA_IME_HEIGHT = "android.app.search.extra.IME_HEIGHT";
2236  }
2237
2238  public final class SearchAction implements android.os.Parcelable {
2239    method public int describeContents();
2240    method @Nullable public CharSequence getContentDescription();
2241    method @Nullable public android.os.Bundle getExtras();
2242    method @Nullable public android.graphics.drawable.Icon getIcon();
2243    method @NonNull public String getId();
2244    method @Nullable public android.content.Intent getIntent();
2245    method @Nullable public android.app.PendingIntent getPendingIntent();
2246    method @Nullable public CharSequence getSubtitle();
2247    method @NonNull public CharSequence getTitle();
2248    method @Nullable public android.os.UserHandle getUserHandle();
2249    method public void writeToParcel(@NonNull android.os.Parcel, int);
2250    field @NonNull public static final android.os.Parcelable.Creator<android.app.search.SearchAction> CREATOR;
2251  }
2252
2253  public static final class SearchAction.Builder {
2254    ctor public SearchAction.Builder(@NonNull String, @NonNull String);
2255    method @NonNull public android.app.search.SearchAction build();
2256    method @NonNull public android.app.search.SearchAction.Builder setContentDescription(@Nullable CharSequence);
2257    method @NonNull public android.app.search.SearchAction.Builder setExtras(@Nullable android.os.Bundle);
2258    method @NonNull public android.app.search.SearchAction.Builder setIcon(@Nullable android.graphics.drawable.Icon);
2259    method @NonNull public android.app.search.SearchAction.Builder setIntent(@Nullable android.content.Intent);
2260    method @NonNull public android.app.search.SearchAction.Builder setPendingIntent(@Nullable android.app.PendingIntent);
2261    method @NonNull public android.app.search.SearchAction.Builder setSubtitle(@Nullable CharSequence);
2262    method @NonNull public android.app.search.SearchAction.Builder setUserHandle(@Nullable android.os.UserHandle);
2263  }
2264
2265  public final class SearchContext implements android.os.Parcelable {
2266    ctor public SearchContext(int, int);
2267    ctor public SearchContext(int, int, @NonNull android.os.Bundle);
2268    method public int describeContents();
2269    method @NonNull public android.os.Bundle getExtras();
2270    method @Nullable public String getPackageName();
2271    method @NonNull public int getResultTypes();
2272    method @NonNull public int getTimeoutMillis();
2273    method public void writeToParcel(@NonNull android.os.Parcel, int);
2274    field @NonNull public static final android.os.Parcelable.Creator<android.app.search.SearchContext> CREATOR;
2275  }
2276
2277  public final class SearchSession implements java.lang.AutoCloseable {
2278    method public void close();
2279    method protected void finalize();
2280    method public void notifyEvent(@NonNull android.app.search.Query, @NonNull android.app.search.SearchTargetEvent);
2281    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>>);
2282    method public void registerEmptyQueryResultUpdateCallback(@NonNull java.util.concurrent.Executor, @NonNull android.app.search.SearchSession.Callback);
2283    method public void unregisterEmptyQueryResultUpdateCallback(@NonNull android.app.search.SearchSession.Callback);
2284  }
2285
2286  public static interface SearchSession.Callback {
2287    method public void onTargetsAvailable(@NonNull java.util.List<android.app.search.SearchTarget>);
2288  }
2289
2290  public final class SearchSessionId implements android.os.Parcelable {
2291    method public int describeContents();
2292    method public void writeToParcel(@NonNull android.os.Parcel, int);
2293    field @NonNull public static final android.os.Parcelable.Creator<android.app.search.SearchSessionId> CREATOR;
2294  }
2295
2296  public final class SearchTarget implements android.os.Parcelable {
2297    method public int describeContents();
2298    method @Nullable public android.appwidget.AppWidgetProviderInfo getAppWidgetProviderInfo();
2299    method @NonNull public android.os.Bundle getExtras();
2300    method @NonNull public String getId();
2301    method @NonNull public String getLayoutType();
2302    method @NonNull public String getPackageName();
2303    method @NonNull public String getParentId();
2304    method public int getResultType();
2305    method public float getScore();
2306    method @Nullable public android.app.search.SearchAction getSearchAction();
2307    method @Nullable public android.content.pm.ShortcutInfo getShortcutInfo();
2308    method @Nullable public android.net.Uri getSliceUri();
2309    method @NonNull public android.os.UserHandle getUserHandle();
2310    method public boolean isHidden();
2311    method public void writeToParcel(@NonNull android.os.Parcel, int);
2312    field @NonNull public static final android.os.Parcelable.Creator<android.app.search.SearchTarget> CREATOR;
2313    field public static final String LAYOUT_TYPE_ICON = "icon";
2314    field public static final String LAYOUT_TYPE_ICON_ROW = "icon_row";
2315    field public static final String LAYOUT_TYPE_SHORT_ICON_ROW = "short_icon_row";
2316    field public static final int RESULT_TYPE_APPLICATION = 1; // 0x1
2317    field public static final int RESULT_TYPE_SHORTCUT = 2; // 0x2
2318    field public static final int RESULT_TYPE_SLICE = 4; // 0x4
2319    field public static final int RESULT_TYPE_WIDGETS = 8; // 0x8
2320  }
2321
2322  public static final class SearchTarget.Builder {
2323    ctor public SearchTarget.Builder(int, @NonNull String, @NonNull String);
2324    method @NonNull public android.app.search.SearchTarget build();
2325    method @NonNull public android.app.search.SearchTarget.Builder setAppWidgetProviderInfo(@NonNull android.appwidget.AppWidgetProviderInfo);
2326    method @NonNull public android.app.search.SearchTarget.Builder setExtras(@NonNull android.os.Bundle);
2327    method @NonNull public android.app.search.SearchTarget.Builder setHidden(boolean);
2328    method @NonNull public android.app.search.SearchTarget.Builder setPackageName(@NonNull String);
2329    method @NonNull public android.app.search.SearchTarget.Builder setParentId(@NonNull String);
2330    method @NonNull public android.app.search.SearchTarget.Builder setScore(@FloatRange(from=0.0f, to=1.0f) float);
2331    method @NonNull public android.app.search.SearchTarget.Builder setSearchAction(@Nullable android.app.search.SearchAction);
2332    method @NonNull public android.app.search.SearchTarget.Builder setShortcutInfo(@NonNull android.content.pm.ShortcutInfo);
2333    method @NonNull public android.app.search.SearchTarget.Builder setSliceUri(@NonNull android.net.Uri);
2334    method @NonNull public android.app.search.SearchTarget.Builder setUserHandle(@NonNull android.os.UserHandle);
2335  }
2336
2337  public final class SearchTargetEvent implements android.os.Parcelable {
2338    method public int describeContents();
2339    method public int getAction();
2340    method public int getFlags();
2341    method @Nullable public String getLaunchLocation();
2342    method @NonNull public String getTargetId();
2343    method @NonNull public java.util.List<java.lang.String> getTargetIds();
2344    method public void writeToParcel(@NonNull android.os.Parcel, int);
2345    field public static final int ACTION_DELETE = 9; // 0x9
2346    field public static final int ACTION_DISMISS = 10; // 0xa
2347    field public static final int ACTION_DRAGNDROP = 7; // 0x7
2348    field public static final int ACTION_LAUNCH_KEYBOARD_FOCUS = 6; // 0x6
2349    field public static final int ACTION_LAUNCH_TOUCH = 5; // 0x5
2350    field public static final int ACTION_LONGPRESS = 4; // 0x4
2351    field public static final int ACTION_SURFACE_INVISIBLE = 8; // 0x8
2352    field public static final int ACTION_SURFACE_VISIBLE = 1; // 0x1
2353    field public static final int ACTION_TAP = 3; // 0x3
2354    field @NonNull public static final android.os.Parcelable.Creator<android.app.search.SearchTargetEvent> CREATOR;
2355    field public static final int FLAG_IME_SHOWN = 1; // 0x1
2356  }
2357
2358  public static final class SearchTargetEvent.Builder {
2359    ctor public SearchTargetEvent.Builder(@NonNull String, int);
2360    ctor public SearchTargetEvent.Builder(@NonNull java.util.List<java.lang.String>, int);
2361    method @NonNull public android.app.search.SearchTargetEvent build();
2362    method @NonNull public android.app.search.SearchTargetEvent.Builder setFlags(int);
2363    method @NonNull public android.app.search.SearchTargetEvent.Builder setLaunchLocation(@Nullable String);
2364  }
2365
2366  public final class SearchUiManager {
2367    method @NonNull public android.app.search.SearchSession createSearchSession(@NonNull android.app.search.SearchContext);
2368  }
2369
2370}
2371
2372package android.app.smartspace {
2373
2374  public final class SmartspaceAction implements android.os.Parcelable {
2375    method public int describeContents();
2376    method @Nullable public CharSequence getContentDescription();
2377    method @Nullable public android.os.Bundle getExtras();
2378    method @Nullable public android.graphics.drawable.Icon getIcon();
2379    method @NonNull public String getId();
2380    method @Nullable public android.content.Intent getIntent();
2381    method @Nullable public android.app.PendingIntent getPendingIntent();
2382    method @Nullable public CharSequence getSubtitle();
2383    method @NonNull public CharSequence getTitle();
2384    method @Nullable public android.os.UserHandle getUserHandle();
2385    method public void writeToParcel(@NonNull android.os.Parcel, int);
2386    field @NonNull public static final android.os.Parcelable.Creator<android.app.smartspace.SmartspaceAction> CREATOR;
2387  }
2388
2389  public static final class SmartspaceAction.Builder {
2390    ctor public SmartspaceAction.Builder(@NonNull String, @NonNull String);
2391    method @NonNull public android.app.smartspace.SmartspaceAction build();
2392    method @NonNull public android.app.smartspace.SmartspaceAction.Builder setContentDescription(@Nullable CharSequence);
2393    method @NonNull public android.app.smartspace.SmartspaceAction.Builder setExtras(@Nullable android.os.Bundle);
2394    method @NonNull public android.app.smartspace.SmartspaceAction.Builder setIcon(@Nullable android.graphics.drawable.Icon);
2395    method @NonNull public android.app.smartspace.SmartspaceAction.Builder setIntent(@Nullable android.content.Intent);
2396    method @NonNull public android.app.smartspace.SmartspaceAction.Builder setPendingIntent(@Nullable android.app.PendingIntent);
2397    method @NonNull public android.app.smartspace.SmartspaceAction.Builder setSubtitle(@Nullable CharSequence);
2398    method @NonNull public android.app.smartspace.SmartspaceAction.Builder setUserHandle(@Nullable android.os.UserHandle);
2399  }
2400
2401  public final class SmartspaceConfig implements android.os.Parcelable {
2402    method public int describeContents();
2403    method @Nullable public android.os.Bundle getExtras();
2404    method @NonNull public String getPackageName();
2405    method @NonNull public int getSmartspaceTargetCount();
2406    method @NonNull public String getUiSurface();
2407    method public void writeToParcel(@NonNull android.os.Parcel, int);
2408    field @NonNull public static final android.os.Parcelable.Creator<android.app.smartspace.SmartspaceConfig> CREATOR;
2409  }
2410
2411  public static final class SmartspaceConfig.Builder {
2412    ctor public SmartspaceConfig.Builder(@NonNull android.content.Context, @NonNull String);
2413    method @NonNull public android.app.smartspace.SmartspaceConfig build();
2414    method @NonNull public android.app.smartspace.SmartspaceConfig.Builder setExtras(@NonNull android.os.Bundle);
2415    method @NonNull public android.app.smartspace.SmartspaceConfig.Builder setSmartspaceTargetCount(@IntRange(from=0, to=50) int);
2416  }
2417
2418  public final class SmartspaceManager {
2419    method @NonNull public android.app.smartspace.SmartspaceSession createSmartspaceSession(@NonNull android.app.smartspace.SmartspaceConfig);
2420  }
2421
2422  public final class SmartspaceSession implements java.lang.AutoCloseable {
2423    method public void addOnTargetsAvailableListener(@NonNull java.util.concurrent.Executor, @NonNull android.app.smartspace.SmartspaceSession.OnTargetsAvailableListener);
2424    method public void close();
2425    method protected void finalize();
2426    method public void notifySmartspaceEvent(@NonNull android.app.smartspace.SmartspaceTargetEvent);
2427    method public void removeOnTargetsAvailableListener(@NonNull android.app.smartspace.SmartspaceSession.OnTargetsAvailableListener);
2428    method public void requestSmartspaceUpdate();
2429  }
2430
2431  public static interface SmartspaceSession.OnTargetsAvailableListener {
2432    method public void onTargetsAvailable(@NonNull java.util.List<android.app.smartspace.SmartspaceTarget>);
2433  }
2434
2435  public final class SmartspaceSessionId implements android.os.Parcelable {
2436    method public int describeContents();
2437    method @Nullable public String getId();
2438    method @NonNull public android.os.UserHandle getUserHandle();
2439    method public void writeToParcel(@NonNull android.os.Parcel, int);
2440    field @NonNull public static final android.os.Parcelable.Creator<android.app.smartspace.SmartspaceSessionId> CREATOR;
2441  }
2442
2443  public final class SmartspaceTarget implements android.os.Parcelable {
2444    method public int describeContents();
2445    method @NonNull public java.util.List<android.app.smartspace.SmartspaceAction> getActionChips();
2446    method @Nullable public String getAssociatedSmartspaceTargetId();
2447    method @Nullable public android.app.smartspace.SmartspaceAction getBaseAction();
2448    method @NonNull public android.content.ComponentName getComponentName();
2449    method public long getCreationTimeMillis();
2450    method public long getExpiryTimeMillis();
2451    method public int getFeatureType();
2452    method @Nullable public android.app.smartspace.SmartspaceAction getHeaderAction();
2453    method @NonNull public java.util.List<android.app.smartspace.SmartspaceAction> getIconGrid();
2454    method public float getScore();
2455    method @Nullable public android.net.Uri getSliceUri();
2456    method @NonNull public String getSmartspaceTargetId();
2457    method @Nullable public String getSourceNotificationKey();
2458    method @Nullable public android.app.smartspace.uitemplatedata.BaseTemplateData getTemplateData();
2459    method @NonNull public android.os.UserHandle getUserHandle();
2460    method @Nullable public android.appwidget.AppWidgetProviderInfo getWidget();
2461    method public boolean isSensitive();
2462    method public boolean shouldShowExpanded();
2463    method public void writeToParcel(@NonNull android.os.Parcel, int);
2464    field @NonNull public static final android.os.Parcelable.Creator<android.app.smartspace.SmartspaceTarget> CREATOR;
2465    field public static final int FEATURE_ALARM = 7; // 0x7
2466    field public static final int FEATURE_BEDTIME_ROUTINE = 16; // 0x10
2467    field public static final int FEATURE_BLAZE_BUILD_PROGRESS = 40; // 0x28
2468    field public static final int FEATURE_CALENDAR = 2; // 0x2
2469    field public static final int FEATURE_COMMUTE_TIME = 3; // 0x3
2470    field public static final int FEATURE_CONSENT = 11; // 0xb
2471    field public static final int FEATURE_CROSS_DEVICE_TIMER = 32; // 0x20
2472    field public static final int FEATURE_DOORBELL = 30; // 0x1e
2473    field public static final int FEATURE_DRIVING_MODE = 26; // 0x1a
2474    field public static final int FEATURE_EARTHQUAKE_ALERT = 38; // 0x26
2475    field public static final int FEATURE_EARTHQUAKE_OCCURRED = 41; // 0x29
2476    field public static final int FEATURE_ETA_MONITORING = 18; // 0x12
2477    field public static final int FEATURE_FITNESS_TRACKING = 17; // 0x11
2478    field public static final int FEATURE_FLASHLIGHT = 28; // 0x1c
2479    field public static final int FEATURE_FLIGHT = 4; // 0x4
2480    field public static final int FEATURE_GAS_STATION_PAYMENT = 24; // 0x18
2481    field public static final int FEATURE_HOLIDAY_ALARM = 34; // 0x22
2482    field public static final int FEATURE_LOYALTY_CARD = 14; // 0xe
2483    field public static final int FEATURE_MEDIA = 15; // 0xf
2484    field public static final int FEATURE_MEDIA_HEADS_UP = 36; // 0x24
2485    field public static final int FEATURE_MEDIA_RESUME = 31; // 0x1f
2486    field public static final int FEATURE_MISSED_CALL = 19; // 0x13
2487    field public static final int FEATURE_ONBOARDING = 8; // 0x8
2488    field public static final int FEATURE_PACKAGE_TRACKING = 20; // 0x14
2489    field public static final int FEATURE_PAIRED_DEVICE_STATE = 25; // 0x19
2490    field public static final int FEATURE_REMINDER = 6; // 0x6
2491    field public static final int FEATURE_SAFETY_CHECK = 35; // 0x23
2492    field public static final int FEATURE_SEVERE_WEATHER_ALERT = 33; // 0x21
2493    field public static final int FEATURE_SHOPPING_LIST = 13; // 0xd
2494    field public static final int FEATURE_SLEEP_SUMMARY = 27; // 0x1b
2495    field public static final int FEATURE_SPORTS = 9; // 0x9
2496    field public static final int FEATURE_STEP_COUNTING = 37; // 0x25
2497    field public static final int FEATURE_STEP_DATE = 39; // 0x27
2498    field public static final int FEATURE_STOCK_PRICE_CHANGE = 12; // 0xc
2499    field public static final int FEATURE_STOPWATCH = 22; // 0x16
2500    field public static final int FEATURE_TIMER = 21; // 0x15
2501    field public static final int FEATURE_TIME_TO_LEAVE = 29; // 0x1d
2502    field public static final int FEATURE_TIPS = 5; // 0x5
2503    field public static final int FEATURE_UNDEFINED = 0; // 0x0
2504    field public static final int FEATURE_UPCOMING_ALARM = 23; // 0x17
2505    field public static final int FEATURE_WEATHER = 1; // 0x1
2506    field public static final int FEATURE_WEATHER_ALERT = 10; // 0xa
2507    field public static final int UI_TEMPLATE_CAROUSEL = 4; // 0x4
2508    field public static final int UI_TEMPLATE_COMBINED_CARDS = 6; // 0x6
2509    field public static final int UI_TEMPLATE_DEFAULT = 1; // 0x1
2510    field public static final int UI_TEMPLATE_HEAD_TO_HEAD = 5; // 0x5
2511    field public static final int UI_TEMPLATE_SUB_CARD = 7; // 0x7
2512    field public static final int UI_TEMPLATE_SUB_IMAGE = 2; // 0x2
2513    field public static final int UI_TEMPLATE_SUB_LIST = 3; // 0x3
2514    field public static final int UI_TEMPLATE_UNDEFINED = 0; // 0x0
2515  }
2516
2517  public static final class SmartspaceTarget.Builder {
2518    ctor public SmartspaceTarget.Builder(@NonNull String, @NonNull android.content.ComponentName, @NonNull android.os.UserHandle);
2519    method @NonNull public android.app.smartspace.SmartspaceTarget build();
2520    method @NonNull public android.app.smartspace.SmartspaceTarget.Builder setActionChips(@NonNull java.util.List<android.app.smartspace.SmartspaceAction>);
2521    method @NonNull public android.app.smartspace.SmartspaceTarget.Builder setAssociatedSmartspaceTargetId(@NonNull String);
2522    method @NonNull public android.app.smartspace.SmartspaceTarget.Builder setBaseAction(@NonNull android.app.smartspace.SmartspaceAction);
2523    method @NonNull public android.app.smartspace.SmartspaceTarget.Builder setCreationTimeMillis(long);
2524    method @NonNull public android.app.smartspace.SmartspaceTarget.Builder setExpiryTimeMillis(long);
2525    method @NonNull public android.app.smartspace.SmartspaceTarget.Builder setFeatureType(int);
2526    method @NonNull public android.app.smartspace.SmartspaceTarget.Builder setHeaderAction(@NonNull android.app.smartspace.SmartspaceAction);
2527    method @NonNull public android.app.smartspace.SmartspaceTarget.Builder setIconGrid(@NonNull java.util.List<android.app.smartspace.SmartspaceAction>);
2528    method @NonNull public android.app.smartspace.SmartspaceTarget.Builder setScore(float);
2529    method @NonNull public android.app.smartspace.SmartspaceTarget.Builder setSensitive(boolean);
2530    method @NonNull public android.app.smartspace.SmartspaceTarget.Builder setShouldShowExpanded(boolean);
2531    method @NonNull public android.app.smartspace.SmartspaceTarget.Builder setSliceUri(@NonNull android.net.Uri);
2532    method @NonNull public android.app.smartspace.SmartspaceTarget.Builder setSourceNotificationKey(@NonNull String);
2533    method @NonNull public android.app.smartspace.SmartspaceTarget.Builder setTemplateData(@Nullable android.app.smartspace.uitemplatedata.BaseTemplateData);
2534    method @NonNull public android.app.smartspace.SmartspaceTarget.Builder setWidget(@NonNull android.appwidget.AppWidgetProviderInfo);
2535  }
2536
2537  public final class SmartspaceTargetEvent implements android.os.Parcelable {
2538    method public int describeContents();
2539    method @NonNull public int getEventType();
2540    method @Nullable public String getSmartspaceActionId();
2541    method @Nullable public android.app.smartspace.SmartspaceTarget getSmartspaceTarget();
2542    method public void writeToParcel(@NonNull android.os.Parcel, int);
2543    field @NonNull public static final android.os.Parcelable.Creator<android.app.smartspace.SmartspaceTargetEvent> CREATOR;
2544    field public static final int EVENT_TARGET_BLOCK = 5; // 0x5
2545    field public static final int EVENT_TARGET_DISMISS = 4; // 0x4
2546    field public static final int EVENT_TARGET_HIDDEN = 3; // 0x3
2547    field public static final int EVENT_TARGET_INTERACTION = 1; // 0x1
2548    field public static final int EVENT_TARGET_SHOWN = 2; // 0x2
2549    field public static final int EVENT_UI_SURFACE_HIDDEN = 7; // 0x7
2550    field public static final int EVENT_UI_SURFACE_SHOWN = 6; // 0x6
2551  }
2552
2553  public static final class SmartspaceTargetEvent.Builder {
2554    ctor public SmartspaceTargetEvent.Builder(int);
2555    method @NonNull public android.app.smartspace.SmartspaceTargetEvent build();
2556    method @NonNull public android.app.smartspace.SmartspaceTargetEvent.Builder setSmartspaceActionId(@NonNull String);
2557    method @NonNull public android.app.smartspace.SmartspaceTargetEvent.Builder setSmartspaceTarget(@NonNull android.app.smartspace.SmartspaceTarget);
2558  }
2559
2560}
2561
2562package android.app.smartspace.uitemplatedata {
2563
2564  public class BaseTemplateData implements android.os.Parcelable {
2565    method public int describeContents();
2566    method public int getLayoutWeight();
2567    method @Nullable public android.app.smartspace.uitemplatedata.BaseTemplateData.SubItemInfo getPrimaryItem();
2568    method @Nullable public android.app.smartspace.uitemplatedata.BaseTemplateData.SubItemInfo getSubtitleItem();
2569    method @Nullable public android.app.smartspace.uitemplatedata.BaseTemplateData.SubItemInfo getSubtitleSupplementalItem();
2570    method @Nullable public android.app.smartspace.uitemplatedata.BaseTemplateData.SubItemInfo getSupplementalAlarmItem();
2571    method @Nullable public android.app.smartspace.uitemplatedata.BaseTemplateData.SubItemInfo getSupplementalLineItem();
2572    method public int getTemplateType();
2573    method public void writeToParcel(@NonNull android.os.Parcel, int);
2574    field @NonNull public static final android.os.Parcelable.Creator<android.app.smartspace.uitemplatedata.BaseTemplateData> CREATOR;
2575  }
2576
2577  public static class BaseTemplateData.Builder {
2578    ctor public BaseTemplateData.Builder(int);
2579    method @NonNull public android.app.smartspace.uitemplatedata.BaseTemplateData build();
2580    method @NonNull public android.app.smartspace.uitemplatedata.BaseTemplateData.Builder setLayoutWeight(int);
2581    method @NonNull public android.app.smartspace.uitemplatedata.BaseTemplateData.Builder setPrimaryItem(@NonNull android.app.smartspace.uitemplatedata.BaseTemplateData.SubItemInfo);
2582    method @NonNull public android.app.smartspace.uitemplatedata.BaseTemplateData.Builder setSubtitleItem(@NonNull android.app.smartspace.uitemplatedata.BaseTemplateData.SubItemInfo);
2583    method @NonNull public android.app.smartspace.uitemplatedata.BaseTemplateData.Builder setSubtitleSupplementalItem(@NonNull android.app.smartspace.uitemplatedata.BaseTemplateData.SubItemInfo);
2584    method @NonNull public android.app.smartspace.uitemplatedata.BaseTemplateData.Builder setSupplementalAlarmItem(@NonNull android.app.smartspace.uitemplatedata.BaseTemplateData.SubItemInfo);
2585    method @NonNull public android.app.smartspace.uitemplatedata.BaseTemplateData.Builder setSupplementalLineItem(@NonNull android.app.smartspace.uitemplatedata.BaseTemplateData.SubItemInfo);
2586  }
2587
2588  public static final class BaseTemplateData.SubItemInfo implements android.os.Parcelable {
2589    method public int describeContents();
2590    method @Nullable public android.app.smartspace.uitemplatedata.Icon getIcon();
2591    method @Nullable public android.app.smartspace.uitemplatedata.BaseTemplateData.SubItemLoggingInfo getLoggingInfo();
2592    method @Nullable public android.app.smartspace.uitemplatedata.TapAction getTapAction();
2593    method @Nullable public android.app.smartspace.uitemplatedata.Text getText();
2594    method public void writeToParcel(@NonNull android.os.Parcel, int);
2595    field @NonNull public static final android.os.Parcelable.Creator<android.app.smartspace.uitemplatedata.BaseTemplateData.SubItemInfo> CREATOR;
2596  }
2597
2598  public static final class BaseTemplateData.SubItemInfo.Builder {
2599    ctor public BaseTemplateData.SubItemInfo.Builder();
2600    method @NonNull public android.app.smartspace.uitemplatedata.BaseTemplateData.SubItemInfo build();
2601    method @NonNull public android.app.smartspace.uitemplatedata.BaseTemplateData.SubItemInfo.Builder setIcon(@NonNull android.app.smartspace.uitemplatedata.Icon);
2602    method @NonNull public android.app.smartspace.uitemplatedata.BaseTemplateData.SubItemInfo.Builder setLoggingInfo(@NonNull android.app.smartspace.uitemplatedata.BaseTemplateData.SubItemLoggingInfo);
2603    method @NonNull public android.app.smartspace.uitemplatedata.BaseTemplateData.SubItemInfo.Builder setTapAction(@NonNull android.app.smartspace.uitemplatedata.TapAction);
2604    method @NonNull public android.app.smartspace.uitemplatedata.BaseTemplateData.SubItemInfo.Builder setText(@NonNull android.app.smartspace.uitemplatedata.Text);
2605  }
2606
2607  public static final class BaseTemplateData.SubItemLoggingInfo implements android.os.Parcelable {
2608    method public int describeContents();
2609    method public int getFeatureType();
2610    method public int getInstanceId();
2611    method @Nullable public CharSequence getPackageName();
2612    method public void writeToParcel(@NonNull android.os.Parcel, int);
2613    field @NonNull public static final android.os.Parcelable.Creator<android.app.smartspace.uitemplatedata.BaseTemplateData.SubItemLoggingInfo> CREATOR;
2614  }
2615
2616  public static final class BaseTemplateData.SubItemLoggingInfo.Builder {
2617    ctor public BaseTemplateData.SubItemLoggingInfo.Builder(int, int);
2618    method @NonNull public android.app.smartspace.uitemplatedata.BaseTemplateData.SubItemLoggingInfo build();
2619    method @NonNull public android.app.smartspace.uitemplatedata.BaseTemplateData.SubItemLoggingInfo.Builder setPackageName(@NonNull CharSequence);
2620  }
2621
2622  public final class CarouselTemplateData extends android.app.smartspace.uitemplatedata.BaseTemplateData {
2623    method @Nullable public android.app.smartspace.uitemplatedata.TapAction getCarouselAction();
2624    method @NonNull public java.util.List<android.app.smartspace.uitemplatedata.CarouselTemplateData.CarouselItem> getCarouselItems();
2625    field @NonNull public static final android.os.Parcelable.Creator<android.app.smartspace.uitemplatedata.CarouselTemplateData> CREATOR;
2626  }
2627
2628  public static final class CarouselTemplateData.Builder extends android.app.smartspace.uitemplatedata.BaseTemplateData.Builder {
2629    ctor public CarouselTemplateData.Builder(@NonNull java.util.List<android.app.smartspace.uitemplatedata.CarouselTemplateData.CarouselItem>);
2630    method @NonNull public android.app.smartspace.uitemplatedata.CarouselTemplateData build();
2631    method @NonNull public android.app.smartspace.uitemplatedata.CarouselTemplateData.Builder setCarouselAction(@NonNull android.app.smartspace.uitemplatedata.TapAction);
2632  }
2633
2634  public static final class CarouselTemplateData.CarouselItem implements android.os.Parcelable {
2635    method public int describeContents();
2636    method @Nullable public android.app.smartspace.uitemplatedata.Icon getImage();
2637    method @Nullable public android.app.smartspace.uitemplatedata.Text getLowerText();
2638    method @Nullable public android.app.smartspace.uitemplatedata.TapAction getTapAction();
2639    method @Nullable public android.app.smartspace.uitemplatedata.Text getUpperText();
2640    method public void writeToParcel(@NonNull android.os.Parcel, int);
2641    field @NonNull public static final android.os.Parcelable.Creator<android.app.smartspace.uitemplatedata.CarouselTemplateData.CarouselItem> CREATOR;
2642  }
2643
2644  public static final class CarouselTemplateData.CarouselItem.Builder {
2645    ctor public CarouselTemplateData.CarouselItem.Builder();
2646    method @NonNull public android.app.smartspace.uitemplatedata.CarouselTemplateData.CarouselItem build();
2647    method @NonNull public android.app.smartspace.uitemplatedata.CarouselTemplateData.CarouselItem.Builder setImage(@Nullable android.app.smartspace.uitemplatedata.Icon);
2648    method @NonNull public android.app.smartspace.uitemplatedata.CarouselTemplateData.CarouselItem.Builder setLowerText(@Nullable android.app.smartspace.uitemplatedata.Text);
2649    method @NonNull public android.app.smartspace.uitemplatedata.CarouselTemplateData.CarouselItem.Builder setTapAction(@Nullable android.app.smartspace.uitemplatedata.TapAction);
2650    method @NonNull public android.app.smartspace.uitemplatedata.CarouselTemplateData.CarouselItem.Builder setUpperText(@Nullable android.app.smartspace.uitemplatedata.Text);
2651  }
2652
2653  public final class CombinedCardsTemplateData extends android.app.smartspace.uitemplatedata.BaseTemplateData {
2654    method @NonNull public java.util.List<android.app.smartspace.uitemplatedata.BaseTemplateData> getCombinedCardDataList();
2655    field @NonNull public static final android.os.Parcelable.Creator<android.app.smartspace.uitemplatedata.CombinedCardsTemplateData> CREATOR;
2656  }
2657
2658  public static final class CombinedCardsTemplateData.Builder extends android.app.smartspace.uitemplatedata.BaseTemplateData.Builder {
2659    ctor public CombinedCardsTemplateData.Builder(@NonNull java.util.List<android.app.smartspace.uitemplatedata.BaseTemplateData>);
2660    method @NonNull public android.app.smartspace.uitemplatedata.CombinedCardsTemplateData build();
2661  }
2662
2663  public final class HeadToHeadTemplateData extends android.app.smartspace.uitemplatedata.BaseTemplateData {
2664    method @Nullable public android.app.smartspace.uitemplatedata.TapAction getHeadToHeadAction();
2665    method @Nullable public android.app.smartspace.uitemplatedata.Icon getHeadToHeadFirstCompetitorIcon();
2666    method @Nullable public android.app.smartspace.uitemplatedata.Text getHeadToHeadFirstCompetitorText();
2667    method @Nullable public android.app.smartspace.uitemplatedata.Icon getHeadToHeadSecondCompetitorIcon();
2668    method @Nullable public android.app.smartspace.uitemplatedata.Text getHeadToHeadSecondCompetitorText();
2669    method @Nullable public android.app.smartspace.uitemplatedata.Text getHeadToHeadTitle();
2670    field @NonNull public static final android.os.Parcelable.Creator<android.app.smartspace.uitemplatedata.HeadToHeadTemplateData> CREATOR;
2671  }
2672
2673  public static final class HeadToHeadTemplateData.Builder extends android.app.smartspace.uitemplatedata.BaseTemplateData.Builder {
2674    ctor public HeadToHeadTemplateData.Builder();
2675    method @NonNull public android.app.smartspace.uitemplatedata.HeadToHeadTemplateData build();
2676    method @NonNull public android.app.smartspace.uitemplatedata.HeadToHeadTemplateData.Builder setHeadToHeadAction(@Nullable android.app.smartspace.uitemplatedata.TapAction);
2677    method @NonNull public android.app.smartspace.uitemplatedata.HeadToHeadTemplateData.Builder setHeadToHeadFirstCompetitorIcon(@Nullable android.app.smartspace.uitemplatedata.Icon);
2678    method @NonNull public android.app.smartspace.uitemplatedata.HeadToHeadTemplateData.Builder setHeadToHeadFirstCompetitorText(@Nullable android.app.smartspace.uitemplatedata.Text);
2679    method @NonNull public android.app.smartspace.uitemplatedata.HeadToHeadTemplateData.Builder setHeadToHeadSecondCompetitorIcon(@Nullable android.app.smartspace.uitemplatedata.Icon);
2680    method @NonNull public android.app.smartspace.uitemplatedata.HeadToHeadTemplateData.Builder setHeadToHeadSecondCompetitorText(@Nullable android.app.smartspace.uitemplatedata.Text);
2681    method @NonNull public android.app.smartspace.uitemplatedata.HeadToHeadTemplateData.Builder setHeadToHeadTitle(@Nullable android.app.smartspace.uitemplatedata.Text);
2682  }
2683
2684  public final class Icon implements android.os.Parcelable {
2685    method public int describeContents();
2686    method @Nullable public CharSequence getContentDescription();
2687    method @NonNull public android.graphics.drawable.Icon getIcon();
2688    method public boolean shouldTint();
2689    method public void writeToParcel(@NonNull android.os.Parcel, int);
2690    field @NonNull public static final android.os.Parcelable.Creator<android.app.smartspace.uitemplatedata.Icon> CREATOR;
2691  }
2692
2693  public static final class Icon.Builder {
2694    ctor public Icon.Builder(@NonNull android.graphics.drawable.Icon);
2695    method @NonNull public android.app.smartspace.uitemplatedata.Icon build();
2696    method @NonNull public android.app.smartspace.uitemplatedata.Icon.Builder setContentDescription(@NonNull CharSequence);
2697    method @NonNull public android.app.smartspace.uitemplatedata.Icon.Builder setShouldTint(boolean);
2698  }
2699
2700  public final class SubCardTemplateData extends android.app.smartspace.uitemplatedata.BaseTemplateData {
2701    method @Nullable public android.app.smartspace.uitemplatedata.TapAction getSubCardAction();
2702    method @NonNull public android.app.smartspace.uitemplatedata.Icon getSubCardIcon();
2703    method @Nullable public android.app.smartspace.uitemplatedata.Text getSubCardText();
2704    field @NonNull public static final android.os.Parcelable.Creator<android.app.smartspace.uitemplatedata.SubCardTemplateData> CREATOR;
2705  }
2706
2707  public static final class SubCardTemplateData.Builder extends android.app.smartspace.uitemplatedata.BaseTemplateData.Builder {
2708    ctor public SubCardTemplateData.Builder(@NonNull android.app.smartspace.uitemplatedata.Icon);
2709    method @NonNull public android.app.smartspace.uitemplatedata.SubCardTemplateData build();
2710    method @NonNull public android.app.smartspace.uitemplatedata.SubCardTemplateData.Builder setSubCardAction(@NonNull android.app.smartspace.uitemplatedata.TapAction);
2711    method @NonNull public android.app.smartspace.uitemplatedata.SubCardTemplateData.Builder setSubCardText(@NonNull android.app.smartspace.uitemplatedata.Text);
2712  }
2713
2714  public final class SubImageTemplateData extends android.app.smartspace.uitemplatedata.BaseTemplateData {
2715    method @Nullable public android.app.smartspace.uitemplatedata.TapAction getSubImageAction();
2716    method @NonNull public java.util.List<android.app.smartspace.uitemplatedata.Text> getSubImageTexts();
2717    method @NonNull public java.util.List<android.app.smartspace.uitemplatedata.Icon> getSubImages();
2718    field @NonNull public static final android.os.Parcelable.Creator<android.app.smartspace.uitemplatedata.SubImageTemplateData> CREATOR;
2719  }
2720
2721  public static final class SubImageTemplateData.Builder extends android.app.smartspace.uitemplatedata.BaseTemplateData.Builder {
2722    ctor public SubImageTemplateData.Builder(@NonNull java.util.List<android.app.smartspace.uitemplatedata.Text>, @NonNull java.util.List<android.app.smartspace.uitemplatedata.Icon>);
2723    method @NonNull public android.app.smartspace.uitemplatedata.SubImageTemplateData build();
2724    method @NonNull public android.app.smartspace.uitemplatedata.SubImageTemplateData.Builder setSubImageAction(@NonNull android.app.smartspace.uitemplatedata.TapAction);
2725  }
2726
2727  public final class SubListTemplateData extends android.app.smartspace.uitemplatedata.BaseTemplateData {
2728    method @Nullable public android.app.smartspace.uitemplatedata.TapAction getSubListAction();
2729    method @Nullable public android.app.smartspace.uitemplatedata.Icon getSubListIcon();
2730    method @NonNull public java.util.List<android.app.smartspace.uitemplatedata.Text> getSubListTexts();
2731    field @NonNull public static final android.os.Parcelable.Creator<android.app.smartspace.uitemplatedata.SubListTemplateData> CREATOR;
2732  }
2733
2734  public static final class SubListTemplateData.Builder extends android.app.smartspace.uitemplatedata.BaseTemplateData.Builder {
2735    ctor public SubListTemplateData.Builder(@NonNull java.util.List<android.app.smartspace.uitemplatedata.Text>);
2736    method @NonNull public android.app.smartspace.uitemplatedata.SubListTemplateData build();
2737    method @NonNull public android.app.smartspace.uitemplatedata.SubListTemplateData.Builder setSubListAction(@NonNull android.app.smartspace.uitemplatedata.TapAction);
2738    method @NonNull public android.app.smartspace.uitemplatedata.SubListTemplateData.Builder setSubListIcon(@NonNull android.app.smartspace.uitemplatedata.Icon);
2739  }
2740
2741  public final class TapAction implements android.os.Parcelable {
2742    method public int describeContents();
2743    method @Nullable public android.os.Bundle getExtras();
2744    method @Nullable public CharSequence getId();
2745    method @Nullable public android.content.Intent getIntent();
2746    method @Nullable public android.app.PendingIntent getPendingIntent();
2747    method @Nullable public android.os.UserHandle getUserHandle();
2748    method public boolean shouldShowOnLockscreen();
2749    method public void writeToParcel(@NonNull android.os.Parcel, int);
2750    field @NonNull public static final android.os.Parcelable.Creator<android.app.smartspace.uitemplatedata.TapAction> CREATOR;
2751  }
2752
2753  public static final class TapAction.Builder {
2754    ctor public TapAction.Builder(@NonNull CharSequence);
2755    method @NonNull public android.app.smartspace.uitemplatedata.TapAction build();
2756    method @NonNull public android.app.smartspace.uitemplatedata.TapAction.Builder setExtras(@NonNull android.os.Bundle);
2757    method @NonNull public android.app.smartspace.uitemplatedata.TapAction.Builder setIntent(@NonNull android.content.Intent);
2758    method @NonNull public android.app.smartspace.uitemplatedata.TapAction.Builder setPendingIntent(@NonNull android.app.PendingIntent);
2759    method @NonNull public android.app.smartspace.uitemplatedata.TapAction.Builder setShouldShowOnLockscreen(@NonNull boolean);
2760    method @NonNull public android.app.smartspace.uitemplatedata.TapAction.Builder setUserHandle(@Nullable android.os.UserHandle);
2761  }
2762
2763  public final class Text implements android.os.Parcelable {
2764    method public int describeContents();
2765    method public int getMaxLines();
2766    method @NonNull public CharSequence getText();
2767    method @NonNull public android.text.TextUtils.TruncateAt getTruncateAtType();
2768    method public void writeToParcel(@NonNull android.os.Parcel, int);
2769    field @NonNull public static final android.os.Parcelable.Creator<android.app.smartspace.uitemplatedata.Text> CREATOR;
2770  }
2771
2772  public static final class Text.Builder {
2773    ctor public Text.Builder(@NonNull CharSequence);
2774    method @NonNull public android.app.smartspace.uitemplatedata.Text build();
2775    method @NonNull public android.app.smartspace.uitemplatedata.Text.Builder setMaxLines(int);
2776    method @NonNull public android.app.smartspace.uitemplatedata.Text.Builder setTruncateAtType(@NonNull android.text.TextUtils.TruncateAt);
2777  }
2778
2779}
2780
2781package android.app.time {
2782
2783  public final class Capabilities {
2784    field public static final int CAPABILITY_NOT_ALLOWED = 20; // 0x14
2785    field public static final int CAPABILITY_NOT_APPLICABLE = 30; // 0x1e
2786    field public static final int CAPABILITY_NOT_SUPPORTED = 10; // 0xa
2787    field public static final int CAPABILITY_POSSESSED = 40; // 0x28
2788  }
2789
2790  public final class ExternalTimeSuggestion implements android.os.Parcelable {
2791    ctor public ExternalTimeSuggestion(long, long);
2792    method public void addDebugInfo(@NonNull java.lang.String...);
2793    method public int describeContents();
2794    method @NonNull public java.util.List<java.lang.String> getDebugInfo();
2795    method public void writeToParcel(@NonNull android.os.Parcel, int);
2796    field @NonNull public static final android.os.Parcelable.Creator<android.app.time.ExternalTimeSuggestion> CREATOR;
2797  }
2798
2799  public final class TimeCapabilities implements android.os.Parcelable {
2800    method public int describeContents();
2801    method public int getConfigureAutoDetectionEnabledCapability();
2802    method public int getSetManualTimeCapability();
2803    method public void writeToParcel(@NonNull android.os.Parcel, int);
2804    field @NonNull public static final android.os.Parcelable.Creator<android.app.time.TimeCapabilities> CREATOR;
2805  }
2806
2807  public final class TimeCapabilitiesAndConfig implements android.os.Parcelable {
2808    method public int describeContents();
2809    method @NonNull public android.app.time.TimeCapabilities getCapabilities();
2810    method @NonNull public android.app.time.TimeConfiguration getConfiguration();
2811    method public void writeToParcel(@NonNull android.os.Parcel, int);
2812    field @NonNull public static final android.os.Parcelable.Creator<android.app.time.TimeCapabilitiesAndConfig> CREATOR;
2813  }
2814
2815  public final class TimeConfiguration implements android.os.Parcelable {
2816    method public int describeContents();
2817    method public boolean isAutoDetectionEnabled();
2818    method public void writeToParcel(@NonNull android.os.Parcel, int);
2819    field @NonNull public static final android.os.Parcelable.Creator<android.app.time.TimeConfiguration> CREATOR;
2820  }
2821
2822  public static final class TimeConfiguration.Builder {
2823    ctor public TimeConfiguration.Builder();
2824    ctor public TimeConfiguration.Builder(@NonNull android.app.time.TimeConfiguration);
2825    method @NonNull public android.app.time.TimeConfiguration build();
2826    method @NonNull public android.app.time.TimeConfiguration.Builder setAutoDetectionEnabled(boolean);
2827  }
2828
2829  public final class TimeManager {
2830    method @RequiresPermission(android.Manifest.permission.MANAGE_TIME_AND_ZONE_DETECTION) public void addTimeZoneDetectorListener(@NonNull java.util.concurrent.Executor, @NonNull android.app.time.TimeManager.TimeZoneDetectorListener);
2831    method @RequiresPermission(android.Manifest.permission.MANAGE_TIME_AND_ZONE_DETECTION) public boolean confirmTime(@NonNull android.app.time.UnixEpochTime);
2832    method @RequiresPermission(android.Manifest.permission.MANAGE_TIME_AND_ZONE_DETECTION) public boolean confirmTimeZone(@NonNull String);
2833    method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_TIME_AND_ZONE_DETECTION) public android.app.time.TimeCapabilitiesAndConfig getTimeCapabilitiesAndConfig();
2834    method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_TIME_AND_ZONE_DETECTION) public android.app.time.TimeState getTimeState();
2835    method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_TIME_AND_ZONE_DETECTION) public android.app.time.TimeZoneCapabilitiesAndConfig getTimeZoneCapabilitiesAndConfig();
2836    method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_TIME_AND_ZONE_DETECTION) public android.app.time.TimeZoneState getTimeZoneState();
2837    method @RequiresPermission(android.Manifest.permission.MANAGE_TIME_AND_ZONE_DETECTION) public void removeTimeZoneDetectorListener(@NonNull android.app.time.TimeManager.TimeZoneDetectorListener);
2838    method @RequiresPermission(android.Manifest.permission.MANAGE_TIME_AND_ZONE_DETECTION) public boolean setManualTime(@NonNull android.app.time.UnixEpochTime);
2839    method @RequiresPermission(android.Manifest.permission.MANAGE_TIME_AND_ZONE_DETECTION) public boolean setManualTimeZone(@NonNull String);
2840    method @RequiresPermission(android.Manifest.permission.SUGGEST_EXTERNAL_TIME) public void suggestExternalTime(@NonNull android.app.time.ExternalTimeSuggestion);
2841    method @RequiresPermission(android.Manifest.permission.MANAGE_TIME_AND_ZONE_DETECTION) public boolean updateTimeConfiguration(@NonNull android.app.time.TimeConfiguration);
2842    method @RequiresPermission(android.Manifest.permission.MANAGE_TIME_AND_ZONE_DETECTION) public boolean updateTimeZoneConfiguration(@NonNull android.app.time.TimeZoneConfiguration);
2843  }
2844
2845  @java.lang.FunctionalInterface public static interface TimeManager.TimeZoneDetectorListener {
2846    method public void onChange();
2847  }
2848
2849  public final class TimeState implements android.os.Parcelable {
2850    method public int describeContents();
2851    method @NonNull public android.app.time.UnixEpochTime getUnixEpochTime();
2852    method public boolean getUserShouldConfirmTime();
2853    method public void writeToParcel(@NonNull android.os.Parcel, int);
2854    field @NonNull public static final android.os.Parcelable.Creator<android.app.time.TimeState> CREATOR;
2855  }
2856
2857  public final class TimeZoneCapabilities implements android.os.Parcelable {
2858    method public int describeContents();
2859    method public int getConfigureAutoDetectionEnabledCapability();
2860    method public int getConfigureGeoDetectionEnabledCapability();
2861    method public int getSetManualTimeZoneCapability();
2862    method public void writeToParcel(@NonNull android.os.Parcel, int);
2863    field @NonNull public static final android.os.Parcelable.Creator<android.app.time.TimeZoneCapabilities> CREATOR;
2864  }
2865
2866  public final class TimeZoneCapabilitiesAndConfig implements android.os.Parcelable {
2867    method public int describeContents();
2868    method @NonNull public android.app.time.TimeZoneCapabilities getCapabilities();
2869    method @NonNull public android.app.time.TimeZoneConfiguration getConfiguration();
2870    method public void writeToParcel(@NonNull android.os.Parcel, int);
2871    field @NonNull public static final android.os.Parcelable.Creator<android.app.time.TimeZoneCapabilitiesAndConfig> CREATOR;
2872  }
2873
2874  public final class TimeZoneConfiguration implements android.os.Parcelable {
2875    method public int describeContents();
2876    method public boolean isAutoDetectionEnabled();
2877    method public boolean isGeoDetectionEnabled();
2878    method public void writeToParcel(@NonNull android.os.Parcel, int);
2879    field @NonNull public static final android.os.Parcelable.Creator<android.app.time.TimeZoneConfiguration> CREATOR;
2880  }
2881
2882  public static final class TimeZoneConfiguration.Builder {
2883    ctor public TimeZoneConfiguration.Builder();
2884    ctor public TimeZoneConfiguration.Builder(@NonNull android.app.time.TimeZoneConfiguration);
2885    method @NonNull public android.app.time.TimeZoneConfiguration build();
2886    method @NonNull public android.app.time.TimeZoneConfiguration.Builder setAutoDetectionEnabled(boolean);
2887    method @NonNull public android.app.time.TimeZoneConfiguration.Builder setGeoDetectionEnabled(boolean);
2888  }
2889
2890  public final class TimeZoneState implements android.os.Parcelable {
2891    method public int describeContents();
2892    method @NonNull public String getId();
2893    method public boolean getUserShouldConfirmId();
2894    method public void writeToParcel(@NonNull android.os.Parcel, int);
2895    field @NonNull public static final android.os.Parcelable.Creator<android.app.time.TimeZoneState> CREATOR;
2896  }
2897
2898  public final class UnixEpochTime implements android.os.Parcelable {
2899    ctor public UnixEpochTime(long, long);
2900    method @NonNull public android.app.time.UnixEpochTime at(long);
2901    method public int describeContents();
2902    method public long getElapsedRealtimeMillis();
2903    method public long getUnixEpochTimeMillis();
2904    method public void writeToParcel(@NonNull android.os.Parcel, int);
2905    field @NonNull public static final android.os.Parcelable.Creator<android.app.time.UnixEpochTime> CREATOR;
2906  }
2907
2908}
2909
2910package android.app.usage {
2911
2912  public final class BroadcastResponseStats implements android.os.Parcelable {
2913    ctor public BroadcastResponseStats(@NonNull String, @IntRange(from=1) long);
2914    method public int describeContents();
2915    method @IntRange(from=0) public int getBroadcastsDispatchedCount();
2916    method @IntRange(from=1) public long getId();
2917    method @IntRange(from=0) public int getNotificationsCancelledCount();
2918    method @IntRange(from=0) public int getNotificationsPostedCount();
2919    method @IntRange(from=0) public int getNotificationsUpdatedCount();
2920    method @NonNull public String getPackageName();
2921    method public void writeToParcel(@NonNull android.os.Parcel, int);
2922    field @NonNull public static final android.os.Parcelable.Creator<android.app.usage.BroadcastResponseStats> CREATOR;
2923  }
2924
2925  public final class CacheQuotaHint implements android.os.Parcelable {
2926    ctor public CacheQuotaHint(@NonNull android.app.usage.CacheQuotaHint.Builder);
2927    method public int describeContents();
2928    method public long getQuota();
2929    method public int getUid();
2930    method @Nullable public android.app.usage.UsageStats getUsageStats();
2931    method @Nullable public String getVolumeUuid();
2932    method public void writeToParcel(@NonNull android.os.Parcel, int);
2933    field @NonNull public static final android.os.Parcelable.Creator<android.app.usage.CacheQuotaHint> CREATOR;
2934    field public static final long QUOTA_NOT_SET = -1L; // 0xffffffffffffffffL
2935  }
2936
2937  public static final class CacheQuotaHint.Builder {
2938    ctor public CacheQuotaHint.Builder();
2939    ctor public CacheQuotaHint.Builder(@NonNull android.app.usage.CacheQuotaHint);
2940    method @NonNull public android.app.usage.CacheQuotaHint build();
2941    method @NonNull public android.app.usage.CacheQuotaHint.Builder setQuota(long);
2942    method @NonNull public android.app.usage.CacheQuotaHint.Builder setUid(int);
2943    method @NonNull public android.app.usage.CacheQuotaHint.Builder setUsageStats(@Nullable android.app.usage.UsageStats);
2944    method @NonNull public android.app.usage.CacheQuotaHint.Builder setVolumeUuid(@Nullable String);
2945  }
2946
2947  public abstract class CacheQuotaService extends android.app.Service {
2948    ctor public CacheQuotaService();
2949    method public android.os.IBinder onBind(android.content.Intent);
2950    method public abstract java.util.List<android.app.usage.CacheQuotaHint> onComputeCacheQuotaHints(java.util.List<android.app.usage.CacheQuotaHint>);
2951    field public static final String SERVICE_INTERFACE = "android.app.usage.CacheQuotaService";
2952  }
2953
2954  public static final class UsageEvents.Event {
2955    method public int getInstanceId();
2956    method @Nullable public String getNotificationChannelId();
2957    method @Nullable public String getTaskRootClassName();
2958    method @Nullable public String getTaskRootPackageName();
2959    method public boolean isInstantApp();
2960    field public static final int NOTIFICATION_INTERRUPTION = 12; // 0xc
2961    field public static final int NOTIFICATION_SEEN = 10; // 0xa
2962    field public static final int SLICE_PINNED = 14; // 0xe
2963    field public static final int SLICE_PINNED_PRIV = 13; // 0xd
2964    field public static final int SYSTEM_INTERACTION = 6; // 0x6
2965  }
2966
2967  public final class UsageStats implements android.os.Parcelable {
2968    method public int getAppLaunchCount();
2969    method public long getLastTimeAnyComponentUsed();
2970  }
2971
2972  public final class UsageStatsManager {
2973    method @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RESPONSE_STATS) public void clearBroadcastResponseStats(@Nullable String, @IntRange(from=0) long);
2974    method @RequiresPermission(android.Manifest.permission.PACKAGE_USAGE_STATS) public int getAppStandbyBucket(String);
2975    method @RequiresPermission(android.Manifest.permission.PACKAGE_USAGE_STATS) public java.util.Map<java.lang.String,java.lang.Integer> getAppStandbyBuckets();
2976    method @RequiresPermission(allOf={android.Manifest.permission.INTERACT_ACROSS_USERS, android.Manifest.permission.PACKAGE_USAGE_STATS}) public long getLastTimeAnyComponentUsed(@NonNull String);
2977    method public int getUsageSource();
2978    method @RequiresPermission(android.Manifest.permission.BIND_CARRIER_SERVICES) public void onCarrierPrivilegedAppsChanged();
2979    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);
2980    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);
2981    method @RequiresPermission(android.Manifest.permission.OBSERVE_APP_USAGE) public void registerAppUsageObserver(int, @NonNull String[], long, @NonNull java.util.concurrent.TimeUnit, @NonNull android.app.PendingIntent);
2982    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);
2983    method public void reportUsageStart(@NonNull android.app.Activity, @NonNull String);
2984    method public void reportUsageStart(@NonNull android.app.Activity, @NonNull String, long);
2985    method public void reportUsageStop(@NonNull android.app.Activity, @NonNull String);
2986    method @RequiresPermission(android.Manifest.permission.CHANGE_APP_IDLE_STATE) public void setAppStandbyBucket(String, int);
2987    method @RequiresPermission(android.Manifest.permission.CHANGE_APP_IDLE_STATE) public void setAppStandbyBuckets(java.util.Map<java.lang.String,java.lang.Integer>);
2988    method @RequiresPermission(android.Manifest.permission.CHANGE_APP_LAUNCH_TIME_ESTIMATE) public void setEstimatedLaunchTimeMillis(@NonNull String, long);
2989    method @RequiresPermission(android.Manifest.permission.CHANGE_APP_LAUNCH_TIME_ESTIMATE) public void setEstimatedLaunchTimesMillis(@NonNull java.util.Map<java.lang.String,java.lang.Long>);
2990    method @RequiresPermission(allOf={android.Manifest.permission.SUSPEND_APPS, android.Manifest.permission.OBSERVE_APP_USAGE}) public void unregisterAppUsageLimitObserver(int);
2991    method @RequiresPermission(android.Manifest.permission.OBSERVE_APP_USAGE) public void unregisterAppUsageObserver(int);
2992    method @RequiresPermission(android.Manifest.permission.OBSERVE_APP_USAGE) public void unregisterUsageSessionObserver(int);
2993    method @Deprecated @RequiresPermission(android.Manifest.permission.CHANGE_DEVICE_IDLE_TEMP_WHITELIST) public void whitelistAppTemporarily(String, long, android.os.UserHandle);
2994    field public static final String EXTRA_OBSERVER_ID = "android.app.usage.extra.OBSERVER_ID";
2995    field public static final String EXTRA_TIME_LIMIT = "android.app.usage.extra.TIME_LIMIT";
2996    field public static final String EXTRA_TIME_USED = "android.app.usage.extra.TIME_USED";
2997    field public static final int STANDBY_BUCKET_EXEMPTED = 5; // 0x5
2998    field public static final int STANDBY_BUCKET_NEVER = 50; // 0x32
2999    field public static final int USAGE_SOURCE_CURRENT_ACTIVITY = 2; // 0x2
3000    field public static final int USAGE_SOURCE_TASK_ROOT_ACTIVITY = 1; // 0x1
3001  }
3002
3003}
3004
3005package android.app.wallpapereffectsgeneration {
3006
3007  public final class CameraAttributes implements android.os.Parcelable {
3008    method public int describeContents();
3009    method @NonNull public float[] getAnchorPointInOutputUvSpace();
3010    method @NonNull public float[] getAnchorPointInWorldSpace();
3011    method @FloatRange(from=-90.0F, to=90.0f) public float getCameraOrbitPitchDegrees();
3012    method @FloatRange(from=-180.0F, to=180.0f) public float getCameraOrbitYawDegrees();
3013    method public float getDollyDistanceInWorldSpace();
3014    method @FloatRange(from=0.0f) public float getFrustumFarInWorldSpace();
3015    method @FloatRange(from=0.0f) public float getFrustumNearInWorldSpace();
3016    method @FloatRange(from=0.0f, to=180.0f, fromInclusive=false) public float getVerticalFovDegrees();
3017    method public void writeToParcel(@NonNull android.os.Parcel, int);
3018    field @NonNull public static final android.os.Parcelable.Creator<android.app.wallpapereffectsgeneration.CameraAttributes> CREATOR;
3019  }
3020
3021  public static final class CameraAttributes.Builder {
3022    ctor public CameraAttributes.Builder(@NonNull @Size(3) float[], @NonNull @Size(2) float[]);
3023    method @NonNull public android.app.wallpapereffectsgeneration.CameraAttributes build();
3024    method @NonNull public android.app.wallpapereffectsgeneration.CameraAttributes.Builder setCameraOrbitPitchDegrees(@FloatRange(from=-90.0F, to=90.0f) float);
3025    method @NonNull public android.app.wallpapereffectsgeneration.CameraAttributes.Builder setCameraOrbitYawDegrees(@FloatRange(from=-180.0F, to=180.0f) float);
3026    method @NonNull public android.app.wallpapereffectsgeneration.CameraAttributes.Builder setDollyDistanceInWorldSpace(float);
3027    method @NonNull public android.app.wallpapereffectsgeneration.CameraAttributes.Builder setFrustumFarInWorldSpace(@FloatRange(from=0.0f) float);
3028    method @NonNull public android.app.wallpapereffectsgeneration.CameraAttributes.Builder setFrustumNearInWorldSpace(@FloatRange(from=0.0f) float);
3029    method @NonNull public android.app.wallpapereffectsgeneration.CameraAttributes.Builder setVerticalFovDegrees(@FloatRange(from=0.0f, to=180.0f, fromInclusive=false) float);
3030  }
3031
3032  public final class CinematicEffectRequest implements android.os.Parcelable {
3033    ctor public CinematicEffectRequest(@NonNull String, @NonNull android.graphics.Bitmap);
3034    method public int describeContents();
3035    method @NonNull public android.graphics.Bitmap getBitmap();
3036    method @NonNull public String getTaskId();
3037    method public void writeToParcel(@NonNull android.os.Parcel, int);
3038    field @NonNull public static final android.os.Parcelable.Creator<android.app.wallpapereffectsgeneration.CinematicEffectRequest> CREATOR;
3039  }
3040
3041  public final class CinematicEffectResponse implements android.os.Parcelable {
3042    method public int describeContents();
3043    method @Nullable public android.app.wallpapereffectsgeneration.CameraAttributes getEndKeyFrame();
3044    method public int getImageContentType();
3045    method @Nullable public android.app.wallpapereffectsgeneration.CameraAttributes getStartKeyFrame();
3046    method public int getStatusCode();
3047    method @NonNull public String getTaskId();
3048    method @NonNull public java.util.List<android.app.wallpapereffectsgeneration.TexturedMesh> getTexturedMeshes();
3049    method public void writeToParcel(@NonNull android.os.Parcel, int);
3050    field public static final int CINEMATIC_EFFECT_STATUS_ANIMATION_FAILURE = 10; // 0xa
3051    field public static final int CINEMATIC_EFFECT_STATUS_CONTENT_TARGET_ERROR = 8; // 0x8
3052    field public static final int CINEMATIC_EFFECT_STATUS_CONTENT_TOO_FLAT = 9; // 0x9
3053    field public static final int CINEMATIC_EFFECT_STATUS_CONTENT_UNSUPPORTED = 7; // 0x7
3054    field public static final int CINEMATIC_EFFECT_STATUS_ERROR = 0; // 0x0
3055    field public static final int CINEMATIC_EFFECT_STATUS_FEATURE_DISABLED = 5; // 0x5
3056    field public static final int CINEMATIC_EFFECT_STATUS_IMAGE_FORMAT_NOT_SUITABLE = 6; // 0x6
3057    field public static final int CINEMATIC_EFFECT_STATUS_NOT_READY = 2; // 0x2
3058    field public static final int CINEMATIC_EFFECT_STATUS_OK = 1; // 0x1
3059    field public static final int CINEMATIC_EFFECT_STATUS_PENDING = 3; // 0x3
3060    field public static final int CINEMATIC_EFFECT_STATUS_TOO_MANY_REQUESTS = 4; // 0x4
3061    field @NonNull public static final android.os.Parcelable.Creator<android.app.wallpapereffectsgeneration.CinematicEffectResponse> CREATOR;
3062    field public static final int IMAGE_CONTENT_TYPE_LANDSCAPE = 2; // 0x2
3063    field public static final int IMAGE_CONTENT_TYPE_OTHER = 3; // 0x3
3064    field public static final int IMAGE_CONTENT_TYPE_PEOPLE_PORTRAIT = 1; // 0x1
3065    field public static final int IMAGE_CONTENT_TYPE_UNKNOWN = 0; // 0x0
3066  }
3067
3068  public static final class CinematicEffectResponse.Builder {
3069    ctor public CinematicEffectResponse.Builder(int, @NonNull String);
3070    method @NonNull public android.app.wallpapereffectsgeneration.CinematicEffectResponse build();
3071    method @NonNull public android.app.wallpapereffectsgeneration.CinematicEffectResponse.Builder setEndKeyFrame(@Nullable android.app.wallpapereffectsgeneration.CameraAttributes);
3072    method @NonNull public android.app.wallpapereffectsgeneration.CinematicEffectResponse.Builder setImageContentType(int);
3073    method @NonNull public android.app.wallpapereffectsgeneration.CinematicEffectResponse.Builder setStartKeyFrame(@Nullable android.app.wallpapereffectsgeneration.CameraAttributes);
3074    method @NonNull public android.app.wallpapereffectsgeneration.CinematicEffectResponse.Builder setTexturedMeshes(@NonNull java.util.List<android.app.wallpapereffectsgeneration.TexturedMesh>);
3075  }
3076
3077  public final class TexturedMesh implements android.os.Parcelable {
3078    method public int describeContents();
3079    method @NonNull public android.graphics.Bitmap getBitmap();
3080    method @NonNull public int[] getIndices();
3081    method @NonNull public int getIndicesLayoutType();
3082    method @NonNull public float[] getVertices();
3083    method @NonNull public int getVerticesLayoutType();
3084    method public void writeToParcel(@NonNull android.os.Parcel, int);
3085    field @NonNull public static final android.os.Parcelable.Creator<android.app.wallpapereffectsgeneration.TexturedMesh> CREATOR;
3086    field public static final int INDICES_LAYOUT_TRIANGLES = 1; // 0x1
3087    field public static final int INDICES_LAYOUT_UNDEFINED = 0; // 0x0
3088    field public static final int VERTICES_LAYOUT_POSITION3_UV2 = 1; // 0x1
3089    field public static final int VERTICES_LAYOUT_UNDEFINED = 0; // 0x0
3090  }
3091
3092  public static final class TexturedMesh.Builder {
3093    ctor public TexturedMesh.Builder(@NonNull android.graphics.Bitmap);
3094    method @NonNull public android.app.wallpapereffectsgeneration.TexturedMesh build();
3095    method @NonNull public android.app.wallpapereffectsgeneration.TexturedMesh.Builder setIndices(@NonNull int[]);
3096    method @NonNull public android.app.wallpapereffectsgeneration.TexturedMesh.Builder setIndicesLayoutType(int);
3097    method @NonNull public android.app.wallpapereffectsgeneration.TexturedMesh.Builder setVertices(@NonNull float[]);
3098    method @NonNull public android.app.wallpapereffectsgeneration.TexturedMesh.Builder setVerticesLayoutType(int);
3099  }
3100
3101  public final class WallpaperEffectsGenerationManager {
3102    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);
3103  }
3104
3105  public static interface WallpaperEffectsGenerationManager.CinematicEffectListener {
3106    method public void onCinematicEffectGenerated(@NonNull android.app.wallpapereffectsgeneration.CinematicEffectResponse);
3107  }
3108
3109}
3110
3111package android.app.wearable {
3112
3113  public class WearableSensingManager {
3114    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>);
3115    method @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>);
3116    field public static final int STATUS_ACCESS_DENIED = 5; // 0x5
3117    field public static final int STATUS_SERVICE_UNAVAILABLE = 3; // 0x3
3118    field public static final int STATUS_SUCCESS = 1; // 0x1
3119    field public static final int STATUS_UNKNOWN = 0; // 0x0
3120    field public static final int STATUS_UNSUPPORTED = 2; // 0x2
3121    field public static final int STATUS_WEARABLE_UNAVAILABLE = 4; // 0x4
3122  }
3123
3124}
3125
3126package android.apphibernation {
3127
3128  public class AppHibernationManager {
3129    method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_APP_HIBERNATION) public java.util.List<java.lang.String> getHibernatingPackagesForUser();
3130    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>);
3131    method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_APP_HIBERNATION) public java.util.Map<java.lang.String,android.apphibernation.HibernationStats> getHibernationStatsForUser();
3132    method @RequiresPermission(android.Manifest.permission.MANAGE_APP_HIBERNATION) public boolean isHibernatingForUser(@NonNull String);
3133    method @RequiresPermission(android.Manifest.permission.MANAGE_APP_HIBERNATION) public boolean isHibernatingGlobally(@NonNull String);
3134    method @RequiresPermission(android.Manifest.permission.MANAGE_APP_HIBERNATION) public boolean isOatArtifactDeletionEnabled();
3135    method @RequiresPermission(android.Manifest.permission.MANAGE_APP_HIBERNATION) public void setHibernatingForUser(@NonNull String, boolean);
3136    method @RequiresPermission(android.Manifest.permission.MANAGE_APP_HIBERNATION) public void setHibernatingGlobally(@NonNull String, boolean);
3137  }
3138
3139  public final class HibernationStats implements android.os.Parcelable {
3140    method public int describeContents();
3141    method public long getDiskBytesSaved();
3142    method public void writeToParcel(@NonNull android.os.Parcel, int);
3143    field @NonNull public static final android.os.Parcelable.Creator<android.apphibernation.HibernationStats> CREATOR;
3144  }
3145
3146}
3147
3148package android.companion {
3149
3150  public final class AssociationInfo implements android.os.Parcelable {
3151    method @NonNull public String getPackageName();
3152    method public boolean isSelfManaged();
3153  }
3154
3155  public final class CompanionDeviceManager {
3156    method @RequiresPermission("android.permission.MANAGE_COMPANION_DEVICES") public void addOnAssociationsChangedListener(@NonNull java.util.concurrent.Executor, @NonNull android.companion.CompanionDeviceManager.OnAssociationsChangedListener);
3157    method @RequiresPermission(android.Manifest.permission.ASSOCIATE_COMPANION_DEVICES) public void associate(@NonNull String, @NonNull android.net.MacAddress, @NonNull byte[]);
3158    method @RequiresPermission("android.permission.MANAGE_COMPANION_DEVICES") public boolean canPairWithoutPrompt(@NonNull String, @NonNull String, @NonNull android.os.UserHandle);
3159    method @NonNull @RequiresPermission("android.permission.MANAGE_COMPANION_DEVICES") public java.util.List<android.companion.AssociationInfo> getAllAssociations();
3160    method @RequiresPermission("android.permission.MANAGE_COMPANION_DEVICES") public boolean isDeviceAssociatedForWifiConnection(@NonNull String, @NonNull android.net.MacAddress, @NonNull android.os.UserHandle);
3161    method @RequiresPermission(android.Manifest.permission.REQUEST_COMPANION_SELF_MANAGED) public void notifyDeviceAppeared(int);
3162    method @RequiresPermission(android.Manifest.permission.REQUEST_COMPANION_SELF_MANAGED) public void notifyDeviceDisappeared(int);
3163    method @RequiresPermission("android.permission.MANAGE_COMPANION_DEVICES") public void removeOnAssociationsChangedListener(@NonNull android.companion.CompanionDeviceManager.OnAssociationsChangedListener);
3164  }
3165
3166  public static interface CompanionDeviceManager.OnAssociationsChangedListener {
3167    method public void onAssociationsChanged(@NonNull java.util.List<android.companion.AssociationInfo>);
3168  }
3169
3170}
3171
3172package android.companion.virtual {
3173
3174  public final class VirtualDeviceManager {
3175    method @NonNull @RequiresPermission(android.Manifest.permission.CREATE_VIRTUAL_DEVICE) public android.companion.virtual.VirtualDeviceManager.VirtualDevice createVirtualDevice(int, @NonNull android.companion.virtual.VirtualDeviceParams);
3176    field public static final int LAUNCH_FAILURE_NO_ACTIVITY = 2; // 0x2
3177    field public static final int LAUNCH_FAILURE_PENDING_INTENT_CANCELED = 1; // 0x1
3178    field public static final int LAUNCH_SUCCESS = 0; // 0x0
3179  }
3180
3181  public static interface VirtualDeviceManager.ActivityListener {
3182    method public void onDisplayEmpty(int);
3183    method @Deprecated public void onTopActivityChanged(int, @NonNull android.content.ComponentName);
3184    method public default void onTopActivityChanged(int, @NonNull android.content.ComponentName, int);
3185  }
3186
3187  public static interface VirtualDeviceManager.IntentInterceptorCallback {
3188    method public void onIntentIntercepted(@NonNull android.content.Intent);
3189  }
3190
3191  public static interface VirtualDeviceManager.SoundEffectListener {
3192    method public void onPlaySoundEffect(int);
3193  }
3194
3195  public static class VirtualDeviceManager.VirtualDevice implements java.lang.AutoCloseable {
3196    method public void addActivityListener(@NonNull java.util.concurrent.Executor, @NonNull android.companion.virtual.VirtualDeviceManager.ActivityListener);
3197    method public void addSoundEffectListener(@NonNull java.util.concurrent.Executor, @NonNull android.companion.virtual.VirtualDeviceManager.SoundEffectListener);
3198    method @RequiresPermission(android.Manifest.permission.CREATE_VIRTUAL_DEVICE) public void close();
3199    method @NonNull public android.content.Context createContext();
3200    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);
3201    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);
3202    method @Nullable public android.hardware.display.VirtualDisplay createVirtualDisplay(@NonNull android.hardware.display.VirtualDisplayConfig, @Nullable java.util.concurrent.Executor, @Nullable android.hardware.display.VirtualDisplay.Callback);
3203    method @NonNull @RequiresPermission(android.Manifest.permission.CREATE_VIRTUAL_DEVICE) public android.hardware.input.VirtualDpad createVirtualDpad(@NonNull android.hardware.input.VirtualDpadConfig);
3204    method @NonNull @RequiresPermission(android.Manifest.permission.CREATE_VIRTUAL_DEVICE) public android.hardware.input.VirtualKeyboard createVirtualKeyboard(@NonNull android.hardware.input.VirtualKeyboardConfig);
3205    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);
3206    method @NonNull @RequiresPermission(android.Manifest.permission.CREATE_VIRTUAL_DEVICE) public android.hardware.input.VirtualMouse createVirtualMouse(@NonNull android.hardware.input.VirtualMouseConfig);
3207    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);
3208    method @NonNull @RequiresPermission(android.Manifest.permission.CREATE_VIRTUAL_DEVICE) public android.hardware.input.VirtualNavigationTouchpad createVirtualNavigationTouchpad(@NonNull android.hardware.input.VirtualNavigationTouchpadConfig);
3209    method @NonNull @RequiresPermission(android.Manifest.permission.CREATE_VIRTUAL_DEVICE) public android.hardware.input.VirtualTouchscreen createVirtualTouchscreen(@NonNull android.hardware.input.VirtualTouchscreenConfig);
3210    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);
3211    method public int getDeviceId();
3212    method @NonNull public java.util.List<android.companion.virtual.sensor.VirtualSensor> getVirtualSensorList();
3213    method public void launchPendingIntent(int, @NonNull android.app.PendingIntent, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.IntConsumer);
3214    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);
3215    method public void removeActivityListener(@NonNull android.companion.virtual.VirtualDeviceManager.ActivityListener);
3216    method public void removeSoundEffectListener(@NonNull android.companion.virtual.VirtualDeviceManager.SoundEffectListener);
3217    method @NonNull @RequiresPermission(android.Manifest.permission.CREATE_VIRTUAL_DEVICE) public void setShowPointerIcon(boolean);
3218    method @RequiresPermission(android.Manifest.permission.CREATE_VIRTUAL_DEVICE) public void unregisterIntentInterceptor(@NonNull android.companion.virtual.VirtualDeviceManager.IntentInterceptorCallback);
3219  }
3220
3221  public final class VirtualDeviceParams implements android.os.Parcelable {
3222    method public int describeContents();
3223    method @NonNull public java.util.Set<android.content.ComponentName> getAllowedActivities();
3224    method @NonNull public java.util.Set<android.content.ComponentName> getAllowedCrossTaskNavigations();
3225    method public int getAudioPlaybackSessionId();
3226    method public int getAudioRecordingSessionId();
3227    method @NonNull public java.util.Set<android.content.ComponentName> getBlockedActivities();
3228    method @NonNull public java.util.Set<android.content.ComponentName> getBlockedCrossTaskNavigations();
3229    method public int getDefaultActivityPolicy();
3230    method public int getDefaultNavigationPolicy();
3231    method public int getDevicePolicy(int);
3232    method public int getLockState();
3233    method @Nullable public String getName();
3234    method @NonNull public java.util.Set<android.os.UserHandle> getUsersWithMatchingAccounts();
3235    method @NonNull public java.util.List<android.companion.virtual.sensor.VirtualSensorConfig> getVirtualSensorConfigs();
3236    method public void writeToParcel(@NonNull android.os.Parcel, int);
3237    field public static final int ACTIVITY_POLICY_DEFAULT_ALLOWED = 0; // 0x0
3238    field public static final int ACTIVITY_POLICY_DEFAULT_BLOCKED = 1; // 0x1
3239    field @NonNull public static final android.os.Parcelable.Creator<android.companion.virtual.VirtualDeviceParams> CREATOR;
3240    field public static final int DEVICE_POLICY_CUSTOM = 1; // 0x1
3241    field public static final int DEVICE_POLICY_DEFAULT = 0; // 0x0
3242    field public static final int LOCK_STATE_ALWAYS_UNLOCKED = 1; // 0x1
3243    field public static final int LOCK_STATE_DEFAULT = 0; // 0x0
3244    field public static final int NAVIGATION_POLICY_DEFAULT_ALLOWED = 0; // 0x0
3245    field public static final int NAVIGATION_POLICY_DEFAULT_BLOCKED = 1; // 0x1
3246    field public static final int POLICY_TYPE_AUDIO = 1; // 0x1
3247    field public static final int POLICY_TYPE_RECENTS = 2; // 0x2
3248    field public static final int POLICY_TYPE_SENSORS = 0; // 0x0
3249  }
3250
3251  public static final class VirtualDeviceParams.Builder {
3252    ctor public VirtualDeviceParams.Builder();
3253    method @NonNull public android.companion.virtual.VirtualDeviceParams.Builder addVirtualSensorConfig(@NonNull android.companion.virtual.sensor.VirtualSensorConfig);
3254    method @NonNull public android.companion.virtual.VirtualDeviceParams build();
3255    method @NonNull public android.companion.virtual.VirtualDeviceParams.Builder setAllowedActivities(@NonNull java.util.Set<android.content.ComponentName>);
3256    method @NonNull public android.companion.virtual.VirtualDeviceParams.Builder setAllowedCrossTaskNavigations(@NonNull java.util.Set<android.content.ComponentName>);
3257    method @NonNull public android.companion.virtual.VirtualDeviceParams.Builder setAudioPlaybackSessionId(int);
3258    method @NonNull public android.companion.virtual.VirtualDeviceParams.Builder setAudioRecordingSessionId(int);
3259    method @NonNull public android.companion.virtual.VirtualDeviceParams.Builder setBlockedActivities(@NonNull java.util.Set<android.content.ComponentName>);
3260    method @NonNull public android.companion.virtual.VirtualDeviceParams.Builder setBlockedCrossTaskNavigations(@NonNull java.util.Set<android.content.ComponentName>);
3261    method @NonNull public android.companion.virtual.VirtualDeviceParams.Builder setDevicePolicy(int, int);
3262    method @NonNull @RequiresPermission(value=android.Manifest.permission.ADD_ALWAYS_UNLOCKED_DISPLAY, conditional=true) public android.companion.virtual.VirtualDeviceParams.Builder setLockState(int);
3263    method @NonNull public android.companion.virtual.VirtualDeviceParams.Builder setName(@NonNull String);
3264    method @NonNull public android.companion.virtual.VirtualDeviceParams.Builder setUsersWithMatchingAccounts(@NonNull java.util.Set<android.os.UserHandle>);
3265    method @NonNull public android.companion.virtual.VirtualDeviceParams.Builder setVirtualSensorCallback(@NonNull java.util.concurrent.Executor, @NonNull android.companion.virtual.sensor.VirtualSensorCallback);
3266    method @NonNull public android.companion.virtual.VirtualDeviceParams.Builder setVirtualSensorDirectChannelCallback(@NonNull java.util.concurrent.Executor, @NonNull android.companion.virtual.sensor.VirtualSensorDirectChannelCallback);
3267  }
3268
3269}
3270
3271package android.companion.virtual.audio {
3272
3273  public final class AudioCapture {
3274    method @NonNull public android.media.AudioFormat getFormat();
3275    method public int getRecordingState();
3276    method public int read(@NonNull byte[], int, int);
3277    method public int read(@NonNull byte[], int, int, int);
3278    method public int read(@NonNull java.nio.ByteBuffer, int);
3279    method public int read(@NonNull java.nio.ByteBuffer, int, int);
3280    method public int read(@NonNull float[], int, int, int);
3281    method public int read(@NonNull short[], int, int);
3282    method public int read(@NonNull short[], int, int, int);
3283    method public void startRecording();
3284    method public void stop();
3285  }
3286
3287  public final class AudioInjection {
3288    method @NonNull public android.media.AudioFormat getFormat();
3289    method public int getPlayState();
3290    method public void play();
3291    method public void stop();
3292    method public int write(@NonNull byte[], int, int);
3293    method public int write(@NonNull byte[], int, int, int);
3294    method public int write(@NonNull java.nio.ByteBuffer, int, int);
3295    method public int write(@NonNull java.nio.ByteBuffer, int, int, long);
3296    method public int write(@NonNull float[], int, int, int);
3297    method public int write(@NonNull short[], int, int);
3298    method public int write(@NonNull short[], int, int, int);
3299  }
3300
3301  public final class VirtualAudioDevice implements java.io.Closeable {
3302    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public void close();
3303    method @Nullable public android.companion.virtual.audio.AudioCapture getAudioCapture();
3304    method @Nullable public android.companion.virtual.audio.AudioInjection getAudioInjection();
3305    method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public android.companion.virtual.audio.AudioCapture startAudioCapture(@NonNull android.media.AudioFormat);
3306    method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public android.companion.virtual.audio.AudioInjection startAudioInjection(@NonNull android.media.AudioFormat);
3307  }
3308
3309  public static interface VirtualAudioDevice.AudioConfigurationChangeCallback {
3310    method public void onPlaybackConfigChanged(@NonNull java.util.List<android.media.AudioPlaybackConfiguration>);
3311    method public void onRecordingConfigChanged(@NonNull java.util.List<android.media.AudioRecordingConfiguration>);
3312  }
3313
3314}
3315
3316package android.companion.virtual.sensor {
3317
3318  public final class VirtualSensor implements android.os.Parcelable {
3319    method public int describeContents();
3320    method public int getDeviceId();
3321    method @NonNull public String getName();
3322    method public int getType();
3323    method @RequiresPermission(android.Manifest.permission.CREATE_VIRTUAL_DEVICE) public void sendEvent(@NonNull android.companion.virtual.sensor.VirtualSensorEvent);
3324    method public void writeToParcel(@NonNull android.os.Parcel, int);
3325    field @NonNull public static final android.os.Parcelable.Creator<android.companion.virtual.sensor.VirtualSensor> CREATOR;
3326  }
3327
3328  public interface VirtualSensorCallback {
3329    method public void onConfigurationChanged(@NonNull android.companion.virtual.sensor.VirtualSensor, boolean, @NonNull java.time.Duration, @NonNull java.time.Duration);
3330  }
3331
3332  public final class VirtualSensorConfig implements android.os.Parcelable {
3333    method public int describeContents();
3334    method public int getDirectChannelTypesSupported();
3335    method public int getHighestDirectReportRateLevel();
3336    method public int getMaxDelay();
3337    method public float getMaximumRange();
3338    method public int getMinDelay();
3339    method @NonNull public String getName();
3340    method public float getPower();
3341    method public float getResolution();
3342    method public int getType();
3343    method @Nullable public String getVendor();
3344    method public void writeToParcel(@NonNull android.os.Parcel, int);
3345    field @NonNull public static final android.os.Parcelable.Creator<android.companion.virtual.sensor.VirtualSensorConfig> CREATOR;
3346  }
3347
3348  public static final class VirtualSensorConfig.Builder {
3349    ctor public VirtualSensorConfig.Builder(@IntRange(from=1) int, @NonNull String);
3350    method @NonNull public android.companion.virtual.sensor.VirtualSensorConfig build();
3351    method @NonNull public android.companion.virtual.sensor.VirtualSensorConfig.Builder setDirectChannelTypesSupported(int);
3352    method @NonNull public android.companion.virtual.sensor.VirtualSensorConfig.Builder setHighestDirectReportRateLevel(int);
3353    method @NonNull public android.companion.virtual.sensor.VirtualSensorConfig.Builder setMaxDelay(int);
3354    method @NonNull public android.companion.virtual.sensor.VirtualSensorConfig.Builder setMaximumRange(float);
3355    method @NonNull public android.companion.virtual.sensor.VirtualSensorConfig.Builder setMinDelay(int);
3356    method @NonNull public android.companion.virtual.sensor.VirtualSensorConfig.Builder setPower(float);
3357    method @NonNull public android.companion.virtual.sensor.VirtualSensorConfig.Builder setResolution(float);
3358    method @NonNull public android.companion.virtual.sensor.VirtualSensorConfig.Builder setVendor(@Nullable String);
3359  }
3360
3361  public interface VirtualSensorDirectChannelCallback {
3362    method public void onDirectChannelConfigured(@IntRange(from=1) int, @NonNull android.companion.virtual.sensor.VirtualSensor, int, @IntRange(from=1) int);
3363    method public void onDirectChannelCreated(@IntRange(from=1) int, @NonNull android.os.SharedMemory);
3364    method public void onDirectChannelDestroyed(@IntRange(from=1) int);
3365  }
3366
3367  public final class VirtualSensorDirectChannelWriter implements java.lang.AutoCloseable {
3368    ctor public VirtualSensorDirectChannelWriter();
3369    method public void addChannel(@IntRange(from=1) int, @NonNull android.os.SharedMemory) throws android.system.ErrnoException;
3370    method public void close();
3371    method public boolean configureChannel(@IntRange(from=1) int, @NonNull android.companion.virtual.sensor.VirtualSensor, int, @IntRange(from=1) int);
3372    method public void removeChannel(@IntRange(from=1) int);
3373    method public boolean writeSensorEvent(@NonNull android.companion.virtual.sensor.VirtualSensor, @NonNull android.companion.virtual.sensor.VirtualSensorEvent);
3374  }
3375
3376  public final class VirtualSensorEvent implements android.os.Parcelable {
3377    method public int describeContents();
3378    method public long getTimestampNanos();
3379    method @NonNull public float[] getValues();
3380    method public void writeToParcel(@NonNull android.os.Parcel, int);
3381    field @NonNull public static final android.os.Parcelable.Creator<android.companion.virtual.sensor.VirtualSensorEvent> CREATOR;
3382  }
3383
3384  public static final class VirtualSensorEvent.Builder {
3385    ctor public VirtualSensorEvent.Builder(@NonNull float[]);
3386    method @NonNull public android.companion.virtual.sensor.VirtualSensorEvent build();
3387    method @NonNull public android.companion.virtual.sensor.VirtualSensorEvent.Builder setTimestampNanos(long);
3388  }
3389
3390}
3391
3392package android.content {
3393
3394  public class ApexEnvironment {
3395    method @NonNull public static android.content.ApexEnvironment getApexEnvironment(@NonNull String);
3396    method @NonNull public java.io.File getCredentialProtectedDataDirForUser(@NonNull android.os.UserHandle);
3397    method @NonNull public java.io.File getDeviceProtectedDataDir();
3398    method @NonNull public java.io.File getDeviceProtectedDataDirForUser(@NonNull android.os.UserHandle);
3399  }
3400
3401  public final class AttributionSource implements android.os.Parcelable {
3402    method @NonNull @RequiresPermission(android.Manifest.permission.RENOUNCE_PERMISSIONS) public java.util.Set<java.lang.String> getRenouncedPermissions();
3403  }
3404
3405  public static final class AttributionSource.Builder {
3406    method @NonNull @RequiresPermission(android.Manifest.permission.RENOUNCE_PERMISSIONS) public android.content.AttributionSource.Builder setRenouncedPermissions(@Nullable java.util.Set<java.lang.String>);
3407  }
3408
3409  public abstract class BroadcastReceiver {
3410    method @NonNull public final android.os.UserHandle getSendingUser();
3411  }
3412
3413  public class ClipboardManager extends android.text.ClipboardManager {
3414    method @RequiresPermission(android.Manifest.permission.MANAGE_CLIPBOARD_ACCESS_NOTIFICATION) public boolean areClipboardAccessNotificationsEnabled();
3415    method @RequiresPermission(android.Manifest.permission.MANAGE_CLIPBOARD_ACCESS_NOTIFICATION) public void setClipboardAccessNotificationsEnabled(boolean);
3416    method @RequiresPermission(android.Manifest.permission.SET_CLIP_SOURCE) public void setPrimaryClipAsPackage(@NonNull android.content.ClipData, @NonNull String);
3417  }
3418
3419  public abstract class ContentProvider implements android.content.ComponentCallbacks2 {
3420    method public int checkUriPermission(@NonNull android.net.Uri, int, int);
3421  }
3422
3423  public class ContentProviderClient implements java.lang.AutoCloseable {
3424    method @RequiresPermission(android.Manifest.permission.REMOVE_TASKS) public void setDetectNotResponding(long);
3425  }
3426
3427  public abstract class ContentResolver {
3428    method public int checkUriPermission(@NonNull android.net.Uri, int, int);
3429    method @NonNull public static android.net.Uri decodeFromFile(@NonNull java.io.File);
3430    method @NonNull public static java.io.File encodeToFile(@NonNull android.net.Uri);
3431    method @Nullable @RequiresPermission("android.permission.CACHE_CONTENT") public android.os.Bundle getCache(@NonNull android.net.Uri);
3432    method @RequiresPermission("android.permission.CACHE_CONTENT") public void putCache(@NonNull android.net.Uri, @Nullable android.os.Bundle);
3433  }
3434
3435  public abstract class Context {
3436    method @NonNull public android.content.Context createContextAsUser(@NonNull android.os.UserHandle, int);
3437    method public abstract android.content.Context createCredentialProtectedStorageContext();
3438    method @NonNull public android.content.Context createPackageContextAsUser(@NonNull String, int, @NonNull android.os.UserHandle) throws android.content.pm.PackageManager.NameNotFoundException;
3439    method @Nullable public abstract java.io.File getPreloadsFileCache();
3440    method public abstract boolean isCredentialProtectedStorage();
3441    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);
3442    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);
3443    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);
3444    method public void sendBroadcastMultiplePermissions(@NonNull android.content.Intent, @NonNull String[], @Nullable android.app.BroadcastOptions);
3445    method @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS) public void startActivityAsUser(@NonNull @RequiresPermission android.content.Intent, @NonNull android.os.UserHandle);
3446    method @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS) public void startActivityAsUser(@NonNull @RequiresPermission android.content.Intent, @Nullable android.os.Bundle, @NonNull android.os.UserHandle);
3447    field public static final String AMBIENT_CONTEXT_SERVICE = "ambient_context";
3448    field public static final String APP_HIBERNATION_SERVICE = "app_hibernation";
3449    field public static final String APP_INTEGRITY_SERVICE = "app_integrity";
3450    field public static final String APP_PREDICTION_SERVICE = "app_prediction";
3451    field public static final String AUDIO_DEVICE_VOLUME_SERVICE = "audio_device_volume";
3452    field public static final String BACKUP_SERVICE = "backup";
3453    field public static final String BATTERY_STATS_SERVICE = "batterystats";
3454    field public static final int BIND_ALLOW_BACKGROUND_ACTIVITY_STARTS = 1048576; // 0x100000
3455    field @Deprecated public static final int BIND_ALLOW_FOREGROUND_SERVICE_STARTS_FROM_BACKGROUND = 262144; // 0x40000
3456    field public static final String CLOUDSEARCH_SERVICE = "cloudsearch";
3457    field public static final String CONTENT_SUGGESTIONS_SERVICE = "content_suggestions";
3458    field public static final String CONTEXTHUB_SERVICE = "contexthub";
3459    field public static final String ETHERNET_SERVICE = "ethernet";
3460    field public static final String EUICC_CARD_SERVICE = "euicc_card";
3461    field public static final String FONT_SERVICE = "font";
3462    field public static final String HDMI_CONTROL_SERVICE = "hdmi_control";
3463    field public static final String MEDIA_TRANSCODING_SERVICE = "media_transcoding";
3464    field public static final String MUSIC_RECOGNITION_SERVICE = "music_recognition";
3465    field public static final String NEARBY_SERVICE = "nearby";
3466    field public static final String NETD_SERVICE = "netd";
3467    field @Deprecated public static final String NETWORK_SCORE_SERVICE = "network_score";
3468    field public static final String OEM_LOCK_SERVICE = "oem_lock";
3469    field public static final String PERMISSION_CONTROLLER_SERVICE = "permission_controller";
3470    field public static final String PERMISSION_SERVICE = "permission";
3471    field public static final String PERSISTENT_DATA_BLOCK_SERVICE = "persistent_data_block";
3472    field public static final String REBOOT_READINESS_SERVICE = "reboot_readiness";
3473    field public static final String ROLLBACK_SERVICE = "rollback";
3474    field public static final String SAFETY_CENTER_SERVICE = "safety_center";
3475    field public static final String SEARCH_UI_SERVICE = "search_ui";
3476    field public static final String SECURE_ELEMENT_SERVICE = "secure_element";
3477    field public static final String SHARED_CONNECTIVITY_SERVICE = "shared_connectivity";
3478    field public static final String SMARTSPACE_SERVICE = "smartspace";
3479    field public static final String STATS_MANAGER = "stats";
3480    field public static final String SYSTEM_CONFIG_SERVICE = "system_config";
3481    field public static final String SYSTEM_UPDATE_SERVICE = "system_update";
3482    field public static final String TETHERING_SERVICE = "tethering";
3483    field public static final String TIME_MANAGER_SERVICE = "time_manager";
3484    field public static final String TRANSLATION_MANAGER_SERVICE = "translation";
3485    field public static final String UI_TRANSLATION_SERVICE = "ui_translation";
3486    field public static final String UWB_SERVICE = "uwb";
3487    field public static final String VIRTUALIZATION_SERVICE = "virtualization";
3488    field public static final String VR_SERVICE = "vrmanager";
3489    field public static final String WALLPAPER_EFFECTS_GENERATION_SERVICE = "wallpaper_effects_generation";
3490    field public static final String WEARABLE_SENSING_SERVICE = "wearable_sensing";
3491    field public static final String WIFI_NL80211_SERVICE = "wifinl80211";
3492    field @Deprecated public static final String WIFI_RTT_SERVICE = "rttmanager";
3493    field public static final String WIFI_SCANNING_SERVICE = "wifiscanner";
3494  }
3495
3496  public final class ContextParams {
3497    method @NonNull @RequiresPermission(android.Manifest.permission.RENOUNCE_PERMISSIONS) public java.util.Set<java.lang.String> getRenouncedPermissions();
3498  }
3499
3500  public static final class ContextParams.Builder {
3501    method @NonNull @RequiresPermission(android.Manifest.permission.RENOUNCE_PERMISSIONS) public android.content.ContextParams.Builder setRenouncedPermissions(@Nullable java.util.Set<java.lang.String>);
3502  }
3503
3504  public class ContextWrapper extends android.content.Context {
3505    method public android.content.Context createCredentialProtectedStorageContext();
3506    method @Nullable public java.io.File getPreloadsFileCache();
3507    method public boolean isCredentialProtectedStorage();
3508    method public void sendBroadcastAsUser(android.content.Intent, android.os.UserHandle, @Nullable String, @Nullable android.os.Bundle);
3509  }
3510
3511  public class Intent implements java.lang.Cloneable android.os.Parcelable {
3512    field public static final String ACTION_ACTIVITY_RECOGNIZER = "android.intent.action.ACTIVITY_RECOGNIZER";
3513    field public static final String ACTION_BATTERY_LEVEL_CHANGED = "android.intent.action.BATTERY_LEVEL_CHANGED";
3514    field public static final String ACTION_CALL_EMERGENCY = "android.intent.action.CALL_EMERGENCY";
3515    field public static final String ACTION_CALL_PRIVILEGED = "android.intent.action.CALL_PRIVILEGED";
3516    field public static final String ACTION_DEVICE_CUSTOMIZATION_READY = "android.intent.action.DEVICE_CUSTOMIZATION_READY";
3517    field public static final String ACTION_DIAL_EMERGENCY = "android.intent.action.DIAL_EMERGENCY";
3518    field public static final String ACTION_DOMAINS_NEED_VERIFICATION = "android.intent.action.DOMAINS_NEED_VERIFICATION";
3519    field public static final String ACTION_FACTORY_RESET = "android.intent.action.FACTORY_RESET";
3520    field public static final String ACTION_GLOBAL_BUTTON = "android.intent.action.GLOBAL_BUTTON";
3521    field public static final String ACTION_INCIDENT_REPORT_READY = "android.intent.action.INCIDENT_REPORT_READY";
3522    field public static final String ACTION_INSTALL_INSTANT_APP_PACKAGE = "android.intent.action.INSTALL_INSTANT_APP_PACKAGE";
3523    field public static final String ACTION_INSTANT_APP_RESOLVER_SETTINGS = "android.intent.action.INSTANT_APP_RESOLVER_SETTINGS";
3524    field @Deprecated public static final String ACTION_INTENT_FILTER_NEEDS_VERIFICATION = "android.intent.action.INTENT_FILTER_NEEDS_VERIFICATION";
3525    field public static final String ACTION_LOAD_DATA = "android.intent.action.LOAD_DATA";
3526    field @RequiresPermission(android.Manifest.permission.GRANT_RUNTIME_PERMISSIONS) public static final String ACTION_MANAGE_APP_PERMISSION = "android.intent.action.MANAGE_APP_PERMISSION";
3527    field public static final String ACTION_MANAGE_APP_PERMISSIONS = "android.intent.action.MANAGE_APP_PERMISSIONS";
3528    field @RequiresPermission(android.Manifest.permission.MANAGE_ROLE_HOLDERS) public static final String ACTION_MANAGE_DEFAULT_APP = "android.intent.action.MANAGE_DEFAULT_APP";
3529    field public static final String ACTION_MANAGE_PERMISSIONS = "android.intent.action.MANAGE_PERMISSIONS";
3530    field public static final String ACTION_MANAGE_PERMISSION_APPS = "android.intent.action.MANAGE_PERMISSION_APPS";
3531    field @RequiresPermission(android.Manifest.permission.START_VIEW_PERMISSION_USAGE) public static final String ACTION_MANAGE_PERMISSION_USAGE = "android.intent.action.MANAGE_PERMISSION_USAGE";
3532    field @RequiresPermission(android.Manifest.permission.MANAGE_ROLE_HOLDERS) public static final String ACTION_MANAGE_SPECIAL_APP_ACCESSES = "android.intent.action.MANAGE_SPECIAL_APP_ACCESSES";
3533    field public static final String ACTION_MASTER_CLEAR_NOTIFICATION = "android.intent.action.MASTER_CLEAR_NOTIFICATION";
3534    field public static final String ACTION_PACKAGE_NEEDS_INTEGRITY_VERIFICATION = "android.intent.action.PACKAGE_NEEDS_INTEGRITY_VERIFICATION";
3535    field public static final String ACTION_PACKAGE_UNSUSPENDED_MANUALLY = "android.intent.action.PACKAGE_UNSUSPENDED_MANUALLY";
3536    field public static final String ACTION_PENDING_INCIDENT_REPORTS_CHANGED = "android.intent.action.PENDING_INCIDENT_REPORTS_CHANGED";
3537    field public static final String ACTION_PRE_BOOT_COMPLETED = "android.intent.action.PRE_BOOT_COMPLETED";
3538    field public static final String ACTION_QUERY_PACKAGE_RESTART = "android.intent.action.QUERY_PACKAGE_RESTART";
3539    field public static final String ACTION_RESOLVE_INSTANT_APP_PACKAGE = "android.intent.action.RESOLVE_INSTANT_APP_PACKAGE";
3540    field @RequiresPermission(android.Manifest.permission.REVIEW_ACCESSIBILITY_SERVICES) public static final String ACTION_REVIEW_ACCESSIBILITY_SERVICES = "android.intent.action.REVIEW_ACCESSIBILITY_SERVICES";
3541    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";
3542    field @RequiresPermission(android.Manifest.permission.GRANT_RUNTIME_PERMISSIONS) public static final String ACTION_REVIEW_ONGOING_PERMISSION_USAGE = "android.intent.action.REVIEW_ONGOING_PERMISSION_USAGE";
3543    field public static final String ACTION_REVIEW_PERMISSIONS = "android.intent.action.REVIEW_PERMISSIONS";
3544    field @RequiresPermission(android.Manifest.permission.GRANT_RUNTIME_PERMISSIONS) public static final String ACTION_REVIEW_PERMISSION_HISTORY = "android.intent.action.REVIEW_PERMISSION_HISTORY";
3545    field @RequiresPermission(android.Manifest.permission.GRANT_RUNTIME_PERMISSIONS) public static final String ACTION_REVIEW_PERMISSION_USAGE = "android.intent.action.REVIEW_PERMISSION_USAGE";
3546    field public static final String ACTION_ROLLBACK_COMMITTED = "android.intent.action.ROLLBACK_COMMITTED";
3547    field public static final String ACTION_SHOW_SUSPENDED_APP_DETAILS = "android.intent.action.SHOW_SUSPENDED_APP_DETAILS";
3548    field @Deprecated public static final String ACTION_SIM_STATE_CHANGED = "android.intent.action.SIM_STATE_CHANGED";
3549    field public static final String ACTION_SPLIT_CONFIGURATION_CHANGED = "android.intent.action.SPLIT_CONFIGURATION_CHANGED";
3550    field public static final String ACTION_UPGRADE_SETUP = "android.intent.action.UPGRADE_SETUP";
3551    field public static final String ACTION_USER_ADDED = "android.intent.action.USER_ADDED";
3552    field public static final String ACTION_USER_REMOVED = "android.intent.action.USER_REMOVED";
3553    field public static final String ACTION_USER_SWITCHED = "android.intent.action.USER_SWITCHED";
3554    field @RequiresPermission(android.Manifest.permission.START_VIEW_APP_FEATURES) public static final String ACTION_VIEW_APP_FEATURES = "android.intent.action.VIEW_APP_FEATURES";
3555    field @RequiresPermission(android.Manifest.permission.MANAGE_SENSOR_PRIVACY) public static final String ACTION_VIEW_SAFETY_CENTER_QS = "android.intent.action.VIEW_SAFETY_CENTER_QS";
3556    field public static final String ACTION_VOICE_ASSIST = "android.intent.action.VOICE_ASSIST";
3557    field public static final String CATEGORY_LEANBACK_SETTINGS = "android.intent.category.LEANBACK_SETTINGS";
3558    field public static final String EXTRA_CALLING_PACKAGE = "android.intent.extra.CALLING_PACKAGE";
3559    field public static final String EXTRA_FORCE_FACTORY_RESET = "android.intent.extra.FORCE_FACTORY_RESET";
3560    field public static final String EXTRA_INSTALL_RESULT = "android.intent.extra.INSTALL_RESULT";
3561    field public static final String EXTRA_INSTANT_APP_ACTION = "android.intent.extra.INSTANT_APP_ACTION";
3562    field public static final String EXTRA_INSTANT_APP_BUNDLES = "android.intent.extra.INSTANT_APP_BUNDLES";
3563    field public static final String EXTRA_INSTANT_APP_EXTRAS = "android.intent.extra.INSTANT_APP_EXTRAS";
3564    field public static final String EXTRA_INSTANT_APP_FAILURE = "android.intent.extra.INSTANT_APP_FAILURE";
3565    field public static final String EXTRA_INSTANT_APP_HOSTNAME = "android.intent.extra.INSTANT_APP_HOSTNAME";
3566    field public static final String EXTRA_INSTANT_APP_SUCCESS = "android.intent.extra.INSTANT_APP_SUCCESS";
3567    field public static final String EXTRA_INSTANT_APP_TOKEN = "android.intent.extra.INSTANT_APP_TOKEN";
3568    field public static final String EXTRA_LONG_VERSION_CODE = "android.intent.extra.LONG_VERSION_CODE";
3569    field public static final String EXTRA_ORIGINATING_UID = "android.intent.extra.ORIGINATING_UID";
3570    field public static final String EXTRA_PERMISSION_NAME = "android.intent.extra.PERMISSION_NAME";
3571    field public static final String EXTRA_REASON = "android.intent.extra.REASON";
3572    field public static final String EXTRA_REMOTE_CALLBACK = "android.intent.extra.REMOTE_CALLBACK";
3573    field public static final String EXTRA_RESULT_NEEDED = "android.intent.extra.RESULT_NEEDED";
3574    field public static final String EXTRA_ROLE_NAME = "android.intent.extra.ROLE_NAME";
3575    field public static final String EXTRA_SHOWING_ATTRIBUTION = "android.intent.extra.SHOWING_ATTRIBUTION";
3576    field public static final String EXTRA_UNINSTALL_ALL_USERS = "android.intent.extra.UNINSTALL_ALL_USERS";
3577    field public static final String EXTRA_UNKNOWN_INSTANT_APP = "android.intent.extra.UNKNOWN_INSTANT_APP";
3578    field public static final String EXTRA_USER_HANDLE = "android.intent.extra.user_handle";
3579    field public static final String EXTRA_VERIFICATION_BUNDLE = "android.intent.extra.VERIFICATION_BUNDLE";
3580    field public static final int FLAG_RECEIVER_INCLUDE_BACKGROUND = 16777216; // 0x1000000
3581    field public static final int FLAG_RECEIVER_REGISTERED_ONLY_BEFORE_BOOT = 67108864; // 0x4000000
3582    field public static final String METADATA_SETUP_VERSION = "android.SETUP_VERSION";
3583  }
3584
3585  public class IntentFilter implements android.os.Parcelable {
3586    method public final int getOrder();
3587    method public final void setOrder(int);
3588  }
3589
3590}
3591
3592package android.content.integrity {
3593
3594  public class AppIntegrityManager {
3595    method @NonNull public String getCurrentRuleSetProvider();
3596    method @NonNull public String getCurrentRuleSetVersion();
3597    method public void updateRuleSet(@NonNull android.content.integrity.RuleSet, @NonNull android.content.IntentSender);
3598    field public static final String EXTRA_STATUS = "android.content.integrity.extra.STATUS";
3599    field public static final int STATUS_FAILURE = 1; // 0x1
3600    field public static final int STATUS_SUCCESS = 0; // 0x0
3601  }
3602
3603  public abstract class IntegrityFormula {
3604    method @NonNull public static android.content.integrity.IntegrityFormula all(@NonNull android.content.integrity.IntegrityFormula...);
3605    method @NonNull public static android.content.integrity.IntegrityFormula any(@NonNull android.content.integrity.IntegrityFormula...);
3606    method @NonNull public static android.content.integrity.IntegrityFormula not(@NonNull android.content.integrity.IntegrityFormula);
3607  }
3608
3609  public static final class IntegrityFormula.Application {
3610    method @NonNull public static android.content.integrity.IntegrityFormula certificateLineageContains(@NonNull String);
3611    method @NonNull public static android.content.integrity.IntegrityFormula certificatesContain(@NonNull String);
3612    method @NonNull public static android.content.integrity.IntegrityFormula isPreInstalled();
3613    method @NonNull public static android.content.integrity.IntegrityFormula packageNameEquals(@NonNull String);
3614    method @NonNull public static android.content.integrity.IntegrityFormula versionCodeEquals(@NonNull long);
3615    method @NonNull public static android.content.integrity.IntegrityFormula versionCodeGreaterThan(@NonNull long);
3616    method @NonNull public static android.content.integrity.IntegrityFormula versionCodeGreaterThanOrEqualTo(@NonNull long);
3617  }
3618
3619  public static final class IntegrityFormula.Installer {
3620    method @NonNull public static android.content.integrity.IntegrityFormula certificatesContain(@NonNull String);
3621    method @NonNull public static android.content.integrity.IntegrityFormula notAllowedByManifest();
3622    method @NonNull public static android.content.integrity.IntegrityFormula packageNameEquals(@NonNull String);
3623  }
3624
3625  public static final class IntegrityFormula.SourceStamp {
3626    method @NonNull public static android.content.integrity.IntegrityFormula notTrusted();
3627    method @NonNull public static android.content.integrity.IntegrityFormula stampCertificateHashEquals(@NonNull String);
3628  }
3629
3630  public final class Rule implements android.os.Parcelable {
3631    ctor public Rule(@NonNull android.content.integrity.IntegrityFormula, int);
3632    method public int describeContents();
3633    method public int getEffect();
3634    method @NonNull public android.content.integrity.IntegrityFormula getFormula();
3635    method public void writeToParcel(@NonNull android.os.Parcel, int);
3636    field @NonNull public static final android.os.Parcelable.Creator<android.content.integrity.Rule> CREATOR;
3637    field public static final int DENY = 0; // 0x0
3638    field public static final int FORCE_ALLOW = 1; // 0x1
3639  }
3640
3641  public class RuleSet {
3642    method @NonNull public java.util.List<android.content.integrity.Rule> getRules();
3643    method @NonNull public String getVersion();
3644  }
3645
3646  public static class RuleSet.Builder {
3647    ctor public RuleSet.Builder();
3648    method @NonNull public android.content.integrity.RuleSet.Builder addRules(@NonNull java.util.List<android.content.integrity.Rule>);
3649    method @NonNull public android.content.integrity.RuleSet build();
3650    method @NonNull public android.content.integrity.RuleSet.Builder setVersion(@NonNull String);
3651  }
3652
3653}
3654
3655package android.content.om {
3656
3657  public final class OverlayInfo implements android.os.Parcelable {
3658    method @Nullable public String getCategory();
3659    method @NonNull public String getPackageName();
3660    method public int getUserId();
3661    method public boolean isEnabled();
3662  }
3663
3664  public class OverlayManager {
3665    method @Nullable public android.content.om.OverlayInfo getOverlayInfo(@NonNull String, @NonNull android.os.UserHandle);
3666    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);
3667    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;
3668    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;
3669  }
3670
3671}
3672
3673package android.content.pm {
3674
3675  public class ApplicationInfo extends android.content.pm.PackageItemInfo implements android.os.Parcelable {
3676    method @RequiresPermission(android.Manifest.permission.DELETE_PACKAGES) public boolean hasFragileUserData();
3677    method public boolean isEncryptionAware();
3678    method public boolean isInstantApp();
3679    method public boolean isOem();
3680    method @RequiresPermission(android.Manifest.permission.INSTALL_PACKAGES) public boolean isPrivilegedApp();
3681    method public boolean isProduct();
3682    method public boolean isVendor();
3683    field public String credentialProtectedDataDir;
3684    field public int targetSandboxVersion;
3685  }
3686
3687  public class CrossProfileApps {
3688    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);
3689    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);
3690  }
3691
3692  public class DataLoaderParams {
3693    method @NonNull public static final android.content.pm.DataLoaderParams forIncremental(@NonNull android.content.ComponentName, @NonNull String);
3694    method @NonNull public static final android.content.pm.DataLoaderParams forStreaming(@NonNull android.content.ComponentName, @NonNull String);
3695    method @NonNull public final String getArguments();
3696    method @NonNull public final android.content.ComponentName getComponentName();
3697    method @NonNull public final int getType();
3698  }
3699
3700  public final class InstallationFile {
3701    method public long getLengthBytes();
3702    method public int getLocation();
3703    method @Nullable public byte[] getMetadata();
3704    method @NonNull public String getName();
3705    method @Nullable public byte[] getSignature();
3706  }
3707
3708  public final class InstantAppInfo implements android.os.Parcelable {
3709    ctor public InstantAppInfo(android.content.pm.ApplicationInfo, String[], String[]);
3710    ctor public InstantAppInfo(String, CharSequence, String[], String[]);
3711    method public int describeContents();
3712    method @Nullable public android.content.pm.ApplicationInfo getApplicationInfo();
3713    method @Nullable public String[] getGrantedPermissions();
3714    method @NonNull public String getPackageName();
3715    method @Nullable public String[] getRequestedPermissions();
3716    method @NonNull public android.graphics.drawable.Drawable loadIcon(@NonNull android.content.pm.PackageManager);
3717    method @NonNull public CharSequence loadLabel(@NonNull android.content.pm.PackageManager);
3718    method public void writeToParcel(android.os.Parcel, int);
3719    field @NonNull public static final android.os.Parcelable.Creator<android.content.pm.InstantAppInfo> CREATOR;
3720  }
3721
3722  public final class InstantAppIntentFilter implements android.os.Parcelable {
3723    ctor public InstantAppIntentFilter(@Nullable String, @NonNull java.util.List<android.content.IntentFilter>);
3724    method public int describeContents();
3725    method public java.util.List<android.content.IntentFilter> getFilters();
3726    method public String getSplitName();
3727    method public void writeToParcel(android.os.Parcel, int);
3728    field @NonNull public static final android.os.Parcelable.Creator<android.content.pm.InstantAppIntentFilter> CREATOR;
3729  }
3730
3731  public final class InstantAppRequestInfo implements android.os.Parcelable {
3732    ctor public InstantAppRequestInfo(@NonNull android.content.Intent, @Nullable int[], @NonNull android.os.UserHandle, boolean, @NonNull String);
3733    method public int describeContents();
3734    method @Nullable public int[] getHostDigestPrefix();
3735    method @NonNull public android.content.Intent getIntent();
3736    method @NonNull public String getToken();
3737    method @NonNull public android.os.UserHandle getUserHandle();
3738    method public boolean isRequesterInstantApp();
3739    method public void writeToParcel(@NonNull android.os.Parcel, int);
3740    field @NonNull public static final android.os.Parcelable.Creator<android.content.pm.InstantAppRequestInfo> CREATOR;
3741  }
3742
3743  public final class InstantAppResolveInfo implements android.os.Parcelable {
3744    ctor public InstantAppResolveInfo(@NonNull android.content.pm.InstantAppResolveInfo.InstantAppDigest, @Nullable String, @Nullable java.util.List<android.content.pm.InstantAppIntentFilter>, int);
3745    ctor public InstantAppResolveInfo(@NonNull android.content.pm.InstantAppResolveInfo.InstantAppDigest, @Nullable String, @Nullable java.util.List<android.content.pm.InstantAppIntentFilter>, long, @Nullable android.os.Bundle);
3746    ctor public InstantAppResolveInfo(@NonNull String, @Nullable String, @Nullable java.util.List<android.content.pm.InstantAppIntentFilter>);
3747    ctor public InstantAppResolveInfo(@Nullable android.os.Bundle);
3748    method public int describeContents();
3749    method public byte[] getDigestBytes();
3750    method public int getDigestPrefix();
3751    method @Nullable public android.os.Bundle getExtras();
3752    method public java.util.List<android.content.pm.InstantAppIntentFilter> getIntentFilters();
3753    method public long getLongVersionCode();
3754    method public String getPackageName();
3755    method @Deprecated public int getVersionCode();
3756    method public boolean shouldLetInstallerDecide();
3757    method public void writeToParcel(android.os.Parcel, int);
3758    field @NonNull public static final android.os.Parcelable.Creator<android.content.pm.InstantAppResolveInfo> CREATOR;
3759  }
3760
3761  public static final class InstantAppResolveInfo.InstantAppDigest implements android.os.Parcelable {
3762    ctor public InstantAppResolveInfo.InstantAppDigest(@NonNull String);
3763    method public int describeContents();
3764    method public byte[][] getDigestBytes();
3765    method public int[] getDigestPrefix();
3766    method public void writeToParcel(android.os.Parcel, int);
3767    field @NonNull public static final android.os.Parcelable.Creator<android.content.pm.InstantAppResolveInfo.InstantAppDigest> CREATOR;
3768    field public static final android.content.pm.InstantAppResolveInfo.InstantAppDigest UNDEFINED;
3769  }
3770
3771  public final class IntentFilterVerificationInfo implements android.os.Parcelable {
3772    method public int describeContents();
3773    method public java.util.Set<java.lang.String> getDomains();
3774    method public String getPackageName();
3775    method public int getStatus();
3776    method public void writeToParcel(android.os.Parcel, int);
3777    field @NonNull public static final android.os.Parcelable.Creator<android.content.pm.IntentFilterVerificationInfo> CREATOR;
3778  }
3779
3780  public class LauncherApps {
3781    method @Nullable public android.content.pm.LauncherApps.AppUsageLimit getAppUsageLimit(@NonNull String, @NonNull android.os.UserHandle);
3782  }
3783
3784  public static final class LauncherApps.AppUsageLimit implements android.os.Parcelable {
3785    method public int describeContents();
3786    method public long getTotalUsageLimit();
3787    method public long getUsageRemaining();
3788    method public void writeToParcel(android.os.Parcel, int);
3789    field @NonNull public static final android.os.Parcelable.Creator<android.content.pm.LauncherApps.AppUsageLimit> CREATOR;
3790  }
3791
3792  public static class LauncherApps.ShortcutQuery {
3793    field public static final int FLAG_GET_PERSISTED_DATA = 4096; // 0x1000
3794    field @RequiresPermission(android.Manifest.permission.ACCESS_SHORTCUTS) public static final int FLAG_GET_PERSONS_DATA = 2048; // 0x800
3795  }
3796
3797  public class PackageInstaller {
3798    method @NonNull public android.content.pm.PackageInstaller.InstallInfo readInstallInfo(@NonNull java.io.File, int) throws android.content.pm.PackageInstaller.PackageParsingException;
3799    method @RequiresPermission(android.Manifest.permission.INSTALL_PACKAGES) public void setPermissionsResult(int, boolean);
3800    field public static final String ACTION_CONFIRM_INSTALL = "android.content.pm.action.CONFIRM_INSTALL";
3801    field public static final String ACTION_CONFIRM_PRE_APPROVAL = "android.content.pm.action.CONFIRM_PRE_APPROVAL";
3802    field public static final int DATA_LOADER_TYPE_INCREMENTAL = 2; // 0x2
3803    field public static final int DATA_LOADER_TYPE_NONE = 0; // 0x0
3804    field public static final int DATA_LOADER_TYPE_STREAMING = 1; // 0x1
3805    field public static final String EXTRA_CALLBACK = "android.content.pm.extra.CALLBACK";
3806    field public static final String EXTRA_DATA_LOADER_TYPE = "android.content.pm.extra.DATA_LOADER_TYPE";
3807    field public static final String EXTRA_LEGACY_STATUS = "android.content.pm.extra.LEGACY_STATUS";
3808    field public static final String EXTRA_RESOLVED_BASE_PATH = "android.content.pm.extra.RESOLVED_BASE_PATH";
3809    field public static final int LOCATION_DATA_APP = 0; // 0x0
3810    field public static final int LOCATION_MEDIA_DATA = 2; // 0x2
3811    field public static final int LOCATION_MEDIA_OBB = 1; // 0x1
3812    field public static final int REASON_CONFIRM_PACKAGE_CHANGE = 0; // 0x0
3813    field public static final int REASON_OWNERSHIP_CHANGED = 1; // 0x1
3814    field public static final int REASON_REMIND_OWNERSHIP = 2; // 0x2
3815  }
3816
3817  public static class PackageInstaller.InstallInfo {
3818    method public long calculateInstalledSize(@NonNull android.content.pm.PackageInstaller.SessionParams) throws java.io.IOException;
3819    method public int getInstallLocation();
3820    method @NonNull public String getPackageName();
3821  }
3822
3823  public static class PackageInstaller.PackageParsingException extends java.lang.Exception {
3824    method public int getErrorCode();
3825  }
3826
3827  public static class PackageInstaller.Session implements java.io.Closeable {
3828    method @RequiresPermission("com.android.permission.USE_INSTALLER_V2") public void addFile(int, @NonNull String, long, @NonNull byte[], @Nullable byte[]);
3829    method @RequiresPermission(android.Manifest.permission.INSTALL_PACKAGES) public void commitTransferred(@NonNull android.content.IntentSender);
3830    method @Nullable @RequiresPermission("com.android.permission.USE_INSTALLER_V2") public android.content.pm.DataLoaderParams getDataLoaderParams();
3831    method @RequiresPermission("com.android.permission.USE_INSTALLER_V2") public void removeFile(int, @NonNull String);
3832  }
3833
3834  public static class PackageInstaller.SessionInfo implements android.os.Parcelable {
3835    method public boolean getAllocateAggressive();
3836    method @Deprecated public boolean getAllowDowngrade();
3837    method public int getAutoRevokePermissionsMode();
3838    method public boolean getEnableRollback();
3839    method @Nullable public String[] getGrantedRuntimePermissions();
3840    method public boolean getInstallAsFullApp(boolean);
3841    method public boolean getInstallAsInstantApp(boolean);
3842    method public boolean getInstallAsVirtualPreload();
3843    method public int getPendingUserActionReason();
3844    method public boolean getRequestDowngrade();
3845    method public int getRollbackDataPolicy();
3846    method @NonNull public java.util.Set<java.lang.String> getWhitelistedRestrictedPermissions();
3847  }
3848
3849  public static class PackageInstaller.SessionParams implements android.os.Parcelable {
3850    method @RequiresPermission(android.Manifest.permission.ALLOCATE_AGGRESSIVE) public void setAllocateAggressive(boolean);
3851    method @Deprecated public void setAllowDowngrade(boolean);
3852    method @RequiresPermission(allOf={android.Manifest.permission.INSTALL_PACKAGES, "com.android.permission.USE_INSTALLER_V2"}) public void setDataLoaderParams(@NonNull android.content.pm.DataLoaderParams);
3853    method public void setEnableRollback(boolean);
3854    method public void setEnableRollback(boolean, int);
3855    method @Deprecated @RequiresPermission(android.Manifest.permission.INSTALL_GRANT_RUNTIME_PERMISSIONS) public void setGrantedRuntimePermissions(String[]);
3856    method @RequiresPermission(android.Manifest.permission.INSTALL_PACKAGES) public void setInstallAsApex();
3857    method public void setInstallAsInstantApp(boolean);
3858    method public void setInstallAsVirtualPreload();
3859    method public void setRequestDowngrade(boolean);
3860    method @RequiresPermission(android.Manifest.permission.INSTALL_PACKAGES) public void setStaged();
3861  }
3862
3863  public class PackageItemInfo {
3864    method public static void forceSafeLabels();
3865    method @Deprecated @NonNull public CharSequence loadSafeLabel(@NonNull android.content.pm.PackageManager);
3866    method @NonNull public CharSequence loadSafeLabel(@NonNull android.content.pm.PackageManager, @FloatRange(from=0) float, int);
3867  }
3868
3869  public abstract class PackageManager {
3870    method @RequiresPermission("android.permission.OBSERVE_GRANT_REVOKE_PERMISSIONS") public abstract void addOnPermissionsChangeListener(@NonNull android.content.pm.PackageManager.OnPermissionsChangedListener);
3871    method public abstract boolean arePermissionsIndividuallyControlled();
3872    method @NonNull public boolean canUserUninstall(@NonNull String, @NonNull android.os.UserHandle);
3873    method @NonNull public abstract java.util.List<android.content.IntentFilter> getAllIntentFilters(@NonNull String);
3874    method @NonNull @RequiresPermission(android.Manifest.permission.GET_APP_METADATA) public android.os.PersistableBundle getAppMetadata(@NonNull String) throws android.content.pm.PackageManager.NameNotFoundException;
3875    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;
3876    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;
3877    method @NonNull public android.content.pm.dex.ArtManager getArtManager();
3878    method @NonNull @RequiresPermission(android.Manifest.permission.ACCESS_SHARED_LIBRARIES) public java.util.List<android.content.pm.SharedLibraryInfo> getDeclaredSharedLibraries(@NonNull String, int);
3879    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);
3880    method @Nullable @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS_FULL) public abstract String getDefaultBrowserPackageNameAsUser(int);
3881    method @Nullable @RequiresPermission(android.Manifest.permission.SET_HARMFUL_APP_WARNINGS) public CharSequence getHarmfulAppWarning(@NonNull String);
3882    method @Nullable public String getIncidentReportApproverPackageName();
3883    method @NonNull @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS_FULL) public abstract java.util.List<android.content.pm.PackageInfo> getInstalledPackagesAsUser(int, int);
3884    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);
3885    method @Nullable @RequiresPermission(android.Manifest.permission.ACCESS_INSTANT_APPS) public abstract android.graphics.drawable.Drawable getInstantAppIcon(String);
3886    method @Nullable public abstract android.content.ComponentName getInstantAppInstallerComponent();
3887    method @Nullable public abstract android.content.ComponentName getInstantAppResolverSettingsComponent();
3888    method @NonNull @RequiresPermission(android.Manifest.permission.ACCESS_INSTANT_APPS) public abstract java.util.List<android.content.pm.InstantAppInfo> getInstantApps();
3889    method @Deprecated @NonNull public abstract java.util.List<android.content.pm.IntentFilterVerificationInfo> getIntentFilterVerifications(@NonNull String);
3890    method @Deprecated @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS_FULL) public abstract int getIntentVerificationStatusAsUser(@NonNull String, int);
3891    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;
3892    method @android.content.pm.PackageManager.PermissionFlags @RequiresPermission(anyOf={android.Manifest.permission.GRANT_RUNTIME_PERMISSIONS, android.Manifest.permission.REVOKE_RUNTIME_PERMISSIONS, android.Manifest.permission.GET_RUNTIME_PERMISSIONS}) public abstract int getPermissionFlags(@NonNull String, @NonNull String, @NonNull android.os.UserHandle);
3893    method @NonNull @RequiresPermission(android.Manifest.permission.SUSPEND_APPS) public String[] getUnsuspendablePackages(@NonNull String[]);
3894    method @RequiresPermission(android.Manifest.permission.GRANT_RUNTIME_PERMISSIONS) public abstract void grantRuntimePermission(@NonNull String, @NonNull String, @NonNull android.os.UserHandle);
3895    method @Deprecated public abstract int installExistingPackage(@NonNull String) throws android.content.pm.PackageManager.NameNotFoundException;
3896    method @Deprecated public abstract int installExistingPackage(@NonNull String, int) throws android.content.pm.PackageManager.NameNotFoundException;
3897    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);
3898    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);
3899    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);
3900    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);
3901    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);
3902    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);
3903    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);
3904    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);
3905    method public abstract void registerDexModule(@NonNull String, @Nullable android.content.pm.PackageManager.DexModuleRegisterCallback);
3906    method @RequiresPermission("android.permission.OBSERVE_GRANT_REVOKE_PERMISSIONS") public abstract void removeOnPermissionsChangeListener(@NonNull android.content.pm.PackageManager.OnPermissionsChangedListener);
3907    method public void replacePreferredActivity(@NonNull android.content.IntentFilter, int, @NonNull java.util.List<android.content.ComponentName>, @NonNull android.content.ComponentName);
3908    method @RequiresPermission(android.Manifest.permission.REVOKE_RUNTIME_PERMISSIONS) public abstract void revokeRuntimePermission(@NonNull String, @NonNull String, @NonNull android.os.UserHandle);
3909    method @RequiresPermission(android.Manifest.permission.REVOKE_RUNTIME_PERMISSIONS) public void revokeRuntimePermission(@NonNull String, @NonNull String, @NonNull android.os.UserHandle, @NonNull String);
3910    method public void sendDeviceCustomizationReadyBroadcast();
3911    method @RequiresPermission(allOf={android.Manifest.permission.SET_PREFERRED_APPLICATIONS, android.Manifest.permission.INTERACT_ACROSS_USERS_FULL}) public abstract boolean setDefaultBrowserPackageNameAsUser(@Nullable String, int);
3912    method @NonNull @RequiresPermission(android.Manifest.permission.SUSPEND_APPS) public String[] setDistractingPackageRestrictions(@NonNull String[], int);
3913    method @RequiresPermission(android.Manifest.permission.SET_HARMFUL_APP_WARNINGS) public void setHarmfulAppWarning(@NonNull String, @Nullable CharSequence);
3914    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);
3915    method @Nullable @RequiresPermission(android.Manifest.permission.SUSPEND_APPS) public String[] setPackagesSuspended(@Nullable String[], boolean, @Nullable android.os.PersistableBundle, @Nullable android.os.PersistableBundle, @Nullable android.content.pm.SuspendDialogInfo);
3916    method @RequiresPermission(value=android.Manifest.permission.CHANGE_COMPONENT_ENABLED_STATE, conditional=true) public void setSyntheticAppDetailsActivityEnabled(@NonNull String, boolean);
3917    method public void setSystemAppState(@NonNull String, int);
3918    method @RequiresPermission(android.Manifest.permission.INSTALL_PACKAGES) public abstract void setUpdateAvailable(@NonNull String, boolean);
3919    method @NonNull public boolean shouldShowNewAppInstalledNotification();
3920    method @Deprecated @RequiresPermission(android.Manifest.permission.SET_PREFERRED_APPLICATIONS) public abstract boolean updateIntentVerificationStatusAsUser(@NonNull String, int, int);
3921    method @RequiresPermission(anyOf={android.Manifest.permission.GRANT_RUNTIME_PERMISSIONS, android.Manifest.permission.REVOKE_RUNTIME_PERMISSIONS}) public abstract void updatePermissionFlags(@NonNull String, @NonNull String, @android.content.pm.PackageManager.PermissionFlags int, @android.content.pm.PackageManager.PermissionFlags int, @NonNull android.os.UserHandle);
3922    method @Deprecated @RequiresPermission(android.Manifest.permission.INTENT_FILTER_VERIFICATION_AGENT) public abstract void verifyIntentFilter(int, int, @NonNull java.util.List<java.lang.String>);
3923    field public static final String ACTION_REQUEST_PERMISSIONS = "android.content.pm.action.REQUEST_PERMISSIONS";
3924    field public static final String ACTION_REQUEST_PERMISSIONS_FOR_OTHER = "android.content.pm.action.REQUEST_PERMISSIONS_FOR_OTHER";
3925    field public static final int DELETE_ALL_USERS = 2; // 0x2
3926    field public static final int DELETE_FAILED_ABORTED = -5; // 0xfffffffb
3927    field public static final int DELETE_FAILED_DEVICE_POLICY_MANAGER = -2; // 0xfffffffe
3928    field public static final int DELETE_FAILED_INTERNAL_ERROR = -1; // 0xffffffff
3929    field public static final int DELETE_FAILED_OWNER_BLOCKED = -4; // 0xfffffffc
3930    field public static final int DELETE_KEEP_DATA = 1; // 0x1
3931    field public static final int DELETE_SUCCEEDED = 1; // 0x1
3932    field public static final String EXTRA_REQUEST_PERMISSIONS_LEGACY_ACCESS_PERMISSION_NAMES = "android.content.pm.extra.REQUEST_PERMISSIONS_LEGACY_ACCESS_PERMISSION_NAMES";
3933    field public static final String EXTRA_REQUEST_PERMISSIONS_NAMES = "android.content.pm.extra.REQUEST_PERMISSIONS_NAMES";
3934    field public static final String EXTRA_REQUEST_PERMISSIONS_RESULTS = "android.content.pm.extra.REQUEST_PERMISSIONS_RESULTS";
3935    field public static final String FEATURE_BROADCAST_RADIO = "android.hardware.broadcastradio";
3936    field public static final String FEATURE_CONTEXT_HUB = "android.hardware.context_hub";
3937    field public static final String FEATURE_EROFS = "android.software.erofs";
3938    field public static final String FEATURE_EROFS_LEGACY = "android.software.erofs_legacy";
3939    field public static final String FEATURE_GAME_SERVICE = "android.software.game_service";
3940    field public static final String FEATURE_INCREMENTAL_DELIVERY = "android.software.incremental_delivery";
3941    field public static final String FEATURE_REBOOT_ESCROW = "android.hardware.reboot_escrow";
3942    field public static final String FEATURE_TELEPHONY_CARRIERLOCK = "android.hardware.telephony.carrierlock";
3943    field public static final String FEATURE_TELEPHONY_IMS_SINGLE_REGISTRATION = "android.hardware.telephony.ims.singlereg";
3944    field public static final String FEATURE_VIRTUALIZATION_FRAMEWORK = "android.software.virtualization_framework";
3945    field public static final int FLAGS_PERMISSION_RESERVED_PERMISSION_CONTROLLER = -268435456; // 0xf0000000
3946    field public static final int FLAG_PERMISSION_APPLY_RESTRICTION = 16384; // 0x4000
3947    field public static final int FLAG_PERMISSION_AUTO_REVOKED = 131072; // 0x20000
3948    field public static final int FLAG_PERMISSION_GRANTED_BY_DEFAULT = 32; // 0x20
3949    field public static final int FLAG_PERMISSION_GRANTED_BY_ROLE = 32768; // 0x8000
3950    field public static final int FLAG_PERMISSION_ONE_TIME = 65536; // 0x10000
3951    field public static final int FLAG_PERMISSION_POLICY_FIXED = 4; // 0x4
3952    field public static final int FLAG_PERMISSION_RESTRICTION_INSTALLER_EXEMPT = 2048; // 0x800
3953    field public static final int FLAG_PERMISSION_RESTRICTION_SYSTEM_EXEMPT = 4096; // 0x1000
3954    field public static final int FLAG_PERMISSION_RESTRICTION_UPGRADE_EXEMPT = 8192; // 0x2000
3955    field public static final int FLAG_PERMISSION_REVIEW_REQUIRED = 64; // 0x40
3956    field public static final int FLAG_PERMISSION_REVOKED_COMPAT = 8; // 0x8
3957    field @Deprecated public static final int FLAG_PERMISSION_REVOKE_ON_UPGRADE = 8; // 0x8
3958    field public static final int FLAG_PERMISSION_REVOKE_WHEN_REQUESTED = 128; // 0x80
3959    field public static final int FLAG_PERMISSION_SELECTED_LOCATION_ACCURACY = 524288; // 0x80000
3960    field public static final int FLAG_PERMISSION_SYSTEM_FIXED = 16; // 0x10
3961    field public static final int FLAG_PERMISSION_USER_FIXED = 2; // 0x2
3962    field public static final int FLAG_PERMISSION_USER_SENSITIVE_WHEN_DENIED = 512; // 0x200
3963    field public static final int FLAG_PERMISSION_USER_SENSITIVE_WHEN_GRANTED = 256; // 0x100
3964    field public static final int FLAG_PERMISSION_USER_SET = 1; // 0x1
3965    field public static final int INSTALL_FAILED_ALREADY_EXISTS = -1; // 0xffffffff
3966    field public static final int INSTALL_FAILED_CONFLICTING_PROVIDER = -13; // 0xfffffff3
3967    field public static final int INSTALL_FAILED_CONTAINER_ERROR = -18; // 0xffffffee
3968    field public static final int INSTALL_FAILED_CPU_ABI_INCOMPATIBLE = -16; // 0xfffffff0
3969    field public static final int INSTALL_FAILED_DEXOPT = -11; // 0xfffffff5
3970    field public static final int INSTALL_FAILED_DUPLICATE_PACKAGE = -5; // 0xfffffffb
3971    field public static final int INSTALL_FAILED_INSUFFICIENT_STORAGE = -4; // 0xfffffffc
3972    field public static final int INSTALL_FAILED_INTERNAL_ERROR = -110; // 0xffffff92
3973    field public static final int INSTALL_FAILED_INVALID_APK = -2; // 0xfffffffe
3974    field public static final int INSTALL_FAILED_INVALID_INSTALL_LOCATION = -19; // 0xffffffed
3975    field public static final int INSTALL_FAILED_INVALID_URI = -3; // 0xfffffffd
3976    field public static final int INSTALL_FAILED_MEDIA_UNAVAILABLE = -20; // 0xffffffec
3977    field public static final int INSTALL_FAILED_MISSING_FEATURE = -17; // 0xffffffef
3978    field public static final int INSTALL_FAILED_MISSING_SHARED_LIBRARY = -9; // 0xfffffff7
3979    field public static final int INSTALL_FAILED_NEWER_SDK = -14; // 0xfffffff2
3980    field public static final int INSTALL_FAILED_NO_SHARED_USER = -6; // 0xfffffffa
3981    field public static final int INSTALL_FAILED_OLDER_SDK = -12; // 0xfffffff4
3982    field public static final int INSTALL_FAILED_PACKAGE_CHANGED = -23; // 0xffffffe9
3983    field public static final int INSTALL_FAILED_PERMISSION_MODEL_DOWNGRADE = -26; // 0xffffffe6
3984    field public static final int INSTALL_FAILED_REPLACE_COULDNT_DELETE = -10; // 0xfffffff6
3985    field public static final int INSTALL_FAILED_SANDBOX_VERSION_DOWNGRADE = -27; // 0xffffffe5
3986    field public static final int INSTALL_FAILED_SHARED_USER_INCOMPATIBLE = -8; // 0xfffffff8
3987    field public static final int INSTALL_FAILED_TEST_ONLY = -15; // 0xfffffff1
3988    field public static final int INSTALL_FAILED_UPDATE_INCOMPATIBLE = -7; // 0xfffffff9
3989    field public static final int INSTALL_FAILED_VERIFICATION_FAILURE = -22; // 0xffffffea
3990    field public static final int INSTALL_FAILED_VERIFICATION_TIMEOUT = -21; // 0xffffffeb
3991    field public static final int INSTALL_PARSE_FAILED_BAD_MANIFEST = -101; // 0xffffff9b
3992    field public static final int INSTALL_PARSE_FAILED_BAD_PACKAGE_NAME = -106; // 0xffffff96
3993    field public static final int INSTALL_PARSE_FAILED_BAD_SHARED_USER_ID = -107; // 0xffffff95
3994    field public static final int INSTALL_PARSE_FAILED_CERTIFICATE_ENCODING = -105; // 0xffffff97
3995    field public static final int INSTALL_PARSE_FAILED_INCONSISTENT_CERTIFICATES = -104; // 0xffffff98
3996    field public static final int INSTALL_PARSE_FAILED_MANIFEST_EMPTY = -109; // 0xffffff93
3997    field public static final int INSTALL_PARSE_FAILED_MANIFEST_MALFORMED = -108; // 0xffffff94
3998    field public static final int INSTALL_PARSE_FAILED_NOT_APK = -100; // 0xffffff9c
3999    field public static final int INSTALL_PARSE_FAILED_NO_CERTIFICATES = -103; // 0xffffff99
4000    field public static final int INSTALL_PARSE_FAILED_UNEXPECTED_EXCEPTION = -102; // 0xffffff9a
4001    field public static final int INSTALL_SUCCEEDED = 1; // 0x1
4002    field @Deprecated public static final int INTENT_FILTER_DOMAIN_VERIFICATION_STATUS_ALWAYS = 2; // 0x2
4003    field @Deprecated public static final int INTENT_FILTER_DOMAIN_VERIFICATION_STATUS_ALWAYS_ASK = 4; // 0x4
4004    field @Deprecated public static final int INTENT_FILTER_DOMAIN_VERIFICATION_STATUS_ASK = 1; // 0x1
4005    field @Deprecated public static final int INTENT_FILTER_DOMAIN_VERIFICATION_STATUS_NEVER = 3; // 0x3
4006    field @Deprecated public static final int INTENT_FILTER_DOMAIN_VERIFICATION_STATUS_UNDEFINED = 0; // 0x0
4007    field @Deprecated public static final int INTENT_FILTER_VERIFICATION_FAILURE = -1; // 0xffffffff
4008    field @Deprecated public static final int INTENT_FILTER_VERIFICATION_SUCCESS = 1; // 0x1
4009    field @Deprecated public static final int MASK_PERMISSION_FLAGS = 255; // 0xff
4010    field public static final int MATCH_ANY_USER = 4194304; // 0x400000
4011    field public static final int MATCH_CLONE_PROFILE = 536870912; // 0x20000000
4012    field public static final int MATCH_FACTORY_ONLY = 2097152; // 0x200000
4013    field public static final int MATCH_HIDDEN_UNTIL_INSTALLED_COMPONENTS = 536870912; // 0x20000000
4014    field public static final int MATCH_INSTANT = 8388608; // 0x800000
4015    field public static final int MODULE_APEX_NAME = 1; // 0x1
4016    field public static final int RESTRICTION_HIDE_FROM_SUGGESTIONS = 1; // 0x1
4017    field public static final int RESTRICTION_HIDE_NOTIFICATIONS = 2; // 0x2
4018    field public static final int RESTRICTION_NONE = 0; // 0x0
4019    field public static final int ROLLBACK_DATA_POLICY_RESTORE = 0; // 0x0
4020    field public static final int ROLLBACK_DATA_POLICY_RETAIN = 2; // 0x2
4021    field public static final int ROLLBACK_DATA_POLICY_WIPE = 1; // 0x1
4022    field public static final int SYSTEM_APP_STATE_HIDDEN_UNTIL_INSTALLED_HIDDEN = 0; // 0x0
4023    field public static final int SYSTEM_APP_STATE_HIDDEN_UNTIL_INSTALLED_VISIBLE = 1; // 0x1
4024    field public static final int SYSTEM_APP_STATE_INSTALLED = 2; // 0x2
4025    field public static final int SYSTEM_APP_STATE_UNINSTALLED = 3; // 0x3
4026  }
4027
4028  public abstract static class PackageManager.DexModuleRegisterCallback {
4029    ctor public PackageManager.DexModuleRegisterCallback();
4030    method public abstract void onDexModuleRegistered(String, boolean, String);
4031  }
4032
4033  public static interface PackageManager.OnPermissionsChangedListener {
4034    method public void onPermissionsChanged(int);
4035  }
4036
4037  @IntDef(prefix={"FLAG_PERMISSION_"}, value={android.content.pm.PackageManager.FLAG_PERMISSION_USER_SET, android.content.pm.PackageManager.FLAG_PERMISSION_USER_FIXED, android.content.pm.PackageManager.FLAG_PERMISSION_POLICY_FIXED, android.content.pm.PackageManager.FLAG_PERMISSION_REVOKE_ON_UPGRADE, android.content.pm.PackageManager.FLAG_PERMISSION_SYSTEM_FIXED, android.content.pm.PackageManager.FLAG_PERMISSION_GRANTED_BY_DEFAULT, android.content.pm.PackageManager.FLAG_PERMISSION_USER_SENSITIVE_WHEN_GRANTED, android.content.pm.PackageManager.FLAG_PERMISSION_USER_SENSITIVE_WHEN_DENIED, android.content.pm.PackageManager.FLAG_PERMISSION_RESTRICTION_UPGRADE_EXEMPT, android.content.pm.PackageManager.FLAG_PERMISSION_RESTRICTION_SYSTEM_EXEMPT, android.content.pm.PackageManager.FLAG_PERMISSION_RESTRICTION_INSTALLER_EXEMPT, android.content.pm.PackageManager.FLAG_PERMISSION_APPLY_RESTRICTION, android.content.pm.PackageManager.FLAG_PERMISSION_GRANTED_BY_ROLE, android.content.pm.PackageManager.FLAG_PERMISSION_REVOKED_COMPAT, android.content.pm.PackageManager.FLAG_PERMISSION_ONE_TIME, android.content.pm.PackageManager.FLAG_PERMISSION_AUTO_REVOKED}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface PackageManager.PermissionFlags {
4038  }
4039
4040  public static final class PackageManager.UninstallCompleteCallback implements android.os.Parcelable {
4041    method public void onUninstallComplete(@NonNull String, int, @Nullable String);
4042    field @NonNull public static final android.os.Parcelable.Creator<android.content.pm.PackageManager.UninstallCompleteCallback> CREATOR;
4043  }
4044
4045  public class PermissionGroupInfo extends android.content.pm.PackageItemInfo implements android.os.Parcelable {
4046    field @StringRes public final int backgroundRequestDetailResourceId;
4047    field @StringRes public final int backgroundRequestResourceId;
4048    field @StringRes public final int requestDetailResourceId;
4049    field @StringRes public int requestRes;
4050  }
4051
4052  public class PermissionInfo extends android.content.pm.PackageItemInfo implements android.os.Parcelable {
4053    field public static final int FLAG_REMOVED = 2; // 0x2
4054    field public static final int PROTECTION_FLAG_APP_PREDICTOR = 2097152; // 0x200000
4055    field public static final int PROTECTION_FLAG_COMPANION = 8388608; // 0x800000
4056    field public static final int PROTECTION_FLAG_CONFIGURATOR = 524288; // 0x80000
4057    field @Deprecated public static final int PROTECTION_FLAG_DOCUMENTER = 262144; // 0x40000
4058    field public static final int PROTECTION_FLAG_INCIDENT_REPORT_APPROVER = 1048576; // 0x100000
4059    field public static final int PROTECTION_FLAG_KNOWN_SIGNER = 134217728; // 0x8000000
4060    field public static final int PROTECTION_FLAG_MODULE = 4194304; // 0x400000
4061    field public static final int PROTECTION_FLAG_OEM = 16384; // 0x4000
4062    field public static final int PROTECTION_FLAG_RECENTS = 33554432; // 0x2000000
4063    field public static final int PROTECTION_FLAG_RETAIL_DEMO = 16777216; // 0x1000000
4064    field public static final int PROTECTION_FLAG_ROLE = 67108864; // 0x4000000
4065    field public static final int PROTECTION_FLAG_SYSTEM_TEXT_CLASSIFIER = 65536; // 0x10000
4066    field public static final int PROTECTION_FLAG_VENDOR_PRIVILEGED = 32768; // 0x8000
4067    field @Deprecated public static final int PROTECTION_FLAG_WELLBEING = 131072; // 0x20000
4068    field @Nullable public final String backgroundPermission;
4069    field @NonNull public java.util.Set<java.lang.String> knownCerts;
4070    field @StringRes public int requestRes;
4071  }
4072
4073  public class ResolveInfo implements android.os.Parcelable {
4074    field public boolean handleAllWebDataURI;
4075  }
4076
4077  public final class ShortcutInfo implements android.os.Parcelable {
4078    method @Nullable public android.app.Person[] getPersons();
4079  }
4080
4081  public class ShortcutManager {
4082    method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_APP_PREDICTIONS) @WorkerThread public java.util.List<android.content.pm.ShortcutManager.ShareShortcutInfo> getShareTargets(@NonNull android.content.IntentFilter);
4083    method public boolean hasShareTargets(@NonNull String);
4084  }
4085
4086  public static final class ShortcutManager.ShareShortcutInfo implements android.os.Parcelable {
4087    method public int describeContents();
4088    method @NonNull public android.content.pm.ShortcutInfo getShortcutInfo();
4089    method @NonNull public android.content.ComponentName getTargetComponent();
4090    method public void writeToParcel(@NonNull android.os.Parcel, int);
4091    field @NonNull public static final android.os.Parcelable.Creator<android.content.pm.ShortcutManager.ShareShortcutInfo> CREATOR;
4092  }
4093
4094  public final class SuspendDialogInfo implements android.os.Parcelable {
4095    method public int describeContents();
4096    method public void writeToParcel(android.os.Parcel, int);
4097    field public static final int BUTTON_ACTION_MORE_DETAILS = 0; // 0x0
4098    field public static final int BUTTON_ACTION_UNSUSPEND = 1; // 0x1
4099    field @NonNull public static final android.os.Parcelable.Creator<android.content.pm.SuspendDialogInfo> CREATOR;
4100  }
4101
4102  public static final class SuspendDialogInfo.Builder {
4103    ctor public SuspendDialogInfo.Builder();
4104    method @NonNull public android.content.pm.SuspendDialogInfo build();
4105    method @NonNull public android.content.pm.SuspendDialogInfo.Builder setIcon(@DrawableRes int);
4106    method @NonNull public android.content.pm.SuspendDialogInfo.Builder setMessage(@NonNull String);
4107    method @NonNull public android.content.pm.SuspendDialogInfo.Builder setMessage(@StringRes int);
4108    method @NonNull public android.content.pm.SuspendDialogInfo.Builder setNeutralButtonAction(int);
4109    method @NonNull public android.content.pm.SuspendDialogInfo.Builder setNeutralButtonText(@StringRes int);
4110    method @NonNull public android.content.pm.SuspendDialogInfo.Builder setNeutralButtonText(@NonNull String);
4111    method @NonNull public android.content.pm.SuspendDialogInfo.Builder setTitle(@StringRes int);
4112    method @NonNull public android.content.pm.SuspendDialogInfo.Builder setTitle(@NonNull String);
4113  }
4114
4115  public final class UserProperties implements android.os.Parcelable {
4116    method public int describeContents();
4117    method public boolean isCredentialShareableWithParent();
4118    method public boolean isMediaSharedWithParent();
4119    method public void writeToParcel(@NonNull android.os.Parcel, int);
4120    field @NonNull public static final android.os.Parcelable.Creator<android.content.pm.UserProperties> CREATOR;
4121  }
4122
4123}
4124
4125package android.content.pm.dex {
4126
4127  public class ArtManager {
4128    method @RequiresPermission(allOf={android.Manifest.permission.READ_RUNTIME_PROFILES, android.Manifest.permission.PACKAGE_USAGE_STATS}) public boolean isRuntimeProfilingEnabled(int);
4129    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);
4130    field public static final int PROFILE_APPS = 0; // 0x0
4131    field public static final int PROFILE_BOOT_IMAGE = 1; // 0x1
4132    field public static final int SNAPSHOT_FAILED_CODE_PATH_NOT_FOUND = 1; // 0x1
4133    field public static final int SNAPSHOT_FAILED_INTERNAL_ERROR = 2; // 0x2
4134    field public static final int SNAPSHOT_FAILED_PACKAGE_NOT_FOUND = 0; // 0x0
4135  }
4136
4137  public abstract static class ArtManager.SnapshotRuntimeProfileCallback {
4138    ctor public ArtManager.SnapshotRuntimeProfileCallback();
4139    method public abstract void onError(int);
4140    method public abstract void onSuccess(android.os.ParcelFileDescriptor);
4141  }
4142
4143}
4144
4145package android.content.pm.permission {
4146
4147  @Deprecated public final class RuntimePermissionPresentationInfo implements android.os.Parcelable {
4148    ctor @Deprecated public RuntimePermissionPresentationInfo(CharSequence, boolean, boolean);
4149    method @Deprecated public int describeContents();
4150    method @Deprecated @NonNull public CharSequence getLabel();
4151    method @Deprecated public boolean isGranted();
4152    method @Deprecated public boolean isStandard();
4153    method @Deprecated public void writeToParcel(android.os.Parcel, int);
4154    field @Deprecated @NonNull public static final android.os.Parcelable.Creator<android.content.pm.permission.RuntimePermissionPresentationInfo> CREATOR;
4155  }
4156
4157}
4158
4159package android.content.pm.verify.domain {
4160
4161  public final class DomainOwner implements android.os.Parcelable {
4162    ctor public DomainOwner(@NonNull String, boolean);
4163    method public int describeContents();
4164    method @NonNull public String getPackageName();
4165    method public boolean isOverrideable();
4166    method public void writeToParcel(@NonNull android.os.Parcel, int);
4167    field @NonNull public static final android.os.Parcelable.Creator<android.content.pm.verify.domain.DomainOwner> CREATOR;
4168  }
4169
4170  public final class DomainVerificationInfo implements android.os.Parcelable {
4171    method public int describeContents();
4172    method @NonNull public java.util.Map<java.lang.String,java.lang.Integer> getHostToStateMap();
4173    method @NonNull public java.util.UUID getIdentifier();
4174    method @NonNull public String getPackageName();
4175    method public void writeToParcel(@NonNull android.os.Parcel, int);
4176    field @NonNull public static final android.os.Parcelable.Creator<android.content.pm.verify.domain.DomainVerificationInfo> CREATOR;
4177    field public static final int STATE_FIRST_VERIFIER_DEFINED = 1024; // 0x400
4178    field public static final int STATE_MODIFIABLE_UNVERIFIED = 3; // 0x3
4179    field public static final int STATE_MODIFIABLE_VERIFIED = 4; // 0x4
4180    field public static final int STATE_NO_RESPONSE = 0; // 0x0
4181    field public static final int STATE_SUCCESS = 1; // 0x1
4182    field public static final int STATE_UNMODIFIABLE = 2; // 0x2
4183  }
4184
4185  public final class DomainVerificationManager {
4186    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;
4187    method @NonNull @RequiresPermission(android.Manifest.permission.UPDATE_DOMAIN_VERIFICATION_USER_SELECTION) public java.util.SortedSet<android.content.pm.verify.domain.DomainOwner> getOwnersForDomain(@NonNull String);
4188    method @NonNull @RequiresPermission(android.Manifest.permission.DOMAIN_VERIFICATION_AGENT) public java.util.List<java.lang.String> queryValidVerificationPackageNames();
4189    method @RequiresPermission(android.Manifest.permission.UPDATE_DOMAIN_VERIFICATION_USER_SELECTION) public void setDomainVerificationLinkHandlingAllowed(@NonNull String, boolean) throws android.content.pm.PackageManager.NameNotFoundException;
4190    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;
4191    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;
4192    field public static final int ERROR_DOMAIN_SET_ID_INVALID = 1; // 0x1
4193    field public static final int ERROR_UNABLE_TO_APPROVE = 3; // 0x3
4194    field public static final int ERROR_UNKNOWN_DOMAIN = 2; // 0x2
4195    field public static final String EXTRA_VERIFICATION_REQUEST = "android.content.pm.verify.domain.extra.VERIFICATION_REQUEST";
4196    field public static final int STATUS_OK = 0; // 0x0
4197  }
4198
4199  public final class DomainVerificationRequest implements android.os.Parcelable {
4200    method public int describeContents();
4201    method @NonNull public java.util.Set<java.lang.String> getPackageNames();
4202    method public void writeToParcel(@NonNull android.os.Parcel, int);
4203    field @NonNull public static final android.os.Parcelable.Creator<android.content.pm.verify.domain.DomainVerificationRequest> CREATOR;
4204  }
4205
4206  public final class DomainVerificationUserState implements android.os.Parcelable {
4207    method @NonNull public java.util.UUID getIdentifier();
4208  }
4209
4210}
4211
4212package android.content.rollback {
4213
4214  public final class PackageRollbackInfo implements android.os.Parcelable {
4215    method public int describeContents();
4216    method @NonNull public String getPackageName();
4217    method @NonNull public android.content.pm.VersionedPackage getVersionRolledBackFrom();
4218    method @NonNull public android.content.pm.VersionedPackage getVersionRolledBackTo();
4219    method public void writeToParcel(android.os.Parcel, int);
4220    field @NonNull public static final android.os.Parcelable.Creator<android.content.rollback.PackageRollbackInfo> CREATOR;
4221  }
4222
4223  public final class RollbackInfo implements android.os.Parcelable {
4224    method public int describeContents();
4225    method @NonNull public java.util.List<android.content.pm.VersionedPackage> getCausePackages();
4226    method public int getCommittedSessionId();
4227    method @NonNull public java.util.List<android.content.rollback.PackageRollbackInfo> getPackages();
4228    method public int getRollbackId();
4229    method public boolean isStaged();
4230    method public void writeToParcel(android.os.Parcel, int);
4231    field @NonNull public static final android.os.Parcelable.Creator<android.content.rollback.RollbackInfo> CREATOR;
4232  }
4233
4234  public final class RollbackManager {
4235    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);
4236    method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_ROLLBACKS, "android.permission.TEST_MANAGE_ROLLBACKS"}) public java.util.List<android.content.rollback.RollbackInfo> getAvailableRollbacks();
4237    method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_ROLLBACKS, "android.permission.TEST_MANAGE_ROLLBACKS"}) public java.util.List<android.content.rollback.RollbackInfo> getRecentlyCommittedRollbacks();
4238    field public static final String EXTRA_STATUS = "android.content.rollback.extra.STATUS";
4239    field public static final String EXTRA_STATUS_MESSAGE = "android.content.rollback.extra.STATUS_MESSAGE";
4240    field public static final int STATUS_FAILURE = 1; // 0x1
4241    field public static final int STATUS_FAILURE_INSTALL = 3; // 0x3
4242    field public static final int STATUS_FAILURE_ROLLBACK_UNAVAILABLE = 2; // 0x2
4243    field public static final int STATUS_SUCCESS = 0; // 0x0
4244  }
4245
4246}
4247
4248package android.database {
4249
4250  public abstract class ContentObserver {
4251    method public void onChange(boolean, @NonNull java.util.Collection<android.net.Uri>, int, @NonNull android.os.UserHandle);
4252  }
4253
4254}
4255
4256package android.debug {
4257
4258  public class AdbManager {
4259    method @RequiresPermission(android.Manifest.permission.MANAGE_DEBUGGING) public boolean isAdbWifiQrSupported();
4260    method @RequiresPermission(android.Manifest.permission.MANAGE_DEBUGGING) public boolean isAdbWifiSupported();
4261  }
4262
4263}
4264
4265package android.graphics.fonts {
4266
4267  public final class FontFamilyUpdateRequest {
4268    method @NonNull public java.util.List<android.graphics.fonts.FontFamilyUpdateRequest.FontFamily> getFontFamilies();
4269    method @NonNull public java.util.List<android.graphics.fonts.FontFileUpdateRequest> getFontFileUpdateRequests();
4270  }
4271
4272  public static final class FontFamilyUpdateRequest.Builder {
4273    ctor public FontFamilyUpdateRequest.Builder();
4274    method @NonNull public android.graphics.fonts.FontFamilyUpdateRequest.Builder addFontFamily(@NonNull android.graphics.fonts.FontFamilyUpdateRequest.FontFamily);
4275    method @NonNull public android.graphics.fonts.FontFamilyUpdateRequest.Builder addFontFileUpdateRequest(@NonNull android.graphics.fonts.FontFileUpdateRequest);
4276    method @NonNull public android.graphics.fonts.FontFamilyUpdateRequest build();
4277  }
4278
4279  public static final class FontFamilyUpdateRequest.Font {
4280    method @NonNull public java.util.List<android.graphics.fonts.FontVariationAxis> getAxes();
4281    method @IntRange(from=0) public int getIndex();
4282    method @NonNull public String getPostScriptName();
4283    method @NonNull public android.graphics.fonts.FontStyle getStyle();
4284  }
4285
4286  public static final class FontFamilyUpdateRequest.Font.Builder {
4287    ctor public FontFamilyUpdateRequest.Font.Builder(@NonNull String, @NonNull android.graphics.fonts.FontStyle);
4288    method @NonNull public android.graphics.fonts.FontFamilyUpdateRequest.Font build();
4289    method @NonNull public android.graphics.fonts.FontFamilyUpdateRequest.Font.Builder setAxes(@NonNull java.util.List<android.graphics.fonts.FontVariationAxis>);
4290    method @NonNull public android.graphics.fonts.FontFamilyUpdateRequest.Font.Builder setIndex(@IntRange(from=0) int);
4291  }
4292
4293  public static final class FontFamilyUpdateRequest.FontFamily {
4294    method @NonNull public java.util.List<android.graphics.fonts.FontFamilyUpdateRequest.Font> getFonts();
4295    method @NonNull public String getName();
4296  }
4297
4298  public static final class FontFamilyUpdateRequest.FontFamily.Builder {
4299    ctor public FontFamilyUpdateRequest.FontFamily.Builder(@NonNull String, @NonNull java.util.List<android.graphics.fonts.FontFamilyUpdateRequest.Font>);
4300    method @NonNull public android.graphics.fonts.FontFamilyUpdateRequest.FontFamily.Builder addFont(@NonNull android.graphics.fonts.FontFamilyUpdateRequest.Font);
4301    method @NonNull public android.graphics.fonts.FontFamilyUpdateRequest.FontFamily build();
4302  }
4303
4304  public final class FontFileUpdateRequest {
4305    ctor public FontFileUpdateRequest(@NonNull android.os.ParcelFileDescriptor, @NonNull byte[]);
4306    method @NonNull public android.os.ParcelFileDescriptor getParcelFileDescriptor();
4307    method @NonNull public byte[] getSignature();
4308  }
4309
4310  public class FontManager {
4311    method @NonNull @RequiresPermission(android.Manifest.permission.UPDATE_FONTS) public android.text.FontConfig getFontConfig();
4312    method @RequiresPermission(android.Manifest.permission.UPDATE_FONTS) public int updateFontFamily(@NonNull android.graphics.fonts.FontFamilyUpdateRequest, @IntRange(from=0) int);
4313    field public static final int RESULT_ERROR_DOWNGRADING = -5; // 0xfffffffb
4314    field public static final int RESULT_ERROR_FAILED_TO_WRITE_FONT_FILE = -1; // 0xffffffff
4315    field public static final int RESULT_ERROR_FAILED_UPDATE_CONFIG = -6; // 0xfffffffa
4316    field public static final int RESULT_ERROR_FONT_NOT_FOUND = -9; // 0xfffffff7
4317    field public static final int RESULT_ERROR_FONT_UPDATER_DISABLED = -7; // 0xfffffff9
4318    field public static final int RESULT_ERROR_INVALID_FONT_FILE = -3; // 0xfffffffd
4319    field public static final int RESULT_ERROR_INVALID_FONT_NAME = -4; // 0xfffffffc
4320    field public static final int RESULT_ERROR_VERIFICATION_FAILURE = -2; // 0xfffffffe
4321    field public static final int RESULT_ERROR_VERSION_MISMATCH = -8; // 0xfffffff8
4322    field public static final int RESULT_SUCCESS = 0; // 0x0
4323  }
4324
4325}
4326
4327package android.hardware {
4328
4329  public final class Sensor {
4330    method public java.util.UUID getUuid();
4331    method public boolean isDataInjectionSupported();
4332    field public static final String STRING_TYPE_DYNAMIC_SENSOR_META = "android.sensor.dynamic_sensor_meta";
4333    field public static final String STRING_TYPE_WRIST_TILT_GESTURE = "android.sensor.wrist_tilt_gesture";
4334    field public static final int TYPE_DYNAMIC_SENSOR_META = 32; // 0x20
4335    field public static final int TYPE_WRIST_TILT_GESTURE = 26; // 0x1a
4336  }
4337
4338  public abstract class SensorManager {
4339    method public boolean initDataInjection(boolean);
4340    method public boolean injectSensorData(android.hardware.Sensor, float[], int, long);
4341  }
4342
4343  public final class SensorPrivacyManager {
4344    method @RequiresPermission(android.Manifest.permission.OBSERVE_SENSOR_PRIVACY) public void addSensorPrivacyListener(int, @NonNull android.hardware.SensorPrivacyManager.OnSensorPrivacyChangedListener);
4345    method @RequiresPermission(android.Manifest.permission.OBSERVE_SENSOR_PRIVACY) public void addSensorPrivacyListener(int, @NonNull java.util.concurrent.Executor, @NonNull android.hardware.SensorPrivacyManager.OnSensorPrivacyChangedListener);
4346    method @RequiresPermission(android.Manifest.permission.OBSERVE_SENSOR_PRIVACY) public void addSensorPrivacyListener(@NonNull android.hardware.SensorPrivacyManager.OnSensorPrivacyChangedListener);
4347    method @RequiresPermission(android.Manifest.permission.OBSERVE_SENSOR_PRIVACY) public void addSensorPrivacyListener(@NonNull java.util.concurrent.Executor, @NonNull android.hardware.SensorPrivacyManager.OnSensorPrivacyChangedListener);
4348    method @RequiresPermission(android.Manifest.permission.OBSERVE_SENSOR_PRIVACY) public boolean areAnySensorPrivacyTogglesEnabled(int);
4349    method @Deprecated @RequiresPermission(android.Manifest.permission.OBSERVE_SENSOR_PRIVACY) public boolean isSensorPrivacyEnabled(int);
4350    method @RequiresPermission(android.Manifest.permission.OBSERVE_SENSOR_PRIVACY) public boolean isSensorPrivacyEnabled(int, int);
4351    method @RequiresPermission(android.Manifest.permission.OBSERVE_SENSOR_PRIVACY) public void removeSensorPrivacyListener(int, @NonNull android.hardware.SensorPrivacyManager.OnSensorPrivacyChangedListener);
4352    method @RequiresPermission(android.Manifest.permission.OBSERVE_SENSOR_PRIVACY) public void removeSensorPrivacyListener(@NonNull android.hardware.SensorPrivacyManager.OnSensorPrivacyChangedListener);
4353    method @RequiresPermission(android.Manifest.permission.MANAGE_SENSOR_PRIVACY) public void setSensorPrivacy(int, boolean);
4354  }
4355
4356  public static interface SensorPrivacyManager.OnSensorPrivacyChangedListener {
4357    method public default void onSensorPrivacyChanged(@NonNull android.hardware.SensorPrivacyManager.OnSensorPrivacyChangedListener.SensorPrivacyChangedParams);
4358    method @Deprecated public void onSensorPrivacyChanged(int, boolean);
4359  }
4360
4361  public static class SensorPrivacyManager.OnSensorPrivacyChangedListener.SensorPrivacyChangedParams {
4362    method public int getSensor();
4363    method public int getToggleType();
4364    method public boolean isEnabled();
4365  }
4366
4367}
4368
4369package android.hardware.biometrics {
4370
4371  public static interface BiometricManager.Authenticators {
4372    field @RequiresPermission(android.Manifest.permission.WRITE_DEVICE_CONFIG) public static final int BIOMETRIC_CONVENIENCE = 4095; // 0xfff
4373    field @RequiresPermission(android.Manifest.permission.WRITE_DEVICE_CONFIG) public static final int EMPTY_SET = 0; // 0x0
4374  }
4375
4376}
4377
4378package android.hardware.camera2 {
4379
4380  public abstract class CameraDevice implements java.lang.AutoCloseable {
4381    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;
4382    field public static final int SESSION_OPERATION_MODE_CONSTRAINED_HIGH_SPEED = 1; // 0x1
4383    field public static final int SESSION_OPERATION_MODE_NORMAL = 0; // 0x0
4384    field public static final int SESSION_OPERATION_MODE_VENDOR_START = 32768; // 0x8000
4385  }
4386
4387  public final class CameraManager {
4388    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;
4389  }
4390
4391  public abstract static class CameraManager.AvailabilityCallback {
4392    method @RequiresPermission(android.Manifest.permission.CAMERA_OPEN_CLOSE_LISTENER) public void onCameraClosed(@NonNull String);
4393    method @RequiresPermission(android.Manifest.permission.CAMERA_OPEN_CLOSE_LISTENER) public void onCameraOpened(@NonNull String, @NonNull String);
4394  }
4395
4396}
4397
4398package android.hardware.camera2.params {
4399
4400  public final class OutputConfiguration implements android.os.Parcelable {
4401    ctor public OutputConfiguration(@NonNull android.view.Surface, int);
4402    ctor public OutputConfiguration(int, @NonNull android.view.Surface, int);
4403    method public int getRotation();
4404    field public static final int ROTATION_0 = 0; // 0x0
4405    field public static final int ROTATION_180 = 2; // 0x2
4406    field public static final int ROTATION_270 = 3; // 0x3
4407    field public static final int ROTATION_90 = 1; // 0x1
4408  }
4409
4410}
4411
4412package android.hardware.display {
4413
4414  public final class AmbientBrightnessDayStats implements android.os.Parcelable {
4415    method public int describeContents();
4416    method public float[] getBucketBoundaries();
4417    method public java.time.LocalDate getLocalDate();
4418    method public float[] getStats();
4419    method public void writeToParcel(android.os.Parcel, int);
4420    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.display.AmbientBrightnessDayStats> CREATOR;
4421  }
4422
4423  public final class BrightnessChangeEvent implements android.os.Parcelable {
4424    method public int describeContents();
4425    method public void writeToParcel(android.os.Parcel, int);
4426    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.display.BrightnessChangeEvent> CREATOR;
4427    field public final float batteryLevel;
4428    field public final float brightness;
4429    field public final long colorSampleDuration;
4430    field public final int colorTemperature;
4431    field @Nullable public final long[] colorValueBuckets;
4432    field public final boolean isDefaultBrightnessConfig;
4433    field public final boolean isUserSetBrightness;
4434    field public final float lastBrightness;
4435    field public final long[] luxTimestamps;
4436    field public final float[] luxValues;
4437    field public final boolean nightMode;
4438    field public final String packageName;
4439    field public final float powerBrightnessFactor;
4440    field public final boolean reduceBrightColors;
4441    field public final float reduceBrightColorsOffset;
4442    field public final int reduceBrightColorsStrength;
4443    field public final long timeStamp;
4444    field @NonNull public final String uniqueDisplayId;
4445  }
4446
4447  public final class BrightnessConfiguration implements android.os.Parcelable {
4448    method public int describeContents();
4449    method @Nullable public android.hardware.display.BrightnessCorrection getCorrectionByCategory(int);
4450    method @Nullable public android.hardware.display.BrightnessCorrection getCorrectionByPackageName(@NonNull String);
4451    method public android.util.Pair<float[],float[]> getCurve();
4452    method public float getShortTermModelLowerLuxMultiplier();
4453    method public long getShortTermModelTimeoutMillis();
4454    method public float getShortTermModelUpperLuxMultiplier();
4455    method public boolean shouldCollectColorSamples();
4456    method public void writeToParcel(android.os.Parcel, int);
4457    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.display.BrightnessConfiguration> CREATOR;
4458    field public static final long SHORT_TERM_TIMEOUT_UNSET = -1L; // 0xffffffffffffffffL
4459  }
4460
4461  public static class BrightnessConfiguration.Builder {
4462    ctor public BrightnessConfiguration.Builder(float[], float[]);
4463    method @NonNull public android.hardware.display.BrightnessConfiguration.Builder addCorrectionByCategory(int, @NonNull android.hardware.display.BrightnessCorrection);
4464    method @NonNull public android.hardware.display.BrightnessConfiguration.Builder addCorrectionByPackageName(@NonNull String, @NonNull android.hardware.display.BrightnessCorrection);
4465    method @NonNull public android.hardware.display.BrightnessConfiguration build();
4466    method public int getMaxCorrectionsByCategory();
4467    method public int getMaxCorrectionsByPackageName();
4468    method @NonNull public android.hardware.display.BrightnessConfiguration.Builder setDescription(@Nullable String);
4469    method @NonNull public android.hardware.display.BrightnessConfiguration.Builder setShortTermModelLowerLuxMultiplier(@FloatRange(from=0.0f) float);
4470    method @NonNull public android.hardware.display.BrightnessConfiguration.Builder setShortTermModelTimeoutMillis(long);
4471    method @NonNull public android.hardware.display.BrightnessConfiguration.Builder setShortTermModelUpperLuxMultiplier(@FloatRange(from=0.0f) float);
4472    method @NonNull public android.hardware.display.BrightnessConfiguration.Builder setShouldCollectColorSamples(boolean);
4473  }
4474
4475  public final class BrightnessCorrection implements android.os.Parcelable {
4476    method @FloatRange(from=0.0) public float apply(@FloatRange(from=0.0) float);
4477    method @NonNull public static android.hardware.display.BrightnessCorrection createScaleAndTranslateLog(float, float);
4478    method public int describeContents();
4479    method public void writeToParcel(android.os.Parcel, int);
4480    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.display.BrightnessCorrection> CREATOR;
4481  }
4482
4483  public final class ColorDisplayManager {
4484    method @RequiresPermission(android.Manifest.permission.CONTROL_DISPLAY_COLOR_TRANSFORMS) public int getNightDisplayAutoMode();
4485    method @RequiresPermission(android.Manifest.permission.CONTROL_DISPLAY_COLOR_TRANSFORMS) public int getTransformCapabilities();
4486    method @RequiresPermission(android.Manifest.permission.CONTROL_DISPLAY_COLOR_TRANSFORMS) public boolean setAppSaturationLevel(@NonNull String, @IntRange(from=0, to=100) int);
4487    method @RequiresPermission(android.Manifest.permission.CONTROL_DISPLAY_COLOR_TRANSFORMS) public boolean setNightDisplayAutoMode(int);
4488    method @RequiresPermission(android.Manifest.permission.CONTROL_DISPLAY_COLOR_TRANSFORMS) public boolean setNightDisplayCustomEndTime(@NonNull java.time.LocalTime);
4489    method @RequiresPermission(android.Manifest.permission.CONTROL_DISPLAY_COLOR_TRANSFORMS) public boolean setNightDisplayCustomStartTime(@NonNull java.time.LocalTime);
4490    method @RequiresPermission(android.Manifest.permission.CONTROL_DISPLAY_COLOR_TRANSFORMS) public boolean setSaturationLevel(@IntRange(from=0, to=100) int);
4491    field public static final int AUTO_MODE_CUSTOM_TIME = 1; // 0x1
4492    field public static final int AUTO_MODE_DISABLED = 0; // 0x0
4493    field public static final int AUTO_MODE_TWILIGHT = 2; // 0x2
4494    field public static final int CAPABILITY_HARDWARE_ACCELERATION_GLOBAL = 2; // 0x2
4495    field public static final int CAPABILITY_HARDWARE_ACCELERATION_PER_APP = 4; // 0x4
4496    field public static final int CAPABILITY_NONE = 0; // 0x0
4497    field public static final int CAPABILITY_PROTECTED_CONTENT = 1; // 0x1
4498  }
4499
4500  public final class DisplayManager {
4501    method @Nullable @RequiresPermission("android.permission.CAPTURE_VIDEO_OUTPUT") public static android.hardware.display.VirtualDisplay createVirtualDisplay(@NonNull String, int, int, int, @Nullable android.view.Surface);
4502    method @RequiresPermission(android.Manifest.permission.ACCESS_AMBIENT_LIGHT_STATS) public java.util.List<android.hardware.display.AmbientBrightnessDayStats> getAmbientBrightnessStats();
4503    method @RequiresPermission(android.Manifest.permission.CONFIGURE_DISPLAY_BRIGHTNESS) public android.hardware.display.BrightnessConfiguration getBrightnessConfiguration();
4504    method @Nullable @RequiresPermission(android.Manifest.permission.CONFIGURE_DISPLAY_BRIGHTNESS) public android.hardware.display.BrightnessConfiguration getBrightnessConfigurationForDisplay(@NonNull String);
4505    method @RequiresPermission(android.Manifest.permission.BRIGHTNESS_SLIDER_USAGE) public java.util.List<android.hardware.display.BrightnessChangeEvent> getBrightnessEvents();
4506    method @Nullable @RequiresPermission(android.Manifest.permission.CONFIGURE_DISPLAY_BRIGHTNESS) public android.hardware.display.BrightnessConfiguration getDefaultBrightnessConfiguration();
4507    method public android.util.Pair<float[],float[]> getMinimumBrightnessCurve();
4508    method public android.graphics.Point getStableDisplaySize();
4509    method @RequiresPermission(android.Manifest.permission.CONFIGURE_DISPLAY_BRIGHTNESS) public void setBrightnessConfiguration(android.hardware.display.BrightnessConfiguration);
4510    method @RequiresPermission(android.Manifest.permission.CONFIGURE_DISPLAY_BRIGHTNESS) public void setBrightnessConfigurationForDisplay(@NonNull android.hardware.display.BrightnessConfiguration, @NonNull String);
4511    method @Deprecated @RequiresPermission(android.Manifest.permission.CONTROL_DISPLAY_SATURATION) public void setSaturationLevel(float);
4512    field public static final int VIRTUAL_DISPLAY_FLAG_STEAL_TOP_FOCUS_DISABLED = 65536; // 0x10000
4513    field public static final int VIRTUAL_DISPLAY_FLAG_TRUSTED = 1024; // 0x400
4514  }
4515
4516}
4517
4518package android.hardware.hdmi {
4519
4520  public abstract class HdmiClient {
4521    method public android.hardware.hdmi.HdmiDeviceInfo getActiveSource();
4522    method public void selectDevice(int, @NonNull java.util.concurrent.Executor, @NonNull android.hardware.hdmi.HdmiClient.OnDeviceSelectedListener);
4523    method public void sendKeyEvent(int, boolean);
4524    method public void sendVendorCommand(int, byte[], boolean);
4525    method public void setVendorCommandListener(@NonNull android.hardware.hdmi.HdmiControlManager.VendorCommandListener);
4526    method public void setVendorCommandListener(@NonNull android.hardware.hdmi.HdmiControlManager.VendorCommandListener, int);
4527  }
4528
4529  public static interface HdmiClient.OnDeviceSelectedListener {
4530    method public void onDeviceSelected(@android.hardware.hdmi.HdmiControlManager.ControlCallbackResult int, int);
4531  }
4532
4533  public final class HdmiControlManager {
4534    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public void addHdmiCecEnabledChangeListener(@NonNull android.hardware.hdmi.HdmiControlManager.CecSettingChangeListener);
4535    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public void addHdmiCecEnabledChangeListener(@NonNull java.util.concurrent.Executor, @NonNull android.hardware.hdmi.HdmiControlManager.CecSettingChangeListener);
4536    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public void addHotplugEventListener(android.hardware.hdmi.HdmiControlManager.HotplugEventListener);
4537    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public void addHotplugEventListener(@NonNull java.util.concurrent.Executor, @NonNull android.hardware.hdmi.HdmiControlManager.HotplugEventListener);
4538    method @NonNull @RequiresPermission(android.Manifest.permission.HDMI_CEC) public java.util.List<java.lang.Integer> getAllowedCecSettingIntValues(@NonNull String);
4539    method @NonNull @RequiresPermission(android.Manifest.permission.HDMI_CEC) public java.util.List<java.lang.String> getAllowedCecSettingStringValues(@NonNull String);
4540    method @Nullable public android.hardware.hdmi.HdmiClient getClient(int);
4541    method @NonNull public java.util.List<android.hardware.hdmi.HdmiDeviceInfo> getConnectedDevices();
4542    method @NonNull @RequiresPermission(android.Manifest.permission.HDMI_CEC) public int getEarcEnabled();
4543    method @NonNull @RequiresPermission(android.Manifest.permission.HDMI_CEC) public int getHdmiCecEnabled();
4544    method @NonNull @RequiresPermission(android.Manifest.permission.HDMI_CEC) public int getHdmiCecVersion();
4545    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public int getHdmiCecVolumeControlEnabled();
4546    method public int getPhysicalAddress();
4547    method @Nullable public android.hardware.hdmi.HdmiPlaybackClient getPlaybackClient();
4548    method @NonNull public java.util.List<android.hardware.hdmi.HdmiPortInfo> getPortInfo();
4549    method @NonNull @RequiresPermission(android.Manifest.permission.HDMI_CEC) public String getPowerControlMode();
4550    method @NonNull @RequiresPermission(android.Manifest.permission.HDMI_CEC) public String getPowerStateChangeOnActiveSourceLost();
4551    method @NonNull @RequiresPermission(android.Manifest.permission.HDMI_CEC) public int getRoutingControl();
4552    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public int getSadPresenceInQuery(@NonNull String);
4553    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public int getSoundbarMode();
4554    method @Nullable public android.hardware.hdmi.HdmiSwitchClient getSwitchClient();
4555    method @NonNull @RequiresPermission(android.Manifest.permission.HDMI_CEC) public int getSystemAudioControl();
4556    method @NonNull @RequiresPermission(android.Manifest.permission.HDMI_CEC) public int getSystemAudioModeMuting();
4557    method @Nullable public android.hardware.hdmi.HdmiTvClient getTvClient();
4558    method @NonNull @RequiresPermission(android.Manifest.permission.HDMI_CEC) public int getTvSendStandbyOnSleep();
4559    method @NonNull @RequiresPermission(android.Manifest.permission.HDMI_CEC) public int getTvWakeOnOneTouchPlay();
4560    method @NonNull @RequiresPermission(android.Manifest.permission.HDMI_CEC) public java.util.List<java.lang.String> getUserCecSettings();
4561    method public boolean isDeviceConnected(@NonNull android.hardware.hdmi.HdmiDeviceInfo);
4562    method public void powerOffDevice(@NonNull android.hardware.hdmi.HdmiDeviceInfo);
4563    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public void removeHdmiCecEnabledChangeListener(@NonNull android.hardware.hdmi.HdmiControlManager.CecSettingChangeListener);
4564    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public void removeHotplugEventListener(android.hardware.hdmi.HdmiControlManager.HotplugEventListener);
4565    method public void setActiveSource(@NonNull android.hardware.hdmi.HdmiDeviceInfo);
4566    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public void setEarcEnabled(@NonNull int);
4567    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public void setHdmiCecEnabled(@NonNull int);
4568    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public void setHdmiCecVersion(@NonNull int);
4569    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public void setHdmiCecVolumeControlEnabled(int);
4570    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public void setPowerControlMode(@NonNull String);
4571    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public void setPowerStateChangeOnActiveSourceLost(@NonNull String);
4572    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public void setRoutingControl(@NonNull int);
4573    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public void setSadPresenceInQuery(@NonNull String, int);
4574    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public void setSadsPresenceInQuery(@NonNull java.util.List<java.lang.String>, int);
4575    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public void setSoundbarMode(int);
4576    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public void setStandbyMode(boolean);
4577    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public void setSystemAudioControl(@NonNull int);
4578    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public void setSystemAudioModeMuting(@NonNull int);
4579    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public void setTvSendStandbyOnSleep(@NonNull int);
4580    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public void setTvWakeOnOneTouchPlay(@NonNull int);
4581    field public static final String ACTION_OSD_MESSAGE = "android.hardware.hdmi.action.OSD_MESSAGE";
4582    field public static final int AVR_VOLUME_MUTED = 101; // 0x65
4583    field public static final String CEC_SETTING_NAME_HDMI_CEC_ENABLED = "hdmi_cec_enabled";
4584    field public static final String CEC_SETTING_NAME_HDMI_CEC_VERSION = "hdmi_cec_version";
4585    field public static final String CEC_SETTING_NAME_POWER_CONTROL_MODE = "power_control_mode";
4586    field public static final String CEC_SETTING_NAME_POWER_STATE_CHANGE_ON_ACTIVE_SOURCE_LOST = "power_state_change_on_active_source_lost";
4587    field public static final String CEC_SETTING_NAME_QUERY_SAD_AAC = "query_sad_aac";
4588    field public static final String CEC_SETTING_NAME_QUERY_SAD_ATRAC = "query_sad_atrac";
4589    field public static final String CEC_SETTING_NAME_QUERY_SAD_DD = "query_sad_dd";
4590    field public static final String CEC_SETTING_NAME_QUERY_SAD_DDP = "query_sad_ddp";
4591    field public static final String CEC_SETTING_NAME_QUERY_SAD_DST = "query_sad_dst";
4592    field public static final String CEC_SETTING_NAME_QUERY_SAD_DTS = "query_sad_dts";
4593    field public static final String CEC_SETTING_NAME_QUERY_SAD_DTSHD = "query_sad_dtshd";
4594    field public static final String CEC_SETTING_NAME_QUERY_SAD_LPCM = "query_sad_lpcm";
4595    field public static final String CEC_SETTING_NAME_QUERY_SAD_MAX = "query_sad_max";
4596    field public static final String CEC_SETTING_NAME_QUERY_SAD_MP3 = "query_sad_mp3";
4597    field public static final String CEC_SETTING_NAME_QUERY_SAD_MPEG1 = "query_sad_mpeg1";
4598    field public static final String CEC_SETTING_NAME_QUERY_SAD_MPEG2 = "query_sad_mpeg2";
4599    field public static final String CEC_SETTING_NAME_QUERY_SAD_ONEBITAUDIO = "query_sad_onebitaudio";
4600    field public static final String CEC_SETTING_NAME_QUERY_SAD_TRUEHD = "query_sad_truehd";
4601    field public static final String CEC_SETTING_NAME_QUERY_SAD_WMAPRO = "query_sad_wmapro";
4602    field public static final String CEC_SETTING_NAME_ROUTING_CONTROL = "routing_control";
4603    field public static final String CEC_SETTING_NAME_SOUNDBAR_MODE = "soundbar_mode";
4604    field public static final String CEC_SETTING_NAME_SYSTEM_AUDIO_CONTROL = "system_audio_control";
4605    field public static final String CEC_SETTING_NAME_SYSTEM_AUDIO_MODE_MUTING = "system_audio_mode_muting";
4606    field public static final String CEC_SETTING_NAME_TV_SEND_STANDBY_ON_SLEEP = "tv_send_standby_on_sleep";
4607    field public static final String CEC_SETTING_NAME_TV_WAKE_ON_ONE_TOUCH_PLAY = "tv_wake_on_one_touch_play";
4608    field public static final String CEC_SETTING_NAME_VOLUME_CONTROL_MODE = "volume_control_enabled";
4609    field public static final int CLEAR_TIMER_STATUS_CEC_DISABLE = 162; // 0xa2
4610    field public static final int CLEAR_TIMER_STATUS_CHECK_RECORDER_CONNECTION = 160; // 0xa0
4611    field public static final int CLEAR_TIMER_STATUS_FAIL_TO_CLEAR_SELECTED_SOURCE = 161; // 0xa1
4612    field public static final int CLEAR_TIMER_STATUS_TIMER_CLEARED = 128; // 0x80
4613    field public static final int CLEAR_TIMER_STATUS_TIMER_NOT_CLEARED_NO_INFO_AVAILABLE = 2; // 0x2
4614    field public static final int CLEAR_TIMER_STATUS_TIMER_NOT_CLEARED_NO_MATCHING = 1; // 0x1
4615    field public static final int CLEAR_TIMER_STATUS_TIMER_NOT_CLEARED_RECORDING = 0; // 0x0
4616    field public static final int CONTROL_STATE_CHANGED_REASON_SETTING = 1; // 0x1
4617    field public static final int CONTROL_STATE_CHANGED_REASON_STANDBY = 3; // 0x3
4618    field public static final int CONTROL_STATE_CHANGED_REASON_START = 0; // 0x0
4619    field public static final int CONTROL_STATE_CHANGED_REASON_WAKEUP = 2; // 0x2
4620    field public static final int DEVICE_EVENT_ADD_DEVICE = 1; // 0x1
4621    field public static final int DEVICE_EVENT_REMOVE_DEVICE = 2; // 0x2
4622    field public static final int DEVICE_EVENT_UPDATE_DEVICE = 3; // 0x3
4623    field public static final int EARC_FEATURE_DISABLED = 0; // 0x0
4624    field public static final int EARC_FEATURE_ENABLED = 1; // 0x1
4625    field public static final String EXTRA_MESSAGE_EXTRA_PARAM1 = "android.hardware.hdmi.extra.MESSAGE_EXTRA_PARAM1";
4626    field public static final String EXTRA_MESSAGE_ID = "android.hardware.hdmi.extra.MESSAGE_ID";
4627    field public static final int HDMI_CEC_CONTROL_DISABLED = 0; // 0x0
4628    field public static final int HDMI_CEC_CONTROL_ENABLED = 1; // 0x1
4629    field public static final int HDMI_CEC_VERSION_1_4_B = 5; // 0x5
4630    field public static final int HDMI_CEC_VERSION_2_0 = 6; // 0x6
4631    field public static final int ONE_TOUCH_RECORD_ALREADY_RECORDING = 18; // 0x12
4632    field public static final int ONE_TOUCH_RECORD_CEC_DISABLED = 51; // 0x33
4633    field public static final int ONE_TOUCH_RECORD_CHECK_RECORDER_CONNECTION = 49; // 0x31
4634    field public static final int ONE_TOUCH_RECORD_DISALLOW_TO_COPY = 13; // 0xd
4635    field public static final int ONE_TOUCH_RECORD_DISALLOW_TO_FUTHER_COPIES = 14; // 0xe
4636    field public static final int ONE_TOUCH_RECORD_FAIL_TO_RECORD_DISPLAYED_SCREEN = 50; // 0x32
4637    field public static final int ONE_TOUCH_RECORD_INVALID_EXTERNAL_PHYSICAL_ADDRESS = 10; // 0xa
4638    field public static final int ONE_TOUCH_RECORD_INVALID_EXTERNAL_PLUG_NUMBER = 9; // 0x9
4639    field public static final int ONE_TOUCH_RECORD_MEDIA_PROBLEM = 21; // 0x15
4640    field public static final int ONE_TOUCH_RECORD_MEDIA_PROTECTED = 19; // 0x13
4641    field public static final int ONE_TOUCH_RECORD_NOT_ENOUGH_SPACE = 22; // 0x16
4642    field public static final int ONE_TOUCH_RECORD_NO_MEDIA = 16; // 0x10
4643    field public static final int ONE_TOUCH_RECORD_NO_OR_INSUFFICIENT_CA_ENTITLEMENTS = 12; // 0xc
4644    field public static final int ONE_TOUCH_RECORD_NO_SOURCE_SIGNAL = 20; // 0x14
4645    field public static final int ONE_TOUCH_RECORD_OTHER_REASON = 31; // 0x1f
4646    field public static final int ONE_TOUCH_RECORD_PARENT_LOCK_ON = 23; // 0x17
4647    field public static final int ONE_TOUCH_RECORD_PLAYING = 17; // 0x11
4648    field public static final int ONE_TOUCH_RECORD_PREVIOUS_RECORDING_IN_PROGRESS = 48; // 0x30
4649    field public static final int ONE_TOUCH_RECORD_RECORDING_ALREADY_TERMINATED = 27; // 0x1b
4650    field public static final int ONE_TOUCH_RECORD_RECORDING_ANALOGUE_SERVICE = 3; // 0x3
4651    field public static final int ONE_TOUCH_RECORD_RECORDING_CURRENTLY_SELECTED_SOURCE = 1; // 0x1
4652    field public static final int ONE_TOUCH_RECORD_RECORDING_DIGITAL_SERVICE = 2; // 0x2
4653    field public static final int ONE_TOUCH_RECORD_RECORDING_EXTERNAL_INPUT = 4; // 0x4
4654    field public static final int ONE_TOUCH_RECORD_RECORDING_TERMINATED_NORMALLY = 26; // 0x1a
4655    field public static final int ONE_TOUCH_RECORD_UNABLE_ANALOGUE_SERVICE = 6; // 0x6
4656    field public static final int ONE_TOUCH_RECORD_UNABLE_DIGITAL_SERVICE = 5; // 0x5
4657    field public static final int ONE_TOUCH_RECORD_UNABLE_SELECTED_SERVICE = 7; // 0x7
4658    field public static final int ONE_TOUCH_RECORD_UNSUPPORTED_CA = 11; // 0xb
4659    field public static final int OSD_MESSAGE_ARC_CONNECTED_INVALID_PORT = 1; // 0x1
4660    field public static final int OSD_MESSAGE_AVR_VOLUME_CHANGED = 2; // 0x2
4661    field public static final String POWER_CONTROL_MODE_BROADCAST = "broadcast";
4662    field public static final String POWER_CONTROL_MODE_NONE = "none";
4663    field public static final String POWER_CONTROL_MODE_TV = "to_tv";
4664    field public static final String POWER_CONTROL_MODE_TV_AND_AUDIO_SYSTEM = "to_tv_and_audio_system";
4665    field public static final String POWER_STATE_CHANGE_ON_ACTIVE_SOURCE_LOST_NONE = "none";
4666    field public static final String POWER_STATE_CHANGE_ON_ACTIVE_SOURCE_LOST_STANDBY_NOW = "standby_now";
4667    field public static final int POWER_STATUS_ON = 0; // 0x0
4668    field public static final int POWER_STATUS_STANDBY = 1; // 0x1
4669    field public static final int POWER_STATUS_TRANSIENT_TO_ON = 2; // 0x2
4670    field public static final int POWER_STATUS_TRANSIENT_TO_STANDBY = 3; // 0x3
4671    field public static final int POWER_STATUS_UNKNOWN = -1; // 0xffffffff
4672    field public static final int QUERY_SAD_DISABLED = 0; // 0x0
4673    field public static final int QUERY_SAD_ENABLED = 1; // 0x1
4674    field @Deprecated public static final int RESULT_ALREADY_IN_PROGRESS = 4; // 0x4
4675    field public static final int RESULT_COMMUNICATION_FAILED = 7; // 0x7
4676    field public static final int RESULT_EXCEPTION = 5; // 0x5
4677    field public static final int RESULT_INCORRECT_MODE = 6; // 0x6
4678    field public static final int RESULT_SOURCE_NOT_AVAILABLE = 2; // 0x2
4679    field public static final int RESULT_SUCCESS = 0; // 0x0
4680    field public static final int RESULT_TARGET_NOT_AVAILABLE = 3; // 0x3
4681    field public static final int RESULT_TIMEOUT = 1; // 0x1
4682    field public static final int ROUTING_CONTROL_DISABLED = 0; // 0x0
4683    field public static final int ROUTING_CONTROL_ENABLED = 1; // 0x1
4684    field public static final String SETTING_NAME_EARC_ENABLED = "earc_enabled";
4685    field public static final int SOUNDBAR_MODE_DISABLED = 0; // 0x0
4686    field public static final int SOUNDBAR_MODE_ENABLED = 1; // 0x1
4687    field public static final int SYSTEM_AUDIO_CONTROL_DISABLED = 0; // 0x0
4688    field public static final int SYSTEM_AUDIO_CONTROL_ENABLED = 1; // 0x1
4689    field public static final int SYSTEM_AUDIO_MODE_MUTING_DISABLED = 0; // 0x0
4690    field public static final int SYSTEM_AUDIO_MODE_MUTING_ENABLED = 1; // 0x1
4691    field public static final int TIMER_RECORDING_RESULT_EXTRA_CEC_DISABLED = 3; // 0x3
4692    field public static final int TIMER_RECORDING_RESULT_EXTRA_CHECK_RECORDER_CONNECTION = 1; // 0x1
4693    field public static final int TIMER_RECORDING_RESULT_EXTRA_FAIL_TO_RECORD_SELECTED_SOURCE = 2; // 0x2
4694    field public static final int TIMER_RECORDING_RESULT_EXTRA_NO_ERROR = 0; // 0x0
4695    field public static final int TIMER_RECORDING_TYPE_ANALOGUE = 2; // 0x2
4696    field public static final int TIMER_RECORDING_TYPE_DIGITAL = 1; // 0x1
4697    field public static final int TIMER_RECORDING_TYPE_EXTERNAL = 3; // 0x3
4698    field public static final int TIMER_STATUS_MEDIA_INFO_NOT_PRESENT = 2; // 0x2
4699    field public static final int TIMER_STATUS_MEDIA_INFO_PRESENT_NOT_PROTECTED = 0; // 0x0
4700    field public static final int TIMER_STATUS_MEDIA_INFO_PRESENT_PROTECTED = 1; // 0x1
4701    field public static final int TIMER_STATUS_NOT_PROGRAMMED_CA_NOT_SUPPORTED = 6; // 0x6
4702    field public static final int TIMER_STATUS_NOT_PROGRAMMED_CLOCK_FAILURE = 10; // 0xa
4703    field public static final int TIMER_STATUS_NOT_PROGRAMMED_DATE_OUT_OF_RANGE = 2; // 0x2
4704    field public static final int TIMER_STATUS_NOT_PROGRAMMED_DUPLICATED = 14; // 0xe
4705    field public static final int TIMER_STATUS_NOT_PROGRAMMED_INVALID_EXTERNAL_PHYSICAL_NUMBER = 5; // 0x5
4706    field public static final int TIMER_STATUS_NOT_PROGRAMMED_INVALID_EXTERNAL_PLUG_NUMBER = 4; // 0x4
4707    field public static final int TIMER_STATUS_NOT_PROGRAMMED_INVALID_SEQUENCE = 3; // 0x3
4708    field public static final int TIMER_STATUS_NOT_PROGRAMMED_NO_CA_ENTITLEMENTS = 7; // 0x7
4709    field public static final int TIMER_STATUS_NOT_PROGRAMMED_NO_FREE_TIME = 1; // 0x1
4710    field public static final int TIMER_STATUS_NOT_PROGRAMMED_PARENTAL_LOCK_ON = 9; // 0x9
4711    field public static final int TIMER_STATUS_NOT_PROGRAMMED_UNSUPPORTED_RESOLUTION = 8; // 0x8
4712    field public static final int TIMER_STATUS_PROGRAMMED_INFO_ENOUGH_SPACE = 8; // 0x8
4713    field public static final int TIMER_STATUS_PROGRAMMED_INFO_MIGHT_NOT_ENOUGH_SPACE = 11; // 0xb
4714    field public static final int TIMER_STATUS_PROGRAMMED_INFO_NOT_ENOUGH_SPACE = 9; // 0x9
4715    field public static final int TIMER_STATUS_PROGRAMMED_INFO_NO_MEDIA_INFO = 10; // 0xa
4716    field public static final int TV_SEND_STANDBY_ON_SLEEP_DISABLED = 0; // 0x0
4717    field public static final int TV_SEND_STANDBY_ON_SLEEP_ENABLED = 1; // 0x1
4718    field public static final int TV_WAKE_ON_ONE_TOUCH_PLAY_DISABLED = 0; // 0x0
4719    field public static final int TV_WAKE_ON_ONE_TOUCH_PLAY_ENABLED = 1; // 0x1
4720    field public static final int VOLUME_CONTROL_DISABLED = 0; // 0x0
4721    field public static final int VOLUME_CONTROL_ENABLED = 1; // 0x1
4722  }
4723
4724  public static interface HdmiControlManager.CecSettingChangeListener {
4725    method public void onChange(@NonNull String);
4726  }
4727
4728  @IntDef({android.hardware.hdmi.HdmiControlManager.RESULT_SUCCESS, android.hardware.hdmi.HdmiControlManager.RESULT_TIMEOUT, android.hardware.hdmi.HdmiControlManager.RESULT_SOURCE_NOT_AVAILABLE, android.hardware.hdmi.HdmiControlManager.RESULT_TARGET_NOT_AVAILABLE, android.hardware.hdmi.HdmiControlManager.RESULT_ALREADY_IN_PROGRESS, android.hardware.hdmi.HdmiControlManager.RESULT_EXCEPTION, android.hardware.hdmi.HdmiControlManager.RESULT_INCORRECT_MODE, android.hardware.hdmi.HdmiControlManager.RESULT_COMMUNICATION_FAILED}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) public static @interface HdmiControlManager.ControlCallbackResult {
4729  }
4730
4731  public static interface HdmiControlManager.HotplugEventListener {
4732    method public void onReceived(android.hardware.hdmi.HdmiHotplugEvent);
4733  }
4734
4735  public static interface HdmiControlManager.VendorCommandListener {
4736    method public void onControlStateChanged(boolean, int);
4737    method public void onReceived(int, int, byte[], boolean);
4738  }
4739
4740  public class HdmiDeviceInfo implements android.os.Parcelable {
4741    ctor @Deprecated public HdmiDeviceInfo();
4742    method public int describeContents();
4743    method public int getAdopterId();
4744    method public int getDeviceId();
4745    method public int getDevicePowerStatus();
4746    method public int getDeviceType();
4747    method public String getDisplayName();
4748    method public int getId();
4749    method public int getLogicalAddress();
4750    method public int getPhysicalAddress();
4751    method public int getPortId();
4752    method public int getVendorId();
4753    method public static int idForCecDevice(int);
4754    method public static int idForHardware(int);
4755    method public static int idForMhlDevice(int);
4756    method public boolean isCecDevice();
4757    method public boolean isInactivated();
4758    method public boolean isMhlDevice();
4759    method public boolean isSourceType();
4760    method public void writeToParcel(android.os.Parcel, int);
4761    field public static final int ADDR_INTERNAL = 0; // 0x0
4762    field public static final int ADDR_INVALID = -1; // 0xffffffff
4763    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.hdmi.HdmiDeviceInfo> CREATOR;
4764    field public static final int DEVICE_AUDIO_SYSTEM = 5; // 0x5
4765    field public static final int DEVICE_INACTIVE = -1; // 0xffffffff
4766    field public static final int DEVICE_PLAYBACK = 4; // 0x4
4767    field public static final int DEVICE_RECORDER = 1; // 0x1
4768    field public static final int DEVICE_RESERVED = 2; // 0x2
4769    field public static final int DEVICE_TUNER = 3; // 0x3
4770    field public static final int DEVICE_TV = 0; // 0x0
4771    field public static final int ID_INVALID = 65535; // 0xffff
4772    field public static final android.hardware.hdmi.HdmiDeviceInfo INACTIVE_DEVICE;
4773    field public static final int PATH_INTERNAL = 0; // 0x0
4774    field public static final int PATH_INVALID = 65535; // 0xffff
4775    field public static final int PORT_INVALID = -1; // 0xffffffff
4776    field public static final int VENDOR_ID_UNKNOWN = 16777215; // 0xffffff
4777  }
4778
4779  public final class HdmiHotplugEvent implements android.os.Parcelable {
4780    method public int describeContents();
4781    method public int getPort();
4782    method public boolean isConnected();
4783    method public void writeToParcel(android.os.Parcel, int);
4784    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.hdmi.HdmiHotplugEvent> CREATOR;
4785  }
4786
4787  public final class HdmiPlaybackClient extends android.hardware.hdmi.HdmiClient {
4788    method public int getDeviceType();
4789    method public void oneTouchPlay(android.hardware.hdmi.HdmiPlaybackClient.OneTouchPlayCallback);
4790    method public void queryDisplayStatus(android.hardware.hdmi.HdmiPlaybackClient.DisplayStatusCallback);
4791    method public void sendStandby();
4792  }
4793
4794  public static interface HdmiPlaybackClient.DisplayStatusCallback {
4795    method public void onComplete(int);
4796  }
4797
4798  public static interface HdmiPlaybackClient.OneTouchPlayCallback {
4799    method public void onComplete(int);
4800  }
4801
4802  public final class HdmiPortInfo implements android.os.Parcelable {
4803    ctor @Deprecated public HdmiPortInfo(int, int, int, boolean, boolean, boolean);
4804    method public int describeContents();
4805    method public int getAddress();
4806    method public int getId();
4807    method public int getType();
4808    method public boolean isArcSupported();
4809    method public boolean isCecSupported();
4810    method public boolean isEarcSupported();
4811    method public boolean isMhlSupported();
4812    method public void writeToParcel(android.os.Parcel, int);
4813    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.hdmi.HdmiPortInfo> CREATOR;
4814    field public static final int PORT_INPUT = 0; // 0x0
4815    field public static final int PORT_OUTPUT = 1; // 0x1
4816  }
4817
4818  public static final class HdmiPortInfo.Builder {
4819    ctor public HdmiPortInfo.Builder(int, int, int);
4820    method @NonNull public android.hardware.hdmi.HdmiPortInfo build();
4821    method @NonNull public android.hardware.hdmi.HdmiPortInfo.Builder setArcSupported(boolean);
4822    method @NonNull public android.hardware.hdmi.HdmiPortInfo.Builder setCecSupported(boolean);
4823    method @NonNull public android.hardware.hdmi.HdmiPortInfo.Builder setEarcSupported(boolean);
4824    method @NonNull public android.hardware.hdmi.HdmiPortInfo.Builder setMhlSupported(boolean);
4825  }
4826
4827  public abstract class HdmiRecordListener {
4828    ctor public HdmiRecordListener();
4829    method public void onClearTimerRecordingResult(int, int);
4830    method public void onOneTouchRecordResult(int, int);
4831    method public abstract android.hardware.hdmi.HdmiRecordSources.RecordSource onOneTouchRecordSourceRequested(int);
4832    method public void onTimerRecordingResult(int, android.hardware.hdmi.HdmiRecordListener.TimerStatusData);
4833  }
4834
4835  public static class HdmiRecordListener.TimerStatusData {
4836    method public int getDurationHour();
4837    method public int getDurationMinute();
4838    method public int getExtraError();
4839    method public int getMediaInfo();
4840    method public int getNotProgammedError();
4841    method public int getProgrammedInfo();
4842    method public boolean isOverlapped();
4843    method public boolean isProgrammed();
4844  }
4845
4846  public final class HdmiRecordSources {
4847    method public static boolean checkRecordSource(byte[]);
4848    method public static android.hardware.hdmi.HdmiRecordSources.OwnSource ofOwnSource();
4849  }
4850
4851  public static final class HdmiRecordSources.AnalogueServiceSource extends android.hardware.hdmi.HdmiRecordSources.RecordSource {
4852  }
4853
4854  public static final class HdmiRecordSources.DigitalServiceSource extends android.hardware.hdmi.HdmiRecordSources.RecordSource {
4855  }
4856
4857  public static final class HdmiRecordSources.ExternalPhysicalAddress extends android.hardware.hdmi.HdmiRecordSources.RecordSource {
4858  }
4859
4860  public static final class HdmiRecordSources.ExternalPlugData extends android.hardware.hdmi.HdmiRecordSources.RecordSource {
4861  }
4862
4863  public static final class HdmiRecordSources.OwnSource extends android.hardware.hdmi.HdmiRecordSources.RecordSource {
4864  }
4865
4866  public abstract static class HdmiRecordSources.RecordSource {
4867  }
4868
4869  public class HdmiSwitchClient extends android.hardware.hdmi.HdmiClient {
4870    method public int getDeviceType();
4871    method @Deprecated @NonNull public java.util.List<android.hardware.hdmi.HdmiPortInfo> getPortInfo();
4872    method public void selectPort(int, @NonNull android.hardware.hdmi.HdmiSwitchClient.OnSelectListener);
4873    method public void selectPort(int, @NonNull java.util.concurrent.Executor, @NonNull android.hardware.hdmi.HdmiSwitchClient.OnSelectListener);
4874  }
4875
4876  public static interface HdmiSwitchClient.OnSelectListener {
4877    method public void onSelect(@android.hardware.hdmi.HdmiControlManager.ControlCallbackResult int);
4878  }
4879
4880  public class HdmiTimerRecordSources {
4881    method public static boolean checkTimerRecordSource(int, byte[]);
4882    method public static android.hardware.hdmi.HdmiTimerRecordSources.Duration durationOf(int, int);
4883    method public static android.hardware.hdmi.HdmiTimerRecordSources.TimerRecordSource ofAnalogueSource(android.hardware.hdmi.HdmiTimerRecordSources.TimerInfo, android.hardware.hdmi.HdmiRecordSources.AnalogueServiceSource);
4884    method public static android.hardware.hdmi.HdmiTimerRecordSources.TimerRecordSource ofDigitalSource(android.hardware.hdmi.HdmiTimerRecordSources.TimerInfo, android.hardware.hdmi.HdmiRecordSources.DigitalServiceSource);
4885    method public static android.hardware.hdmi.HdmiTimerRecordSources.TimerRecordSource ofExternalPhysicalAddress(android.hardware.hdmi.HdmiTimerRecordSources.TimerInfo, android.hardware.hdmi.HdmiRecordSources.ExternalPhysicalAddress);
4886    method public static android.hardware.hdmi.HdmiTimerRecordSources.TimerRecordSource ofExternalPlug(android.hardware.hdmi.HdmiTimerRecordSources.TimerInfo, android.hardware.hdmi.HdmiRecordSources.ExternalPlugData);
4887    method public static android.hardware.hdmi.HdmiTimerRecordSources.Time timeOf(int, int);
4888    method public static android.hardware.hdmi.HdmiTimerRecordSources.TimerInfo timerInfoOf(int, int, android.hardware.hdmi.HdmiTimerRecordSources.Time, android.hardware.hdmi.HdmiTimerRecordSources.Duration, int);
4889    field public static final int RECORDING_SEQUENCE_REPEAT_FRIDAY = 32; // 0x20
4890    field public static final int RECORDING_SEQUENCE_REPEAT_MONDAY = 2; // 0x2
4891    field public static final int RECORDING_SEQUENCE_REPEAT_ONCE_ONLY = 0; // 0x0
4892    field public static final int RECORDING_SEQUENCE_REPEAT_SATUREDAY = 64; // 0x40
4893    field public static final int RECORDING_SEQUENCE_REPEAT_SUNDAY = 1; // 0x1
4894    field public static final int RECORDING_SEQUENCE_REPEAT_THURSDAY = 16; // 0x10
4895    field public static final int RECORDING_SEQUENCE_REPEAT_TUESDAY = 4; // 0x4
4896    field public static final int RECORDING_SEQUENCE_REPEAT_WEDNESDAY = 8; // 0x8
4897  }
4898
4899  public static final class HdmiTimerRecordSources.Duration {
4900  }
4901
4902  public static final class HdmiTimerRecordSources.Time {
4903  }
4904
4905  public static final class HdmiTimerRecordSources.TimerInfo {
4906  }
4907
4908  public static final class HdmiTimerRecordSources.TimerRecordSource {
4909  }
4910
4911  public final class HdmiTvClient extends android.hardware.hdmi.HdmiClient {
4912    method public void clearTimerRecording(int, int, android.hardware.hdmi.HdmiTimerRecordSources.TimerRecordSource);
4913    method @Deprecated public void deviceSelect(int, @NonNull android.hardware.hdmi.HdmiTvClient.SelectCallback);
4914    method @Deprecated public java.util.List<android.hardware.hdmi.HdmiDeviceInfo> getDeviceList();
4915    method public int getDeviceType();
4916    method public void portSelect(int, @NonNull android.hardware.hdmi.HdmiTvClient.SelectCallback);
4917    method public void sendMhlVendorCommand(int, int, int, byte[]);
4918    method public void sendStandby(int);
4919    method public void setHdmiMhlVendorCommandListener(android.hardware.hdmi.HdmiTvClient.HdmiMhlVendorCommandListener);
4920    method public void setInputChangeListener(android.hardware.hdmi.HdmiTvClient.InputChangeListener);
4921    method public void setRecordListener(@NonNull android.hardware.hdmi.HdmiRecordListener);
4922    method public void setSystemAudioMode(boolean, android.hardware.hdmi.HdmiTvClient.SelectCallback);
4923    method public void setSystemAudioMute(boolean);
4924    method public void setSystemAudioVolume(int, int, int);
4925    method public void startOneTouchRecord(int, @NonNull android.hardware.hdmi.HdmiRecordSources.RecordSource);
4926    method public void startTimerRecording(int, int, android.hardware.hdmi.HdmiTimerRecordSources.TimerRecordSource);
4927    method public void stopOneTouchRecord(int);
4928    field public static final int VENDOR_DATA_SIZE = 16; // 0x10
4929  }
4930
4931  public static interface HdmiTvClient.HdmiMhlVendorCommandListener {
4932    method public void onReceived(int, int, int, byte[]);
4933  }
4934
4935  public static interface HdmiTvClient.InputChangeListener {
4936    method public void onChanged(android.hardware.hdmi.HdmiDeviceInfo);
4937  }
4938
4939  public static interface HdmiTvClient.SelectCallback {
4940    method public void onComplete(int);
4941  }
4942
4943}
4944
4945package android.hardware.input {
4946
4947  public class VirtualDpad implements java.io.Closeable {
4948    method @RequiresPermission(android.Manifest.permission.CREATE_VIRTUAL_DEVICE) public void close();
4949    method @RequiresPermission(android.Manifest.permission.CREATE_VIRTUAL_DEVICE) public void sendKeyEvent(@NonNull android.hardware.input.VirtualKeyEvent);
4950  }
4951
4952  public final class VirtualDpadConfig extends android.hardware.input.VirtualInputDeviceConfig implements android.os.Parcelable {
4953    method public int describeContents();
4954    method public void writeToParcel(@NonNull android.os.Parcel, int);
4955    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.input.VirtualDpadConfig> CREATOR;
4956  }
4957
4958  public static final class VirtualDpadConfig.Builder extends android.hardware.input.VirtualInputDeviceConfig.Builder<android.hardware.input.VirtualDpadConfig.Builder> {
4959    ctor public VirtualDpadConfig.Builder();
4960    method @NonNull public android.hardware.input.VirtualDpadConfig build();
4961  }
4962
4963  public abstract class VirtualInputDeviceConfig {
4964    ctor protected VirtualInputDeviceConfig(@NonNull android.hardware.input.VirtualInputDeviceConfig.Builder<? extends android.hardware.input.VirtualInputDeviceConfig.Builder<?>>);
4965    ctor protected VirtualInputDeviceConfig(@NonNull android.os.Parcel);
4966    method public int getAssociatedDisplayId();
4967    method @NonNull public String getInputDeviceName();
4968    method public int getProductId();
4969    method public int getVendorId();
4970  }
4971
4972  public abstract static class VirtualInputDeviceConfig.Builder<T extends android.hardware.input.VirtualInputDeviceConfig.Builder<T>> {
4973    ctor public VirtualInputDeviceConfig.Builder();
4974    method @NonNull public T setAssociatedDisplayId(int);
4975    method @NonNull public T setInputDeviceName(@NonNull String);
4976    method @NonNull public T setProductId(int);
4977    method @NonNull public T setVendorId(int);
4978  }
4979
4980  public final class VirtualKeyEvent implements android.os.Parcelable {
4981    method public int describeContents();
4982    method public int getAction();
4983    method public long getEventTimeNanos();
4984    method public int getKeyCode();
4985    method public void writeToParcel(@NonNull android.os.Parcel, int);
4986    field public static final int ACTION_DOWN = 0; // 0x0
4987    field public static final int ACTION_UP = 1; // 0x1
4988    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.input.VirtualKeyEvent> CREATOR;
4989  }
4990
4991  public static final class VirtualKeyEvent.Builder {
4992    ctor public VirtualKeyEvent.Builder();
4993    method @NonNull public android.hardware.input.VirtualKeyEvent build();
4994    method @NonNull public android.hardware.input.VirtualKeyEvent.Builder setAction(int);
4995    method @NonNull public android.hardware.input.VirtualKeyEvent.Builder setEventTimeNanos(long);
4996    method @NonNull public android.hardware.input.VirtualKeyEvent.Builder setKeyCode(int);
4997  }
4998
4999  public class VirtualKeyboard implements java.io.Closeable {
5000    method @RequiresPermission(android.Manifest.permission.CREATE_VIRTUAL_DEVICE) public void close();
5001    method @RequiresPermission(android.Manifest.permission.CREATE_VIRTUAL_DEVICE) public void sendKeyEvent(@NonNull android.hardware.input.VirtualKeyEvent);
5002  }
5003
5004  public final class VirtualKeyboardConfig extends android.hardware.input.VirtualInputDeviceConfig implements android.os.Parcelable {
5005    method public int describeContents();
5006    method @NonNull public String getLanguageTag();
5007    method @NonNull public String getLayoutType();
5008    method public void writeToParcel(@NonNull android.os.Parcel, int);
5009    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.input.VirtualKeyboardConfig> CREATOR;
5010    field public static final String DEFAULT_LANGUAGE_TAG = "en-Latn-US";
5011    field public static final String DEFAULT_LAYOUT_TYPE = "qwerty";
5012  }
5013
5014  public static final class VirtualKeyboardConfig.Builder extends android.hardware.input.VirtualInputDeviceConfig.Builder<android.hardware.input.VirtualKeyboardConfig.Builder> {
5015    ctor public VirtualKeyboardConfig.Builder();
5016    method @NonNull public android.hardware.input.VirtualKeyboardConfig build();
5017    method @NonNull public android.hardware.input.VirtualKeyboardConfig.Builder setLanguageTag(@NonNull String);
5018    method @NonNull public android.hardware.input.VirtualKeyboardConfig.Builder setLayoutType(@NonNull String);
5019  }
5020
5021  public class VirtualMouse implements java.io.Closeable {
5022    method @RequiresPermission(android.Manifest.permission.CREATE_VIRTUAL_DEVICE) public void close();
5023    method @NonNull @RequiresPermission(android.Manifest.permission.CREATE_VIRTUAL_DEVICE) public android.graphics.PointF getCursorPosition();
5024    method @RequiresPermission(android.Manifest.permission.CREATE_VIRTUAL_DEVICE) public void sendButtonEvent(@NonNull android.hardware.input.VirtualMouseButtonEvent);
5025    method @RequiresPermission(android.Manifest.permission.CREATE_VIRTUAL_DEVICE) public void sendRelativeEvent(@NonNull android.hardware.input.VirtualMouseRelativeEvent);
5026    method @RequiresPermission(android.Manifest.permission.CREATE_VIRTUAL_DEVICE) public void sendScrollEvent(@NonNull android.hardware.input.VirtualMouseScrollEvent);
5027  }
5028
5029  public final class VirtualMouseButtonEvent implements android.os.Parcelable {
5030    method public int describeContents();
5031    method public int getAction();
5032    method public int getButtonCode();
5033    method public long getEventTimeNanos();
5034    method public void writeToParcel(@NonNull android.os.Parcel, int);
5035    field public static final int ACTION_BUTTON_PRESS = 11; // 0xb
5036    field public static final int ACTION_BUTTON_RELEASE = 12; // 0xc
5037    field public static final int BUTTON_BACK = 8; // 0x8
5038    field public static final int BUTTON_FORWARD = 16; // 0x10
5039    field public static final int BUTTON_PRIMARY = 1; // 0x1
5040    field public static final int BUTTON_SECONDARY = 2; // 0x2
5041    field public static final int BUTTON_TERTIARY = 4; // 0x4
5042    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.input.VirtualMouseButtonEvent> CREATOR;
5043  }
5044
5045  public static final class VirtualMouseButtonEvent.Builder {
5046    ctor public VirtualMouseButtonEvent.Builder();
5047    method @NonNull public android.hardware.input.VirtualMouseButtonEvent build();
5048    method @NonNull public android.hardware.input.VirtualMouseButtonEvent.Builder setAction(int);
5049    method @NonNull public android.hardware.input.VirtualMouseButtonEvent.Builder setButtonCode(int);
5050    method @NonNull public android.hardware.input.VirtualMouseButtonEvent.Builder setEventTimeNanos(long);
5051  }
5052
5053  public final class VirtualMouseConfig extends android.hardware.input.VirtualInputDeviceConfig implements android.os.Parcelable {
5054    method public int describeContents();
5055    method public void writeToParcel(@NonNull android.os.Parcel, int);
5056    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.input.VirtualMouseConfig> CREATOR;
5057  }
5058
5059  public static final class VirtualMouseConfig.Builder extends android.hardware.input.VirtualInputDeviceConfig.Builder<android.hardware.input.VirtualMouseConfig.Builder> {
5060    ctor public VirtualMouseConfig.Builder();
5061    method @NonNull public android.hardware.input.VirtualMouseConfig build();
5062  }
5063
5064  public final class VirtualMouseRelativeEvent implements android.os.Parcelable {
5065    method public int describeContents();
5066    method public long getEventTimeNanos();
5067    method public float getRelativeX();
5068    method public float getRelativeY();
5069    method public void writeToParcel(@NonNull android.os.Parcel, int);
5070    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.input.VirtualMouseRelativeEvent> CREATOR;
5071  }
5072
5073  public static final class VirtualMouseRelativeEvent.Builder {
5074    ctor public VirtualMouseRelativeEvent.Builder();
5075    method @NonNull public android.hardware.input.VirtualMouseRelativeEvent build();
5076    method @NonNull public android.hardware.input.VirtualMouseRelativeEvent.Builder setEventTimeNanos(long);
5077    method @NonNull public android.hardware.input.VirtualMouseRelativeEvent.Builder setRelativeX(float);
5078    method @NonNull public android.hardware.input.VirtualMouseRelativeEvent.Builder setRelativeY(float);
5079  }
5080
5081  public final class VirtualMouseScrollEvent implements android.os.Parcelable {
5082    method public int describeContents();
5083    method public long getEventTimeNanos();
5084    method public float getXAxisMovement();
5085    method public float getYAxisMovement();
5086    method public void writeToParcel(@NonNull android.os.Parcel, int);
5087    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.input.VirtualMouseScrollEvent> CREATOR;
5088  }
5089
5090  public static final class VirtualMouseScrollEvent.Builder {
5091    ctor public VirtualMouseScrollEvent.Builder();
5092    method @NonNull public android.hardware.input.VirtualMouseScrollEvent build();
5093    method @NonNull public android.hardware.input.VirtualMouseScrollEvent.Builder setEventTimeNanos(long);
5094    method @NonNull public android.hardware.input.VirtualMouseScrollEvent.Builder setXAxisMovement(@FloatRange(from=-1.0F, to=1.0f) float);
5095    method @NonNull public android.hardware.input.VirtualMouseScrollEvent.Builder setYAxisMovement(@FloatRange(from=-1.0F, to=1.0f) float);
5096  }
5097
5098  public class VirtualNavigationTouchpad implements java.io.Closeable {
5099    method @RequiresPermission(android.Manifest.permission.CREATE_VIRTUAL_DEVICE) public void close();
5100    method @RequiresPermission(android.Manifest.permission.CREATE_VIRTUAL_DEVICE) public void sendTouchEvent(@NonNull android.hardware.input.VirtualTouchEvent);
5101  }
5102
5103  public final class VirtualNavigationTouchpadConfig extends android.hardware.input.VirtualInputDeviceConfig implements android.os.Parcelable {
5104    method public int describeContents();
5105    method @IntRange(from=1) public int getHeight();
5106    method @IntRange(from=1) public int getWidth();
5107    method public void writeToParcel(@NonNull android.os.Parcel, int);
5108    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.input.VirtualNavigationTouchpadConfig> CREATOR;
5109  }
5110
5111  public static final class VirtualNavigationTouchpadConfig.Builder extends android.hardware.input.VirtualInputDeviceConfig.Builder<android.hardware.input.VirtualNavigationTouchpadConfig.Builder> {
5112    ctor public VirtualNavigationTouchpadConfig.Builder(@IntRange(from=1) int, @IntRange(from=1) int);
5113    method @NonNull public android.hardware.input.VirtualNavigationTouchpadConfig build();
5114  }
5115
5116  public final class VirtualTouchEvent implements android.os.Parcelable {
5117    method public int describeContents();
5118    method public int getAction();
5119    method public long getEventTimeNanos();
5120    method public float getMajorAxisSize();
5121    method public int getPointerId();
5122    method public float getPressure();
5123    method public int getToolType();
5124    method public float getX();
5125    method public float getY();
5126    method public void writeToParcel(@NonNull android.os.Parcel, int);
5127    field public static final int ACTION_CANCEL = 3; // 0x3
5128    field public static final int ACTION_DOWN = 0; // 0x0
5129    field public static final int ACTION_MOVE = 2; // 0x2
5130    field public static final int ACTION_UP = 1; // 0x1
5131    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.input.VirtualTouchEvent> CREATOR;
5132    field public static final int TOOL_TYPE_FINGER = 1; // 0x1
5133    field public static final int TOOL_TYPE_PALM = 5; // 0x5
5134  }
5135
5136  public static final class VirtualTouchEvent.Builder {
5137    ctor public VirtualTouchEvent.Builder();
5138    method @NonNull public android.hardware.input.VirtualTouchEvent build();
5139    method @NonNull public android.hardware.input.VirtualTouchEvent.Builder setAction(int);
5140    method @NonNull public android.hardware.input.VirtualTouchEvent.Builder setEventTimeNanos(long);
5141    method @NonNull public android.hardware.input.VirtualTouchEvent.Builder setMajorAxisSize(@FloatRange(from=0.0f) float);
5142    method @NonNull public android.hardware.input.VirtualTouchEvent.Builder setPointerId(@IntRange(from=0, to=0x10 - 1) int);
5143    method @NonNull public android.hardware.input.VirtualTouchEvent.Builder setPressure(@FloatRange(from=0.0f) float);
5144    method @NonNull public android.hardware.input.VirtualTouchEvent.Builder setToolType(int);
5145    method @NonNull public android.hardware.input.VirtualTouchEvent.Builder setX(float);
5146    method @NonNull public android.hardware.input.VirtualTouchEvent.Builder setY(float);
5147  }
5148
5149  public class VirtualTouchscreen implements java.io.Closeable {
5150    method @RequiresPermission(android.Manifest.permission.CREATE_VIRTUAL_DEVICE) public void close();
5151    method @RequiresPermission(android.Manifest.permission.CREATE_VIRTUAL_DEVICE) public void sendTouchEvent(@NonNull android.hardware.input.VirtualTouchEvent);
5152  }
5153
5154  public final class VirtualTouchscreenConfig extends android.hardware.input.VirtualInputDeviceConfig implements android.os.Parcelable {
5155    method public int describeContents();
5156    method public int getHeight();
5157    method public int getWidth();
5158    method public void writeToParcel(@NonNull android.os.Parcel, int);
5159    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.input.VirtualTouchscreenConfig> CREATOR;
5160  }
5161
5162  public static final class VirtualTouchscreenConfig.Builder extends android.hardware.input.VirtualInputDeviceConfig.Builder<android.hardware.input.VirtualTouchscreenConfig.Builder> {
5163    ctor public VirtualTouchscreenConfig.Builder(@IntRange(from=1) int, @IntRange(from=1) int);
5164    method @NonNull public android.hardware.input.VirtualTouchscreenConfig build();
5165  }
5166
5167}
5168
5169package android.hardware.lights {
5170
5171  public final class LightState implements android.os.Parcelable {
5172    ctor @Deprecated public LightState(@ColorInt int);
5173  }
5174
5175  public abstract class LightsManager {
5176    field @Deprecated public static final int LIGHT_TYPE_MICROPHONE = 8; // 0x8
5177  }
5178
5179  public static final class LightsRequest.Builder {
5180    method @Deprecated @NonNull public android.hardware.lights.LightsRequest.Builder setLight(@NonNull android.hardware.lights.Light, @NonNull android.hardware.lights.LightState);
5181  }
5182
5183}
5184
5185package android.hardware.location {
5186
5187  public class ContextHubClient implements java.io.Closeable {
5188    method public void close();
5189    method @NonNull public android.hardware.location.ContextHubInfo getAttachedHub();
5190    method @IntRange(from=0, to=65535) public int getId();
5191    method @RequiresPermission(android.Manifest.permission.ACCESS_CONTEXT_HUB) public int sendMessageToNanoApp(@NonNull android.hardware.location.NanoAppMessage);
5192  }
5193
5194  public class ContextHubClientCallback {
5195    ctor public ContextHubClientCallback();
5196    method public void onClientAuthorizationChanged(@NonNull android.hardware.location.ContextHubClient, long, int);
5197    method public void onHubReset(android.hardware.location.ContextHubClient);
5198    method public void onMessageFromNanoApp(android.hardware.location.ContextHubClient, android.hardware.location.NanoAppMessage);
5199    method public void onNanoAppAborted(android.hardware.location.ContextHubClient, long, int);
5200    method public void onNanoAppDisabled(android.hardware.location.ContextHubClient, long);
5201    method public void onNanoAppEnabled(android.hardware.location.ContextHubClient, long);
5202    method public void onNanoAppLoaded(android.hardware.location.ContextHubClient, long);
5203    method public void onNanoAppUnloaded(android.hardware.location.ContextHubClient, long);
5204  }
5205
5206  public class ContextHubInfo implements android.os.Parcelable {
5207    ctor public ContextHubInfo();
5208    method public int describeContents();
5209    method public byte getChreApiMajorVersion();
5210    method public byte getChreApiMinorVersion();
5211    method public short getChrePatchVersion();
5212    method public long getChrePlatformId();
5213    method public int getId();
5214    method public int getMaxPacketLengthBytes();
5215    method public android.hardware.location.MemoryRegion[] getMemoryRegions();
5216    method public String getName();
5217    method public float getPeakMips();
5218    method public float getPeakPowerDrawMw();
5219    method public int getPlatformVersion();
5220    method public float getSleepPowerDrawMw();
5221    method public int getStaticSwVersion();
5222    method public float getStoppedPowerDrawMw();
5223    method public int[] getSupportedSensors();
5224    method public String getToolchain();
5225    method public int getToolchainVersion();
5226    method public String getVendor();
5227    method public void writeToParcel(android.os.Parcel, int);
5228    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.location.ContextHubInfo> CREATOR;
5229  }
5230
5231  public class ContextHubIntentEvent {
5232    method @NonNull public static android.hardware.location.ContextHubIntentEvent fromIntent(@NonNull android.content.Intent);
5233    method public int getClientAuthorizationState();
5234    method @NonNull public android.hardware.location.ContextHubInfo getContextHubInfo();
5235    method public int getEventType();
5236    method public int getNanoAppAbortCode();
5237    method public long getNanoAppId();
5238    method @NonNull public android.hardware.location.NanoAppMessage getNanoAppMessage();
5239  }
5240
5241  public final class ContextHubManager {
5242    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);
5243    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);
5244    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);
5245    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);
5246    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);
5247    method @NonNull @RequiresPermission(android.Manifest.permission.ACCESS_CONTEXT_HUB) public android.hardware.location.ContextHubTransaction<java.lang.Void> disableNanoApp(@NonNull android.hardware.location.ContextHubInfo, long);
5248    method @NonNull @RequiresPermission(android.Manifest.permission.ACCESS_CONTEXT_HUB) public android.hardware.location.ContextHubTransaction<java.lang.Void> enableNanoApp(@NonNull android.hardware.location.ContextHubInfo, long);
5249    method @Deprecated @NonNull @RequiresPermission(android.Manifest.permission.ACCESS_CONTEXT_HUB) public int[] findNanoAppOnHub(int, @NonNull android.hardware.location.NanoAppFilter);
5250    method @Deprecated @RequiresPermission(android.Manifest.permission.ACCESS_CONTEXT_HUB) public int[] getContextHubHandles();
5251    method @Deprecated @RequiresPermission(android.Manifest.permission.ACCESS_CONTEXT_HUB) public android.hardware.location.ContextHubInfo getContextHubInfo(int);
5252    method @NonNull @RequiresPermission(android.Manifest.permission.ACCESS_CONTEXT_HUB) public java.util.List<android.hardware.location.ContextHubInfo> getContextHubs();
5253    method @Deprecated @Nullable @RequiresPermission(android.Manifest.permission.ACCESS_CONTEXT_HUB) public android.hardware.location.NanoAppInstanceInfo getNanoAppInstanceInfo(int);
5254    method @Deprecated @RequiresPermission(android.Manifest.permission.ACCESS_CONTEXT_HUB) public int loadNanoApp(int, @NonNull android.hardware.location.NanoApp);
5255    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);
5256    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);
5257    method @Deprecated public int registerCallback(@NonNull android.hardware.location.ContextHubManager.Callback);
5258    method @Deprecated public int registerCallback(android.hardware.location.ContextHubManager.Callback, android.os.Handler);
5259    method @Deprecated @RequiresPermission(android.Manifest.permission.ACCESS_CONTEXT_HUB) public int sendMessage(int, int, @NonNull android.hardware.location.ContextHubMessage);
5260    method @Deprecated @RequiresPermission(android.Manifest.permission.ACCESS_CONTEXT_HUB) public int unloadNanoApp(int);
5261    method @NonNull @RequiresPermission(android.Manifest.permission.ACCESS_CONTEXT_HUB) public android.hardware.location.ContextHubTransaction<java.lang.Void> unloadNanoApp(@NonNull android.hardware.location.ContextHubInfo, long);
5262    method @Deprecated public int unregisterCallback(@NonNull android.hardware.location.ContextHubManager.Callback);
5263    field public static final int AUTHORIZATION_DENIED = 0; // 0x0
5264    field public static final int AUTHORIZATION_DENIED_GRACE_PERIOD = 1; // 0x1
5265    field public static final int AUTHORIZATION_GRANTED = 2; // 0x2
5266    field public static final int EVENT_CLIENT_AUTHORIZATION = 7; // 0x7
5267    field public static final int EVENT_HUB_RESET = 6; // 0x6
5268    field public static final int EVENT_NANOAPP_ABORTED = 4; // 0x4
5269    field public static final int EVENT_NANOAPP_DISABLED = 3; // 0x3
5270    field public static final int EVENT_NANOAPP_ENABLED = 2; // 0x2
5271    field public static final int EVENT_NANOAPP_LOADED = 0; // 0x0
5272    field public static final int EVENT_NANOAPP_MESSAGE = 5; // 0x5
5273    field public static final int EVENT_NANOAPP_UNLOADED = 1; // 0x1
5274    field public static final String EXTRA_CLIENT_AUTHORIZATION_STATE = "android.hardware.location.extra.CLIENT_AUTHORIZATION_STATE";
5275    field public static final String EXTRA_CONTEXT_HUB_INFO = "android.hardware.location.extra.CONTEXT_HUB_INFO";
5276    field public static final String EXTRA_EVENT_TYPE = "android.hardware.location.extra.EVENT_TYPE";
5277    field public static final String EXTRA_MESSAGE = "android.hardware.location.extra.MESSAGE";
5278    field public static final String EXTRA_NANOAPP_ABORT_CODE = "android.hardware.location.extra.NANOAPP_ABORT_CODE";
5279    field public static final String EXTRA_NANOAPP_ID = "android.hardware.location.extra.NANOAPP_ID";
5280  }
5281
5282  @Deprecated public abstract static class ContextHubManager.Callback {
5283    ctor @Deprecated protected ContextHubManager.Callback();
5284    method @Deprecated public abstract void onMessageReceipt(int, int, @NonNull android.hardware.location.ContextHubMessage);
5285  }
5286
5287  @Deprecated public class ContextHubMessage implements android.os.Parcelable {
5288    ctor @Deprecated public ContextHubMessage(int, int, byte[]);
5289    method @Deprecated public int describeContents();
5290    method @Deprecated public byte[] getData();
5291    method @Deprecated public int getMsgType();
5292    method @Deprecated public int getVersion();
5293    method @Deprecated public void setMsgData(byte[]);
5294    method @Deprecated public void setMsgType(int);
5295    method @Deprecated public void setVersion(int);
5296    method @Deprecated public void writeToParcel(android.os.Parcel, int);
5297    field @Deprecated @NonNull public static final android.os.Parcelable.Creator<android.hardware.location.ContextHubMessage> CREATOR;
5298  }
5299
5300  public class ContextHubTransaction<T> {
5301    method public int getType();
5302    method public void setOnCompleteListener(@NonNull android.hardware.location.ContextHubTransaction.OnCompleteListener<T>, @NonNull java.util.concurrent.Executor);
5303    method public void setOnCompleteListener(@NonNull android.hardware.location.ContextHubTransaction.OnCompleteListener<T>);
5304    method public static String typeToString(int, boolean);
5305    method public android.hardware.location.ContextHubTransaction.Response<T> waitForResponse(long, java.util.concurrent.TimeUnit) throws java.lang.InterruptedException, java.util.concurrent.TimeoutException;
5306    field public static final int RESULT_FAILED_AT_HUB = 5; // 0x5
5307    field public static final int RESULT_FAILED_BAD_PARAMS = 2; // 0x2
5308    field public static final int RESULT_FAILED_BUSY = 4; // 0x4
5309    field public static final int RESULT_FAILED_HAL_UNAVAILABLE = 8; // 0x8
5310    field public static final int RESULT_FAILED_SERVICE_INTERNAL_FAILURE = 7; // 0x7
5311    field public static final int RESULT_FAILED_TIMEOUT = 6; // 0x6
5312    field public static final int RESULT_FAILED_UNINITIALIZED = 3; // 0x3
5313    field public static final int RESULT_FAILED_UNKNOWN = 1; // 0x1
5314    field public static final int RESULT_SUCCESS = 0; // 0x0
5315    field public static final int TYPE_DISABLE_NANOAPP = 3; // 0x3
5316    field public static final int TYPE_ENABLE_NANOAPP = 2; // 0x2
5317    field public static final int TYPE_LOAD_NANOAPP = 0; // 0x0
5318    field public static final int TYPE_QUERY_NANOAPPS = 4; // 0x4
5319    field public static final int TYPE_UNLOAD_NANOAPP = 1; // 0x1
5320  }
5321
5322  @java.lang.FunctionalInterface public static interface ContextHubTransaction.OnCompleteListener<L> {
5323    method public void onComplete(android.hardware.location.ContextHubTransaction<L>, android.hardware.location.ContextHubTransaction.Response<L>);
5324  }
5325
5326  public static class ContextHubTransaction.Response<R> {
5327    method public R getContents();
5328    method public int getResult();
5329  }
5330
5331  public final class GeofenceHardware {
5332    method public boolean addGeofence(int, int, android.hardware.location.GeofenceHardwareRequest, android.hardware.location.GeofenceHardwareCallback);
5333    method public int[] getMonitoringTypes();
5334    method public int getStatusOfMonitoringType(int);
5335    method public boolean pauseGeofence(int, int);
5336    method public boolean registerForMonitorStateChangeCallback(int, android.hardware.location.GeofenceHardwareMonitorCallback);
5337    method public boolean removeGeofence(int, int);
5338    method public boolean resumeGeofence(int, int, int);
5339    method public boolean unregisterForMonitorStateChangeCallback(int, android.hardware.location.GeofenceHardwareMonitorCallback);
5340    field public static final int GEOFENCE_ENTERED = 1; // 0x1
5341    field public static final int GEOFENCE_ERROR_ID_EXISTS = 2; // 0x2
5342    field public static final int GEOFENCE_ERROR_ID_UNKNOWN = 3; // 0x3
5343    field public static final int GEOFENCE_ERROR_INSUFFICIENT_MEMORY = 6; // 0x6
5344    field public static final int GEOFENCE_ERROR_INVALID_TRANSITION = 4; // 0x4
5345    field public static final int GEOFENCE_ERROR_TOO_MANY_GEOFENCES = 1; // 0x1
5346    field public static final int GEOFENCE_EXITED = 2; // 0x2
5347    field public static final int GEOFENCE_FAILURE = 5; // 0x5
5348    field public static final int GEOFENCE_SUCCESS = 0; // 0x0
5349    field public static final int GEOFENCE_UNCERTAIN = 4; // 0x4
5350    field public static final int MONITORING_TYPE_FUSED_HARDWARE = 1; // 0x1
5351    field public static final int MONITORING_TYPE_GPS_HARDWARE = 0; // 0x0
5352    field public static final int MONITOR_CURRENTLY_AVAILABLE = 0; // 0x0
5353    field public static final int MONITOR_CURRENTLY_UNAVAILABLE = 1; // 0x1
5354    field public static final int MONITOR_UNSUPPORTED = 2; // 0x2
5355    field public static final int SOURCE_TECHNOLOGY_BLUETOOTH = 16; // 0x10
5356    field public static final int SOURCE_TECHNOLOGY_CELL = 8; // 0x8
5357    field public static final int SOURCE_TECHNOLOGY_GNSS = 1; // 0x1
5358    field public static final int SOURCE_TECHNOLOGY_SENSORS = 4; // 0x4
5359    field public static final int SOURCE_TECHNOLOGY_WIFI = 2; // 0x2
5360  }
5361
5362  public abstract class GeofenceHardwareCallback {
5363    ctor public GeofenceHardwareCallback();
5364    method public void onGeofenceAdd(int, int);
5365    method public void onGeofencePause(int, int);
5366    method public void onGeofenceRemove(int, int);
5367    method public void onGeofenceResume(int, int);
5368    method public void onGeofenceTransition(int, int, android.location.Location, long, int);
5369  }
5370
5371  public abstract class GeofenceHardwareMonitorCallback {
5372    ctor public GeofenceHardwareMonitorCallback();
5373    method @Deprecated public void onMonitoringSystemChange(int, boolean, android.location.Location);
5374    method public void onMonitoringSystemChange(android.hardware.location.GeofenceHardwareMonitorEvent);
5375  }
5376
5377  public class GeofenceHardwareMonitorEvent implements android.os.Parcelable {
5378    ctor public GeofenceHardwareMonitorEvent(int, int, int, android.location.Location);
5379    method public int describeContents();
5380    method public android.location.Location getLocation();
5381    method public int getMonitoringStatus();
5382    method public int getMonitoringType();
5383    method public int getSourceTechnologies();
5384    method public void writeToParcel(android.os.Parcel, int);
5385    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.location.GeofenceHardwareMonitorEvent> CREATOR;
5386  }
5387
5388  public final class GeofenceHardwareRequest {
5389    ctor public GeofenceHardwareRequest();
5390    method public static android.hardware.location.GeofenceHardwareRequest createCircularGeofence(double, double, double);
5391    method public int getLastTransition();
5392    method public double getLatitude();
5393    method public double getLongitude();
5394    method public int getMonitorTransitions();
5395    method public int getNotificationResponsiveness();
5396    method public double getRadius();
5397    method public int getSourceTechnologies();
5398    method public int getUnknownTimer();
5399    method public void setLastTransition(int);
5400    method public void setMonitorTransitions(int);
5401    method public void setNotificationResponsiveness(int);
5402    method public void setSourceTechnologies(int);
5403    method public void setUnknownTimer(int);
5404  }
5405
5406  public class MemoryRegion implements android.os.Parcelable {
5407    ctor public MemoryRegion(android.os.Parcel);
5408    method public int describeContents();
5409    method public int getCapacityBytes();
5410    method public int getFreeCapacityBytes();
5411    method public boolean isExecutable();
5412    method public boolean isReadable();
5413    method public boolean isWritable();
5414    method public void writeToParcel(android.os.Parcel, int);
5415    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.location.MemoryRegion> CREATOR;
5416  }
5417
5418  @Deprecated public class NanoApp implements android.os.Parcelable {
5419    ctor @Deprecated public NanoApp();
5420    ctor @Deprecated public NanoApp(int, byte[]);
5421    ctor @Deprecated public NanoApp(long, byte[]);
5422    method @Deprecated public int describeContents();
5423    method @Deprecated public byte[] getAppBinary();
5424    method @Deprecated public long getAppId();
5425    method @Deprecated public int getAppVersion();
5426    method @Deprecated public String getName();
5427    method @Deprecated public int getNeededExecMemBytes();
5428    method @Deprecated public int getNeededReadMemBytes();
5429    method @Deprecated public int[] getNeededSensors();
5430    method @Deprecated public int getNeededWriteMemBytes();
5431    method @Deprecated public int[] getOutputEvents();
5432    method @Deprecated public String getPublisher();
5433    method @Deprecated public void setAppBinary(byte[]);
5434    method @Deprecated public void setAppId(long);
5435    method @Deprecated public void setAppVersion(int);
5436    method @Deprecated public void setName(String);
5437    method @Deprecated public void setNeededExecMemBytes(int);
5438    method @Deprecated public void setNeededReadMemBytes(int);
5439    method @Deprecated public void setNeededSensors(int[]);
5440    method @Deprecated public void setNeededWriteMemBytes(int);
5441    method @Deprecated public void setOutputEvents(int[]);
5442    method @Deprecated public void setPublisher(String);
5443    method @Deprecated public void writeToParcel(android.os.Parcel, int);
5444    field @Deprecated @NonNull public static final android.os.Parcelable.Creator<android.hardware.location.NanoApp> CREATOR;
5445  }
5446
5447  public final class NanoAppBinary implements android.os.Parcelable {
5448    ctor public NanoAppBinary(byte[]);
5449    method public int describeContents();
5450    method public byte[] getBinary();
5451    method public byte[] getBinaryNoHeader();
5452    method public int getFlags();
5453    method public int getHeaderVersion();
5454    method public long getHwHubType();
5455    method public long getNanoAppId();
5456    method public int getNanoAppVersion();
5457    method public byte getTargetChreApiMajorVersion();
5458    method public byte getTargetChreApiMinorVersion();
5459    method public boolean hasValidHeader();
5460    method public boolean isEncrypted();
5461    method public boolean isSigned();
5462    method public void writeToParcel(android.os.Parcel, int);
5463    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.location.NanoAppBinary> CREATOR;
5464  }
5465
5466  @Deprecated public class NanoAppFilter implements android.os.Parcelable {
5467    ctor @Deprecated public NanoAppFilter(long, int, int, long);
5468    method @Deprecated public int describeContents();
5469    method @Deprecated public boolean testMatch(android.hardware.location.NanoAppInstanceInfo);
5470    method @Deprecated public void writeToParcel(android.os.Parcel, int);
5471    field @Deprecated public static final int APP_ANY = -1; // 0xffffffff
5472    field @Deprecated @NonNull public static final android.os.Parcelable.Creator<android.hardware.location.NanoAppFilter> CREATOR;
5473    field @Deprecated public static final int FLAGS_VERSION_ANY = -1; // 0xffffffff
5474    field @Deprecated public static final int FLAGS_VERSION_GREAT_THAN = 2; // 0x2
5475    field @Deprecated public static final int FLAGS_VERSION_LESS_THAN = 4; // 0x4
5476    field @Deprecated public static final int FLAGS_VERSION_STRICTLY_EQUAL = 8; // 0x8
5477    field @Deprecated public static final int HUB_ANY = -1; // 0xffffffff
5478    field @Deprecated public static final int VENDOR_ANY = -1; // 0xffffffff
5479  }
5480
5481  @Deprecated public class NanoAppInstanceInfo implements android.os.Parcelable {
5482    ctor @Deprecated public NanoAppInstanceInfo();
5483    method @Deprecated public int describeContents();
5484    method @Deprecated public long getAppId();
5485    method @Deprecated public int getAppVersion();
5486    method @Deprecated public int getContexthubId();
5487    method @Deprecated public int getHandle();
5488    method @Deprecated public String getName();
5489    method @Deprecated public int getNeededExecMemBytes();
5490    method @Deprecated public int getNeededReadMemBytes();
5491    method @Deprecated @NonNull public int[] getNeededSensors();
5492    method @Deprecated public int getNeededWriteMemBytes();
5493    method @Deprecated @NonNull public int[] getOutputEvents();
5494    method @Deprecated public String getPublisher();
5495    method @Deprecated public void writeToParcel(android.os.Parcel, int);
5496    field @Deprecated @NonNull public static final android.os.Parcelable.Creator<android.hardware.location.NanoAppInstanceInfo> CREATOR;
5497  }
5498
5499  public final class NanoAppMessage implements android.os.Parcelable {
5500    method public static android.hardware.location.NanoAppMessage createMessageFromNanoApp(long, int, byte[], boolean);
5501    method public static android.hardware.location.NanoAppMessage createMessageToNanoApp(long, int, byte[]);
5502    method public int describeContents();
5503    method public byte[] getMessageBody();
5504    method public int getMessageType();
5505    method public long getNanoAppId();
5506    method public boolean isBroadcastMessage();
5507    method public void writeToParcel(android.os.Parcel, int);
5508    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.location.NanoAppMessage> CREATOR;
5509  }
5510
5511  public final class NanoAppRpcService implements android.os.Parcelable {
5512    ctor public NanoAppRpcService(long, int);
5513    method public int describeContents();
5514    method public long getId();
5515    method public int getVersion();
5516    method public void writeToParcel(@NonNull android.os.Parcel, int);
5517    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.location.NanoAppRpcService> CREATOR;
5518  }
5519
5520  public final class NanoAppState implements android.os.Parcelable {
5521    ctor public NanoAppState(long, int, boolean);
5522    ctor public NanoAppState(long, int, boolean, @NonNull java.util.List<java.lang.String>);
5523    ctor public NanoAppState(long, int, boolean, @NonNull java.util.List<java.lang.String>, @NonNull java.util.List<android.hardware.location.NanoAppRpcService>);
5524    method public int describeContents();
5525    method public long getNanoAppId();
5526    method @NonNull public java.util.List<java.lang.String> getNanoAppPermissions();
5527    method public long getNanoAppVersion();
5528    method @NonNull public java.util.List<android.hardware.location.NanoAppRpcService> getRpcServices();
5529    method public boolean isEnabled();
5530    method public void writeToParcel(android.os.Parcel, int);
5531    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.location.NanoAppState> CREATOR;
5532  }
5533
5534}
5535
5536package android.hardware.radio {
5537
5538  public final class Announcement implements android.os.Parcelable {
5539    method public int describeContents();
5540    method @NonNull public android.hardware.radio.ProgramSelector getSelector();
5541    method public int getType();
5542    method @NonNull public java.util.Map<java.lang.String,java.lang.String> getVendorInfo();
5543    method public void writeToParcel(android.os.Parcel, int);
5544    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.Announcement> CREATOR;
5545    field public static final int TYPE_EMERGENCY = 1; // 0x1
5546    field public static final int TYPE_EVENT = 6; // 0x6
5547    field public static final int TYPE_MISC = 8; // 0x8
5548    field public static final int TYPE_NEWS = 5; // 0x5
5549    field public static final int TYPE_SPORT = 7; // 0x7
5550    field public static final int TYPE_TRAFFIC = 3; // 0x3
5551    field public static final int TYPE_WARNING = 2; // 0x2
5552    field public static final int TYPE_WEATHER = 4; // 0x4
5553  }
5554
5555  public static interface Announcement.OnListUpdatedListener {
5556    method public void onListUpdated(java.util.Collection<android.hardware.radio.Announcement>);
5557  }
5558
5559  public final class ProgramList implements java.lang.AutoCloseable {
5560    method public void addOnCompleteListener(@NonNull java.util.concurrent.Executor, @NonNull android.hardware.radio.ProgramList.OnCompleteListener);
5561    method public void addOnCompleteListener(@NonNull android.hardware.radio.ProgramList.OnCompleteListener);
5562    method public void close();
5563    method @Nullable public android.hardware.radio.RadioManager.ProgramInfo get(@NonNull android.hardware.radio.ProgramSelector.Identifier);
5564    method public void registerListCallback(@NonNull java.util.concurrent.Executor, @NonNull android.hardware.radio.ProgramList.ListCallback);
5565    method public void registerListCallback(@NonNull android.hardware.radio.ProgramList.ListCallback);
5566    method public void removeOnCompleteListener(@NonNull android.hardware.radio.ProgramList.OnCompleteListener);
5567    method @NonNull public java.util.List<android.hardware.radio.RadioManager.ProgramInfo> toList();
5568    method public void unregisterListCallback(@NonNull android.hardware.radio.ProgramList.ListCallback);
5569  }
5570
5571  public static final class ProgramList.Filter implements android.os.Parcelable {
5572    ctor public ProgramList.Filter(@NonNull java.util.Set<java.lang.Integer>, @NonNull java.util.Set<android.hardware.radio.ProgramSelector.Identifier>, boolean, boolean);
5573    method public boolean areCategoriesIncluded();
5574    method public boolean areModificationsExcluded();
5575    method public int describeContents();
5576    method @NonNull public java.util.Set<java.lang.Integer> getIdentifierTypes();
5577    method @NonNull public java.util.Set<android.hardware.radio.ProgramSelector.Identifier> getIdentifiers();
5578    method public void writeToParcel(android.os.Parcel, int);
5579    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.ProgramList.Filter> CREATOR;
5580  }
5581
5582  public abstract static class ProgramList.ListCallback {
5583    ctor public ProgramList.ListCallback();
5584    method public void onItemChanged(@NonNull android.hardware.radio.ProgramSelector.Identifier);
5585    method public void onItemRemoved(@NonNull android.hardware.radio.ProgramSelector.Identifier);
5586  }
5587
5588  public static interface ProgramList.OnCompleteListener {
5589    method public void onComplete();
5590  }
5591
5592  public final class ProgramSelector implements android.os.Parcelable {
5593    ctor public ProgramSelector(@android.hardware.radio.ProgramSelector.ProgramType int, @NonNull android.hardware.radio.ProgramSelector.Identifier, @Nullable android.hardware.radio.ProgramSelector.Identifier[], @Nullable long[]);
5594    method @NonNull public static android.hardware.radio.ProgramSelector createAmFmSelector(@android.hardware.radio.RadioManager.Band int, int);
5595    method @NonNull public static android.hardware.radio.ProgramSelector createAmFmSelector(@android.hardware.radio.RadioManager.Band int, int, int);
5596    method public int describeContents();
5597    method @NonNull public android.hardware.radio.ProgramSelector.Identifier[] getAllIds(@android.hardware.radio.ProgramSelector.IdentifierType int);
5598    method public long getFirstId(@android.hardware.radio.ProgramSelector.IdentifierType int);
5599    method @NonNull public android.hardware.radio.ProgramSelector.Identifier getPrimaryId();
5600    method @Deprecated @android.hardware.radio.ProgramSelector.ProgramType public int getProgramType();
5601    method @NonNull public android.hardware.radio.ProgramSelector.Identifier[] getSecondaryIds();
5602    method @Deprecated @NonNull public long[] getVendorIds();
5603    method @NonNull public android.hardware.radio.ProgramSelector withSecondaryPreferred(@NonNull android.hardware.radio.ProgramSelector.Identifier);
5604    method public void writeToParcel(android.os.Parcel, int);
5605    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.ProgramSelector> CREATOR;
5606    field public static final int IDENTIFIER_TYPE_AMFM_FREQUENCY = 1; // 0x1
5607    field public static final int IDENTIFIER_TYPE_DAB_DMB_SID_EXT = 14; // 0xe
5608    field public static final int IDENTIFIER_TYPE_DAB_ENSEMBLE = 6; // 0x6
5609    field public static final int IDENTIFIER_TYPE_DAB_FREQUENCY = 8; // 0x8
5610    field public static final int IDENTIFIER_TYPE_DAB_SCID = 7; // 0x7
5611    field @Deprecated public static final int IDENTIFIER_TYPE_DAB_SIDECC = 5; // 0x5
5612    field @Deprecated public static final int IDENTIFIER_TYPE_DAB_SID_EXT = 5; // 0x5
5613    field public static final int IDENTIFIER_TYPE_DRMO_FREQUENCY = 10; // 0xa
5614    field @Deprecated public static final int IDENTIFIER_TYPE_DRMO_MODULATION = 11; // 0xb
5615    field public static final int IDENTIFIER_TYPE_DRMO_SERVICE_ID = 9; // 0x9
5616    field public static final int IDENTIFIER_TYPE_HD_STATION_ID_EXT = 3; // 0x3
5617    field public static final int IDENTIFIER_TYPE_HD_STATION_NAME = 10004; // 0x2714
5618    field @Deprecated public static final int IDENTIFIER_TYPE_HD_SUBCHANNEL = 4; // 0x4
5619    field public static final int IDENTIFIER_TYPE_INVALID = 0; // 0x0
5620    field public static final int IDENTIFIER_TYPE_RDS_PI = 2; // 0x2
5621    field public static final int IDENTIFIER_TYPE_SXM_CHANNEL = 13; // 0xd
5622    field public static final int IDENTIFIER_TYPE_SXM_SERVICE_ID = 12; // 0xc
5623    field public static final int IDENTIFIER_TYPE_VENDOR_END = 1999; // 0x7cf
5624    field @Deprecated public static final int IDENTIFIER_TYPE_VENDOR_PRIMARY_END = 1999; // 0x7cf
5625    field @Deprecated public static final int IDENTIFIER_TYPE_VENDOR_PRIMARY_START = 1000; // 0x3e8
5626    field public static final int IDENTIFIER_TYPE_VENDOR_START = 1000; // 0x3e8
5627    field @Deprecated public static final int PROGRAM_TYPE_AM = 1; // 0x1
5628    field @Deprecated public static final int PROGRAM_TYPE_AM_HD = 3; // 0x3
5629    field @Deprecated public static final int PROGRAM_TYPE_DAB = 5; // 0x5
5630    field @Deprecated public static final int PROGRAM_TYPE_DRMO = 6; // 0x6
5631    field @Deprecated public static final int PROGRAM_TYPE_FM = 2; // 0x2
5632    field @Deprecated public static final int PROGRAM_TYPE_FM_HD = 4; // 0x4
5633    field @Deprecated public static final int PROGRAM_TYPE_INVALID = 0; // 0x0
5634    field @Deprecated public static final int PROGRAM_TYPE_SXM = 7; // 0x7
5635    field @Deprecated public static final int PROGRAM_TYPE_VENDOR_END = 1999; // 0x7cf
5636    field @Deprecated public static final int PROGRAM_TYPE_VENDOR_START = 1000; // 0x3e8
5637  }
5638
5639  public static final class ProgramSelector.Identifier implements android.os.Parcelable {
5640    ctor public ProgramSelector.Identifier(@android.hardware.radio.ProgramSelector.IdentifierType int, long);
5641    method public int describeContents();
5642    method @android.hardware.radio.ProgramSelector.IdentifierType public int getType();
5643    method public long getValue();
5644    method public boolean isCategoryType();
5645    method public void writeToParcel(android.os.Parcel, int);
5646    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.ProgramSelector.Identifier> CREATOR;
5647  }
5648
5649  @IntDef(prefix={"IDENTIFIER_TYPE_"}, value={android.hardware.radio.ProgramSelector.IDENTIFIER_TYPE_INVALID, android.hardware.radio.ProgramSelector.IDENTIFIER_TYPE_AMFM_FREQUENCY, android.hardware.radio.ProgramSelector.IDENTIFIER_TYPE_RDS_PI, android.hardware.radio.ProgramSelector.IDENTIFIER_TYPE_HD_STATION_ID_EXT, android.hardware.radio.ProgramSelector.IDENTIFIER_TYPE_HD_SUBCHANNEL, android.hardware.radio.ProgramSelector.IDENTIFIER_TYPE_HD_STATION_NAME, android.hardware.radio.ProgramSelector.IDENTIFIER_TYPE_DAB_SID_EXT, android.hardware.radio.ProgramSelector.IDENTIFIER_TYPE_DAB_SIDECC, android.hardware.radio.ProgramSelector.IDENTIFIER_TYPE_DAB_ENSEMBLE, android.hardware.radio.ProgramSelector.IDENTIFIER_TYPE_DAB_SCID, android.hardware.radio.ProgramSelector.IDENTIFIER_TYPE_DAB_FREQUENCY, android.hardware.radio.ProgramSelector.IDENTIFIER_TYPE_DRMO_SERVICE_ID, android.hardware.radio.ProgramSelector.IDENTIFIER_TYPE_DRMO_FREQUENCY, android.hardware.radio.ProgramSelector.IDENTIFIER_TYPE_DRMO_MODULATION, android.hardware.radio.ProgramSelector.IDENTIFIER_TYPE_SXM_SERVICE_ID, android.hardware.radio.ProgramSelector.IDENTIFIER_TYPE_SXM_CHANNEL, android.hardware.radio.ProgramSelector.IDENTIFIER_TYPE_DAB_DMB_SID_EXT}) @IntRange(from=android.hardware.radio.ProgramSelector.IDENTIFIER_TYPE_VENDOR_START, to=android.hardware.radio.ProgramSelector.IDENTIFIER_TYPE_VENDOR_END) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface ProgramSelector.IdentifierType {
5650  }
5651
5652  @Deprecated @IntDef(prefix={"PROGRAM_TYPE_"}, value={android.hardware.radio.ProgramSelector.PROGRAM_TYPE_INVALID, android.hardware.radio.ProgramSelector.PROGRAM_TYPE_AM, android.hardware.radio.ProgramSelector.PROGRAM_TYPE_FM, android.hardware.radio.ProgramSelector.PROGRAM_TYPE_AM_HD, android.hardware.radio.ProgramSelector.PROGRAM_TYPE_FM_HD, android.hardware.radio.ProgramSelector.PROGRAM_TYPE_DAB, android.hardware.radio.ProgramSelector.PROGRAM_TYPE_DRMO, android.hardware.radio.ProgramSelector.PROGRAM_TYPE_SXM}) @IntRange(from=android.hardware.radio.ProgramSelector.PROGRAM_TYPE_VENDOR_START, to=android.hardware.radio.ProgramSelector.PROGRAM_TYPE_VENDOR_END) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface ProgramSelector.ProgramType {
5653  }
5654
5655  public class RadioManager {
5656    method @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public void addAnnouncementListener(@NonNull java.util.Set<java.lang.Integer>, @NonNull android.hardware.radio.Announcement.OnListUpdatedListener);
5657    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);
5658    method @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public int listModules(java.util.List<android.hardware.radio.RadioManager.ModuleProperties>);
5659    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);
5660    method @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public void removeAnnouncementListener(@NonNull android.hardware.radio.Announcement.OnListUpdatedListener);
5661    field public static final int BAND_AM = 0; // 0x0
5662    field public static final int BAND_AM_HD = 3; // 0x3
5663    field public static final int BAND_FM = 1; // 0x1
5664    field public static final int BAND_FM_HD = 2; // 0x2
5665    field public static final int BAND_INVALID = -1; // 0xffffffff
5666    field public static final int CLASS_AM_FM = 0; // 0x0
5667    field public static final int CLASS_DT = 2; // 0x2
5668    field public static final int CLASS_SAT = 1; // 0x1
5669    field public static final int CONFIG_DAB_DAB_LINKING = 6; // 0x6
5670    field public static final int CONFIG_DAB_DAB_SOFT_LINKING = 8; // 0x8
5671    field public static final int CONFIG_DAB_FM_LINKING = 7; // 0x7
5672    field public static final int CONFIG_DAB_FM_SOFT_LINKING = 9; // 0x9
5673    field public static final int CONFIG_FORCE_ANALOG = 2; // 0x2
5674    field public static final int CONFIG_FORCE_DIGITAL = 3; // 0x3
5675    field public static final int CONFIG_FORCE_MONO = 1; // 0x1
5676    field public static final int CONFIG_RDS_AF = 4; // 0x4
5677    field public static final int CONFIG_RDS_REG = 5; // 0x5
5678    field public static final int REGION_ITU_1 = 0; // 0x0
5679    field public static final int REGION_ITU_2 = 1; // 0x1
5680    field public static final int REGION_JAPAN = 3; // 0x3
5681    field public static final int REGION_KOREA = 4; // 0x4
5682    field public static final int REGION_OIRT = 2; // 0x2
5683    field public static final int STATUS_BAD_VALUE = -22; // 0xffffffea
5684    field public static final int STATUS_DEAD_OBJECT = -32; // 0xffffffe0
5685    field public static final int STATUS_ERROR = -2147483648; // 0x80000000
5686    field public static final int STATUS_INVALID_OPERATION = -38; // 0xffffffda
5687    field public static final int STATUS_NO_INIT = -19; // 0xffffffed
5688    field public static final int STATUS_OK = 0; // 0x0
5689    field public static final int STATUS_PERMISSION_DENIED = -1; // 0xffffffff
5690    field public static final int STATUS_TIMED_OUT = -110; // 0xffffff92
5691  }
5692
5693  public static class RadioManager.AmBandConfig extends android.hardware.radio.RadioManager.BandConfig {
5694    method public boolean getStereo();
5695    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.RadioManager.AmBandConfig> CREATOR;
5696  }
5697
5698  public static class RadioManager.AmBandConfig.Builder {
5699    ctor public RadioManager.AmBandConfig.Builder(android.hardware.radio.RadioManager.AmBandDescriptor);
5700    ctor public RadioManager.AmBandConfig.Builder(android.hardware.radio.RadioManager.AmBandConfig);
5701    method public android.hardware.radio.RadioManager.AmBandConfig build();
5702    method public android.hardware.radio.RadioManager.AmBandConfig.Builder setStereo(boolean);
5703  }
5704
5705  public static class RadioManager.AmBandDescriptor extends android.hardware.radio.RadioManager.BandDescriptor {
5706    method public boolean isStereoSupported();
5707    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.RadioManager.AmBandDescriptor> CREATOR;
5708  }
5709
5710  @IntDef(prefix={"BAND_"}, value={android.hardware.radio.RadioManager.BAND_INVALID, android.hardware.radio.RadioManager.BAND_AM, android.hardware.radio.RadioManager.BAND_FM, android.hardware.radio.RadioManager.BAND_AM_HD, android.hardware.radio.RadioManager.BAND_FM_HD}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface RadioManager.Band {
5711  }
5712
5713  public static class RadioManager.BandConfig implements android.os.Parcelable {
5714    method public int describeContents();
5715    method public int getLowerLimit();
5716    method public int getRegion();
5717    method public int getSpacing();
5718    method public int getType();
5719    method public int getUpperLimit();
5720    method public void writeToParcel(android.os.Parcel, int);
5721    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.RadioManager.BandConfig> CREATOR;
5722  }
5723
5724  public static class RadioManager.BandDescriptor implements android.os.Parcelable {
5725    method public int describeContents();
5726    method public int getLowerLimit();
5727    method public int getRegion();
5728    method public int getSpacing();
5729    method public int getType();
5730    method public int getUpperLimit();
5731    method public boolean isAmBand();
5732    method public boolean isFmBand();
5733    method public void writeToParcel(android.os.Parcel, int);
5734    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.RadioManager.BandDescriptor> CREATOR;
5735  }
5736
5737  public static class RadioManager.FmBandConfig extends android.hardware.radio.RadioManager.BandConfig {
5738    method public boolean getAf();
5739    method public boolean getEa();
5740    method public boolean getRds();
5741    method public boolean getStereo();
5742    method public boolean getTa();
5743    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.RadioManager.FmBandConfig> CREATOR;
5744  }
5745
5746  public static class RadioManager.FmBandConfig.Builder {
5747    ctor public RadioManager.FmBandConfig.Builder(android.hardware.radio.RadioManager.FmBandDescriptor);
5748    ctor public RadioManager.FmBandConfig.Builder(android.hardware.radio.RadioManager.FmBandConfig);
5749    method public android.hardware.radio.RadioManager.FmBandConfig build();
5750    method public android.hardware.radio.RadioManager.FmBandConfig.Builder setAf(boolean);
5751    method public android.hardware.radio.RadioManager.FmBandConfig.Builder setEa(boolean);
5752    method public android.hardware.radio.RadioManager.FmBandConfig.Builder setRds(boolean);
5753    method public android.hardware.radio.RadioManager.FmBandConfig.Builder setStereo(boolean);
5754    method public android.hardware.radio.RadioManager.FmBandConfig.Builder setTa(boolean);
5755  }
5756
5757  public static class RadioManager.FmBandDescriptor extends android.hardware.radio.RadioManager.BandDescriptor {
5758    method public boolean isAfSupported();
5759    method public boolean isEaSupported();
5760    method public boolean isRdsSupported();
5761    method public boolean isStereoSupported();
5762    method public boolean isTaSupported();
5763    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.RadioManager.FmBandDescriptor> CREATOR;
5764  }
5765
5766  public static class RadioManager.ModuleProperties implements android.os.Parcelable {
5767    method public int describeContents();
5768    method public android.hardware.radio.RadioManager.BandDescriptor[] getBands();
5769    method public int getClassId();
5770    method @Nullable public java.util.Map<java.lang.String,java.lang.Integer> getDabFrequencyTable();
5771    method public int getId();
5772    method public String getImplementor();
5773    method public int getNumAudioSources();
5774    method public int getNumTuners();
5775    method public String getProduct();
5776    method public String getSerial();
5777    method @NonNull public String getServiceName();
5778    method @NonNull public java.util.Map<java.lang.String,java.lang.String> getVendorInfo();
5779    method public String getVersion();
5780    method public boolean isBackgroundScanningSupported();
5781    method public boolean isCaptureSupported();
5782    method public boolean isInitializationRequired();
5783    method public boolean isProgramIdentifierSupported(@android.hardware.radio.ProgramSelector.IdentifierType int);
5784    method public boolean isProgramTypeSupported(@android.hardware.radio.ProgramSelector.ProgramType int);
5785    method public void writeToParcel(android.os.Parcel, int);
5786    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.RadioManager.ModuleProperties> CREATOR;
5787  }
5788
5789  public static class RadioManager.ProgramInfo implements android.os.Parcelable {
5790    method public int describeContents();
5791    method @Deprecated public int getChannel();
5792    method @Nullable public android.hardware.radio.ProgramSelector.Identifier getLogicallyTunedTo();
5793    method public android.hardware.radio.RadioMetadata getMetadata();
5794    method @Nullable public android.hardware.radio.ProgramSelector.Identifier getPhysicallyTunedTo();
5795    method @Nullable public java.util.Collection<android.hardware.radio.ProgramSelector.Identifier> getRelatedContent();
5796    method @NonNull public android.hardware.radio.ProgramSelector getSelector();
5797    method public int getSignalStrength();
5798    method @Deprecated public int getSubChannel();
5799    method @NonNull public java.util.Map<java.lang.String,java.lang.String> getVendorInfo();
5800    method @Deprecated public boolean isDigital();
5801    method public boolean isLive();
5802    method public boolean isMuted();
5803    method public boolean isStereo();
5804    method public boolean isTrafficAnnouncementActive();
5805    method public boolean isTrafficProgram();
5806    method public boolean isTuned();
5807    method public void writeToParcel(android.os.Parcel, int);
5808    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.RadioManager.ProgramInfo> CREATOR;
5809  }
5810
5811  public final class RadioMetadata implements android.os.Parcelable {
5812    method public boolean containsKey(String);
5813    method public int describeContents();
5814    method @Deprecated public android.graphics.Bitmap getBitmap(String);
5815    method public android.hardware.radio.RadioMetadata.Clock getClock(String);
5816    method public int getInt(String);
5817    method public String getString(String);
5818    method public java.util.Set<java.lang.String> keySet();
5819    method public int size();
5820    method public void writeToParcel(android.os.Parcel, int);
5821    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.RadioMetadata> CREATOR;
5822    field public static final String METADATA_KEY_ALBUM = "android.hardware.radio.metadata.ALBUM";
5823    field public static final String METADATA_KEY_ART = "android.hardware.radio.metadata.ART";
5824    field public static final String METADATA_KEY_ARTIST = "android.hardware.radio.metadata.ARTIST";
5825    field public static final String METADATA_KEY_CLOCK = "android.hardware.radio.metadata.CLOCK";
5826    field public static final String METADATA_KEY_DAB_COMPONENT_NAME = "android.hardware.radio.metadata.DAB_COMPONENT_NAME";
5827    field public static final String METADATA_KEY_DAB_COMPONENT_NAME_SHORT = "android.hardware.radio.metadata.DAB_COMPONENT_NAME_SHORT";
5828    field public static final String METADATA_KEY_DAB_ENSEMBLE_NAME = "android.hardware.radio.metadata.DAB_ENSEMBLE_NAME";
5829    field public static final String METADATA_KEY_DAB_ENSEMBLE_NAME_SHORT = "android.hardware.radio.metadata.DAB_ENSEMBLE_NAME_SHORT";
5830    field public static final String METADATA_KEY_DAB_SERVICE_NAME = "android.hardware.radio.metadata.DAB_SERVICE_NAME";
5831    field public static final String METADATA_KEY_DAB_SERVICE_NAME_SHORT = "android.hardware.radio.metadata.DAB_SERVICE_NAME_SHORT";
5832    field public static final String METADATA_KEY_GENRE = "android.hardware.radio.metadata.GENRE";
5833    field public static final String METADATA_KEY_ICON = "android.hardware.radio.metadata.ICON";
5834    field public static final String METADATA_KEY_PROGRAM_NAME = "android.hardware.radio.metadata.PROGRAM_NAME";
5835    field public static final String METADATA_KEY_RBDS_PTY = "android.hardware.radio.metadata.RBDS_PTY";
5836    field public static final String METADATA_KEY_RDS_PI = "android.hardware.radio.metadata.RDS_PI";
5837    field public static final String METADATA_KEY_RDS_PS = "android.hardware.radio.metadata.RDS_PS";
5838    field public static final String METADATA_KEY_RDS_PTY = "android.hardware.radio.metadata.RDS_PTY";
5839    field public static final String METADATA_KEY_RDS_RT = "android.hardware.radio.metadata.RDS_RT";
5840    field public static final String METADATA_KEY_TITLE = "android.hardware.radio.metadata.TITLE";
5841  }
5842
5843  public static final class RadioMetadata.Builder {
5844    ctor public RadioMetadata.Builder();
5845    ctor public RadioMetadata.Builder(android.hardware.radio.RadioMetadata);
5846    method public android.hardware.radio.RadioMetadata build();
5847    method public android.hardware.radio.RadioMetadata.Builder putBitmap(String, android.graphics.Bitmap);
5848    method public android.hardware.radio.RadioMetadata.Builder putClock(String, long, int);
5849    method public android.hardware.radio.RadioMetadata.Builder putInt(String, int);
5850    method public android.hardware.radio.RadioMetadata.Builder putString(String, String);
5851  }
5852
5853  public static final class RadioMetadata.Clock implements android.os.Parcelable {
5854    ctor public RadioMetadata.Clock(long, int);
5855    method public int describeContents();
5856    method public int getTimezoneOffsetMinutes();
5857    method public long getUtcEpochSeconds();
5858    method public void writeToParcel(android.os.Parcel, int);
5859    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.RadioMetadata.Clock> CREATOR;
5860  }
5861
5862  public abstract class RadioTuner {
5863    ctor public RadioTuner();
5864    method @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public abstract int cancel();
5865    method @Deprecated @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public abstract void cancelAnnouncement();
5866    method @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public abstract void close();
5867    method @Deprecated @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public abstract int getConfiguration(android.hardware.radio.RadioManager.BandConfig[]);
5868    method @Nullable @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public android.hardware.radio.ProgramList getDynamicProgramList(@Nullable android.hardware.radio.ProgramList.Filter);
5869    method @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public abstract boolean getMute();
5870    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>);
5871    method @Deprecated @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public abstract int getProgramInformation(android.hardware.radio.RadioManager.ProgramInfo[]);
5872    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>);
5873    method @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public abstract boolean hasControl();
5874    method @Deprecated @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public abstract boolean isAnalogForced();
5875    method @Deprecated @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public abstract boolean isAntennaConnected();
5876    method @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public boolean isConfigFlagSet(int);
5877    method @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public boolean isConfigFlagSupported(int);
5878    method @Deprecated @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public abstract int scan(int, boolean);
5879    method @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public int seek(int, boolean);
5880    method @Deprecated @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public abstract void setAnalogForced(boolean);
5881    method @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public void setConfigFlag(int, boolean);
5882    method @Deprecated @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public abstract int setConfiguration(android.hardware.radio.RadioManager.BandConfig);
5883    method @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public abstract int setMute(boolean);
5884    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>);
5885    method @Deprecated @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public abstract boolean startBackgroundScan();
5886    method @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public abstract int step(int, boolean);
5887    method @Deprecated @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public abstract int tune(int, int);
5888    method @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public abstract void tune(@NonNull android.hardware.radio.ProgramSelector);
5889    field public static final int DIRECTION_DOWN = 1; // 0x1
5890    field public static final int DIRECTION_UP = 0; // 0x0
5891    field @Deprecated public static final int ERROR_BACKGROUND_SCAN_FAILED = 6; // 0x6
5892    field @Deprecated public static final int ERROR_BACKGROUND_SCAN_UNAVAILABLE = 5; // 0x5
5893    field @Deprecated public static final int ERROR_CANCELLED = 2; // 0x2
5894    field @Deprecated public static final int ERROR_CONFIG = 4; // 0x4
5895    field @Deprecated public static final int ERROR_HARDWARE_FAILURE = 0; // 0x0
5896    field @Deprecated public static final int ERROR_SCAN_TIMEOUT = 3; // 0x3
5897    field @Deprecated public static final int ERROR_SERVER_DIED = 1; // 0x1
5898    field public static final int TUNER_RESULT_CANCELED = 6; // 0x6
5899    field public static final int TUNER_RESULT_INTERNAL_ERROR = 1; // 0x1
5900    field public static final int TUNER_RESULT_INVALID_ARGUMENTS = 2; // 0x2
5901    field public static final int TUNER_RESULT_INVALID_STATE = 3; // 0x3
5902    field public static final int TUNER_RESULT_NOT_SUPPORTED = 4; // 0x4
5903    field public static final int TUNER_RESULT_OK = 0; // 0x0
5904    field public static final int TUNER_RESULT_TIMEOUT = 5; // 0x5
5905    field public static final int TUNER_RESULT_UNKNOWN_ERROR = 7; // 0x7
5906  }
5907
5908  public abstract static class RadioTuner.Callback {
5909    ctor public RadioTuner.Callback();
5910    method public void onAntennaState(boolean);
5911    method public void onBackgroundScanAvailabilityChange(boolean);
5912    method public void onBackgroundScanComplete();
5913    method public void onConfigFlagUpdated(int, boolean);
5914    method @Deprecated public void onConfigurationChanged(android.hardware.radio.RadioManager.BandConfig);
5915    method public void onControlChanged(boolean);
5916    method public void onEmergencyAnnouncement(boolean);
5917    method @Deprecated public void onError(int);
5918    method @Deprecated public void onMetadataChanged(android.hardware.radio.RadioMetadata);
5919    method public void onParametersUpdated(@NonNull java.util.Map<java.lang.String,java.lang.String>);
5920    method public void onProgramInfoChanged(android.hardware.radio.RadioManager.ProgramInfo);
5921    method public void onProgramListChanged();
5922    method public void onTrafficAnnouncement(boolean);
5923    method public void onTuneFailed(int, @Nullable android.hardware.radio.ProgramSelector);
5924  }
5925
5926}
5927
5928package android.hardware.soundtrigger {
5929
5930  public class SoundTrigger {
5931    field public static final int RECOGNITION_MODE_GENERIC = 8; // 0x8
5932    field public static final int RECOGNITION_MODE_USER_AUTHENTICATION = 4; // 0x4
5933    field public static final int RECOGNITION_MODE_USER_IDENTIFICATION = 2; // 0x2
5934    field public static final int RECOGNITION_MODE_VOICE_TRIGGER = 1; // 0x1
5935    field public static final int STATUS_OK = 0; // 0x0
5936  }
5937
5938  public static final class SoundTrigger.Keyphrase implements android.os.Parcelable {
5939    ctor public SoundTrigger.Keyphrase(int, int, @NonNull java.util.Locale, @NonNull String, @Nullable int[]);
5940    method public int getId();
5941    method @NonNull public java.util.Locale getLocale();
5942    method public int getRecognitionModes();
5943    method @NonNull public String getText();
5944    method @NonNull public int[] getUsers();
5945    method @NonNull public static android.hardware.soundtrigger.SoundTrigger.Keyphrase readFromParcel(@NonNull android.os.Parcel);
5946    method public void writeToParcel(@NonNull android.os.Parcel, int);
5947    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.soundtrigger.SoundTrigger.Keyphrase> CREATOR;
5948  }
5949
5950  public static final class SoundTrigger.KeyphraseRecognitionExtra implements android.os.Parcelable {
5951    method public int describeContents();
5952    method @IntRange(from=0, to=100) public int getCoarseConfidenceLevel();
5953    method public int getKeyphraseId();
5954    method public int getRecognitionModes();
5955    method public void writeToParcel(@NonNull android.os.Parcel, int);
5956    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.soundtrigger.SoundTrigger.KeyphraseRecognitionExtra> CREATOR;
5957  }
5958
5959  public static final class SoundTrigger.KeyphraseSoundModel extends android.hardware.soundtrigger.SoundTrigger.SoundModel implements android.os.Parcelable {
5960    ctor public SoundTrigger.KeyphraseSoundModel(@NonNull java.util.UUID, @NonNull java.util.UUID, @Nullable byte[], @Nullable android.hardware.soundtrigger.SoundTrigger.Keyphrase[], int);
5961    ctor public SoundTrigger.KeyphraseSoundModel(@NonNull java.util.UUID, @NonNull java.util.UUID, @Nullable byte[], @Nullable android.hardware.soundtrigger.SoundTrigger.Keyphrase[]);
5962    method @NonNull public android.hardware.soundtrigger.SoundTrigger.Keyphrase[] getKeyphrases();
5963    method @NonNull public static android.hardware.soundtrigger.SoundTrigger.KeyphraseSoundModel readFromParcel(@NonNull android.os.Parcel);
5964    method public void writeToParcel(@NonNull android.os.Parcel, int);
5965    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.soundtrigger.SoundTrigger.KeyphraseSoundModel> CREATOR;
5966  }
5967
5968  public static final class SoundTrigger.ModelParamRange implements android.os.Parcelable {
5969    method public int getEnd();
5970    method public int getStart();
5971    method public void writeToParcel(@NonNull android.os.Parcel, int);
5972    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.soundtrigger.SoundTrigger.ModelParamRange> CREATOR;
5973  }
5974
5975  public static final class SoundTrigger.ModuleProperties implements android.os.Parcelable {
5976    method public int describeContents();
5977    method public int getAudioCapabilities();
5978    method @NonNull public String getDescription();
5979    method public int getId();
5980    method @NonNull public String getImplementor();
5981    method public int getMaxBufferMillis();
5982    method public int getMaxKeyphrases();
5983    method public int getMaxSoundModels();
5984    method public int getMaxUsers();
5985    method public int getPowerConsumptionMw();
5986    method public int getRecognitionModes();
5987    method @NonNull public String getSupportedModelArch();
5988    method @NonNull public java.util.UUID getUuid();
5989    method public int getVersion();
5990    method public boolean isCaptureTransitionSupported();
5991    method public boolean isConcurrentCaptureSupported();
5992    method public boolean isTriggerReturnedInEvent();
5993    method public void writeToParcel(android.os.Parcel, int);
5994    field public static final int AUDIO_CAPABILITY_ECHO_CANCELLATION = 1; // 0x1
5995    field public static final int AUDIO_CAPABILITY_NOISE_SUPPRESSION = 2; // 0x2
5996    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.soundtrigger.SoundTrigger.ModuleProperties> CREATOR;
5997  }
5998
5999  public static class SoundTrigger.RecognitionEvent {
6000    method @Nullable public android.media.AudioFormat getCaptureFormat();
6001    method public int getCaptureSession();
6002    method public byte[] getData();
6003    method public long getHalEventReceivedMillis();
6004    method public boolean isCaptureAvailable();
6005  }
6006
6007  public static class SoundTrigger.SoundModel {
6008    method @NonNull public byte[] getData();
6009    method public int getType();
6010    method @NonNull public java.util.UUID getUuid();
6011    method @NonNull public java.util.UUID getVendorUuid();
6012    method public int getVersion();
6013    field public static final int TYPE_GENERIC_SOUND = 1; // 0x1
6014    field public static final int TYPE_KEYPHRASE = 0; // 0x0
6015  }
6016
6017}
6018
6019package android.hardware.usb {
6020
6021  public final class DisplayPortAltModeInfo implements android.os.Parcelable {
6022    method public int describeContents();
6023    method public int getCableStatus();
6024    method public int getLinkTrainingStatus();
6025    method public int getNumberOfLanes();
6026    method public int getPartnerSinkStatus();
6027    method public boolean isHotPlugDetectActive();
6028    method public void writeToParcel(@NonNull android.os.Parcel, int);
6029    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.usb.DisplayPortAltModeInfo> CREATOR;
6030    field public static final int DISPLAYPORT_ALT_MODE_STATUS_CAPABLE_DISABLED = 2; // 0x2
6031    field public static final int DISPLAYPORT_ALT_MODE_STATUS_ENABLED = 3; // 0x3
6032    field public static final int DISPLAYPORT_ALT_MODE_STATUS_NOT_CAPABLE = 1; // 0x1
6033    field public static final int DISPLAYPORT_ALT_MODE_STATUS_UNKNOWN = 0; // 0x0
6034    field public static final int LINK_TRAINING_STATUS_FAILURE = 2; // 0x2
6035    field public static final int LINK_TRAINING_STATUS_SUCCESS = 1; // 0x1
6036    field public static final int LINK_TRAINING_STATUS_UNKNOWN = 0; // 0x0
6037  }
6038
6039  public class UsbDeviceConnection {
6040    method public boolean resetDevice();
6041  }
6042
6043  public class UsbManager {
6044    method @RequiresPermission(android.Manifest.permission.MANAGE_USB) public long getCurrentFunctions();
6045    method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_USB) public java.util.List<android.hardware.usb.UsbPort> getPorts();
6046    method @RequiresPermission(android.Manifest.permission.MANAGE_USB) public void grantPermission(android.hardware.usb.UsbDevice, String);
6047    method public static boolean isUvcSupportEnabled();
6048    method @RequiresPermission(android.Manifest.permission.MANAGE_USB) public void registerDisplayPortAltModeInfoListener(@NonNull java.util.concurrent.Executor, @NonNull android.hardware.usb.UsbManager.DisplayPortAltModeInfoListener);
6049    method @RequiresPermission(android.Manifest.permission.MANAGE_USB) public void resetUsbGadget();
6050    method @RequiresPermission(android.Manifest.permission.MANAGE_USB) public void setCurrentFunctions(long);
6051    method @RequiresPermission(android.Manifest.permission.MANAGE_USB) public void unregisterDisplayPortAltModeInfoListener(@NonNull android.hardware.usb.UsbManager.DisplayPortAltModeInfoListener);
6052    field @RequiresPermission(android.Manifest.permission.MANAGE_USB) public static final String ACTION_USB_ACCESSORY_HANDSHAKE = "android.hardware.usb.action.USB_ACCESSORY_HANDSHAKE";
6053    field @RequiresPermission(android.Manifest.permission.MANAGE_USB) public static final String ACTION_USB_PORT_CHANGED = "android.hardware.usb.action.USB_PORT_CHANGED";
6054    field @RequiresPermission(android.Manifest.permission.MANAGE_USB) public static final String ACTION_USB_PORT_COMPLIANCE_CHANGED = "android.hardware.usb.action.USB_PORT_COMPLIANCE_CHANGED";
6055    field public static final String ACTION_USB_STATE = "android.hardware.usb.action.USB_STATE";
6056    field public static final String EXTRA_ACCESSORY_HANDSHAKE_END = "android.hardware.usb.extra.ACCESSORY_HANDSHAKE_END";
6057    field public static final String EXTRA_ACCESSORY_START = "android.hardware.usb.extra.ACCESSORY_START";
6058    field public static final String EXTRA_ACCESSORY_STRING_COUNT = "android.hardware.usb.extra.ACCESSORY_STRING_COUNT";
6059    field public static final String EXTRA_ACCESSORY_UEVENT_TIME = "android.hardware.usb.extra.ACCESSORY_UEVENT_TIME";
6060    field public static final long FUNCTION_ACCESSORY = 2L; // 0x2L
6061    field public static final long FUNCTION_ADB = 1L; // 0x1L
6062    field public static final long FUNCTION_AUDIO_SOURCE = 64L; // 0x40L
6063    field public static final long FUNCTION_MIDI = 8L; // 0x8L
6064    field public static final long FUNCTION_MTP = 4L; // 0x4L
6065    field public static final long FUNCTION_NCM = 1024L; // 0x400L
6066    field public static final long FUNCTION_NONE = 0L; // 0x0L
6067    field public static final long FUNCTION_PTP = 16L; // 0x10L
6068    field public static final long FUNCTION_RNDIS = 32L; // 0x20L
6069    field public static final long FUNCTION_UVC = 128L; // 0x80L
6070    field public static final String USB_CONFIGURED = "configured";
6071    field public static final String USB_CONNECTED = "connected";
6072    field public static final String USB_FUNCTION_NCM = "ncm";
6073    field public static final String USB_FUNCTION_RNDIS = "rndis";
6074  }
6075
6076  public static interface UsbManager.DisplayPortAltModeInfoListener {
6077    method public void onDisplayPortAltModeInfoChanged(@NonNull String, @NonNull android.hardware.usb.DisplayPortAltModeInfo);
6078  }
6079
6080  public final class UsbPort {
6081    method @CheckResult @RequiresPermission(android.Manifest.permission.MANAGE_USB) public int enableLimitPowerTransfer(boolean);
6082    method @CheckResult @RequiresPermission(android.Manifest.permission.MANAGE_USB) public int enableUsbData(boolean);
6083    method @CheckResult @RequiresPermission(android.Manifest.permission.MANAGE_USB) public int enableUsbDataWhileDocked();
6084    method @Nullable @RequiresPermission(android.Manifest.permission.MANAGE_USB) public android.hardware.usb.UsbPortStatus getStatus();
6085    method public boolean isAltModeSupported(int);
6086    method @CheckResult @RequiresPermission(android.Manifest.permission.MANAGE_USB) public void resetUsbPort(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Integer>);
6087    method @RequiresPermission(android.Manifest.permission.MANAGE_USB) public void setRoles(int, int);
6088    method @CheckResult @RequiresPermission(android.Manifest.permission.MANAGE_USB) public boolean supportsComplianceWarnings();
6089    field public static final int ENABLE_LIMIT_POWER_TRANSFER_ERROR_INTERNAL = 1; // 0x1
6090    field public static final int ENABLE_LIMIT_POWER_TRANSFER_ERROR_NOT_SUPPORTED = 2; // 0x2
6091    field public static final int ENABLE_LIMIT_POWER_TRANSFER_ERROR_OTHER = 4; // 0x4
6092    field public static final int ENABLE_LIMIT_POWER_TRANSFER_ERROR_PORT_MISMATCH = 3; // 0x3
6093    field public static final int ENABLE_LIMIT_POWER_TRANSFER_SUCCESS = 0; // 0x0
6094    field public static final int ENABLE_USB_DATA_ERROR_INTERNAL = 1; // 0x1
6095    field public static final int ENABLE_USB_DATA_ERROR_NOT_SUPPORTED = 2; // 0x2
6096    field public static final int ENABLE_USB_DATA_ERROR_OTHER = 4; // 0x4
6097    field public static final int ENABLE_USB_DATA_ERROR_PORT_MISMATCH = 3; // 0x3
6098    field public static final int ENABLE_USB_DATA_SUCCESS = 0; // 0x0
6099    field public static final int ENABLE_USB_DATA_WHILE_DOCKED_ERROR_DATA_ENABLED = 4; // 0x4
6100    field public static final int ENABLE_USB_DATA_WHILE_DOCKED_ERROR_INTERNAL = 1; // 0x1
6101    field public static final int ENABLE_USB_DATA_WHILE_DOCKED_ERROR_NOT_SUPPORTED = 2; // 0x2
6102    field public static final int ENABLE_USB_DATA_WHILE_DOCKED_ERROR_OTHER = 5; // 0x5
6103    field public static final int ENABLE_USB_DATA_WHILE_DOCKED_ERROR_PORT_MISMATCH = 3; // 0x3
6104    field public static final int ENABLE_USB_DATA_WHILE_DOCKED_SUCCESS = 0; // 0x0
6105    field public static final int FLAG_ALT_MODE_TYPE_DISPLAYPORT = 1; // 0x1
6106    field public static final int RESET_USB_PORT_ERROR_INTERNAL = 1; // 0x1
6107    field public static final int RESET_USB_PORT_ERROR_NOT_SUPPORTED = 2; // 0x2
6108    field public static final int RESET_USB_PORT_ERROR_OTHER = 4; // 0x4
6109    field public static final int RESET_USB_PORT_ERROR_PORT_MISMATCH = 3; // 0x3
6110    field public static final int RESET_USB_PORT_SUCCESS = 0; // 0x0
6111  }
6112
6113  public final class UsbPortStatus implements android.os.Parcelable {
6114    method public int describeContents();
6115    method @CheckResult @NonNull public int[] getComplianceWarnings();
6116    method public int getCurrentDataRole();
6117    method public int getCurrentMode();
6118    method public int getCurrentPowerRole();
6119    method @Nullable public android.hardware.usb.DisplayPortAltModeInfo getDisplayPortAltModeInfo();
6120    method public int getPlugState();
6121    method public int getPowerBrickConnectionStatus();
6122    method public int getSupportedRoleCombinations();
6123    method public int getUsbDataStatus();
6124    method public boolean isConnected();
6125    method public boolean isPowerTransferLimited();
6126    method public boolean isRoleCombinationSupported(int, int);
6127    method public void writeToParcel(android.os.Parcel, int);
6128    field public static final int COMPLIANCE_WARNING_BC_1_2 = 3; // 0x3
6129    field public static final int COMPLIANCE_WARNING_DEBUG_ACCESSORY = 2; // 0x2
6130    field public static final int COMPLIANCE_WARNING_MISSING_RP = 4; // 0x4
6131    field public static final int COMPLIANCE_WARNING_OTHER = 1; // 0x1
6132    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.usb.UsbPortStatus> CREATOR;
6133    field public static final int DATA_ROLE_DEVICE = 2; // 0x2
6134    field public static final int DATA_ROLE_HOST = 1; // 0x1
6135    field public static final int DATA_ROLE_NONE = 0; // 0x0
6136    field public static final int DATA_STATUS_DISABLED_CONTAMINANT = 4; // 0x4
6137    field public static final int DATA_STATUS_DISABLED_DEBUG = 32; // 0x20
6138    field public static final int DATA_STATUS_DISABLED_DOCK = 8; // 0x8
6139    field public static final int DATA_STATUS_DISABLED_DOCK_DEVICE_MODE = 128; // 0x80
6140    field public static final int DATA_STATUS_DISABLED_DOCK_HOST_MODE = 64; // 0x40
6141    field public static final int DATA_STATUS_DISABLED_FORCE = 16; // 0x10
6142    field public static final int DATA_STATUS_DISABLED_OVERHEAT = 2; // 0x2
6143    field public static final int DATA_STATUS_ENABLED = 1; // 0x1
6144    field public static final int DATA_STATUS_UNKNOWN = 0; // 0x0
6145    field public static final int MODE_AUDIO_ACCESSORY = 4; // 0x4
6146    field public static final int MODE_DEBUG_ACCESSORY = 8; // 0x8
6147    field public static final int MODE_DFP = 2; // 0x2
6148    field public static final int MODE_NONE = 0; // 0x0
6149    field public static final int MODE_UFP = 1; // 0x1
6150    field public static final int PLUG_STATE_PLUGGED_ORIENTATION_FLIPPED = 4; // 0x4
6151    field public static final int PLUG_STATE_PLUGGED_ORIENTATION_NORMAL = 3; // 0x3
6152    field public static final int PLUG_STATE_PLUGGED_ORIENTATION_UNKNOWN = 2; // 0x2
6153    field public static final int PLUG_STATE_UNKNOWN = 0; // 0x0
6154    field public static final int PLUG_STATE_UNPLUGGED = 1; // 0x1
6155    field public static final int POWER_BRICK_STATUS_CONNECTED = 1; // 0x1
6156    field public static final int POWER_BRICK_STATUS_DISCONNECTED = 2; // 0x2
6157    field public static final int POWER_BRICK_STATUS_UNKNOWN = 0; // 0x0
6158    field public static final int POWER_ROLE_NONE = 0; // 0x0
6159    field public static final int POWER_ROLE_SINK = 2; // 0x2
6160    field public static final int POWER_ROLE_SOURCE = 1; // 0x1
6161  }
6162
6163}
6164
6165package android.location {
6166
6167  public abstract class BatchedLocationCallback {
6168    ctor public BatchedLocationCallback();
6169    method public void onLocationBatch(java.util.List<android.location.Location>);
6170  }
6171
6172  public final class CorrelationVector implements android.os.Parcelable {
6173    method public int describeContents();
6174    method @FloatRange(from=0.0f) public double getFrequencyOffsetMetersPerSecond();
6175    method @NonNull public int[] getMagnitude();
6176    method @FloatRange(from=0.0f) public double getSamplingStartMeters();
6177    method @FloatRange(from=0.0f, fromInclusive=false) public double getSamplingWidthMeters();
6178    method public void writeToParcel(@NonNull android.os.Parcel, int);
6179    field @NonNull public static final android.os.Parcelable.Creator<android.location.CorrelationVector> CREATOR;
6180  }
6181
6182  public static final class CorrelationVector.Builder {
6183    ctor public CorrelationVector.Builder();
6184    method @NonNull public android.location.CorrelationVector build();
6185    method @NonNull public android.location.CorrelationVector.Builder setFrequencyOffsetMetersPerSecond(@FloatRange(from=0.0f) double);
6186    method @NonNull public android.location.CorrelationVector.Builder setMagnitude(@NonNull int[]);
6187    method @NonNull public android.location.CorrelationVector.Builder setSamplingStartMeters(@FloatRange(from=0.0f) double);
6188    method @NonNull public android.location.CorrelationVector.Builder setSamplingWidthMeters(@FloatRange(from=0.0f, fromInclusive=false) double);
6189  }
6190
6191  public final class Country implements android.os.Parcelable {
6192    ctor public Country(@NonNull String, int);
6193    method public int describeContents();
6194    method @NonNull public String getCountryCode();
6195    method public int getSource();
6196    method public void writeToParcel(@NonNull android.os.Parcel, int);
6197    field public static final int COUNTRY_SOURCE_LOCALE = 3; // 0x3
6198    field public static final int COUNTRY_SOURCE_LOCATION = 1; // 0x1
6199    field public static final int COUNTRY_SOURCE_NETWORK = 0; // 0x0
6200    field public static final int COUNTRY_SOURCE_SIM = 2; // 0x2
6201    field @NonNull public static final android.os.Parcelable.Creator<android.location.Country> CREATOR;
6202  }
6203
6204  public class CountryDetector {
6205    method public void registerCountryDetectorCallback(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<android.location.Country>);
6206    method public void unregisterCountryDetectorCallback(@NonNull java.util.function.Consumer<android.location.Country>);
6207  }
6208
6209  public final class GnssCapabilities implements android.os.Parcelable {
6210    method @Deprecated public boolean hasMeasurementCorrectionsReflectingPane();
6211    method @Deprecated public boolean hasNavMessages();
6212    method @Deprecated public boolean hasSatelliteBlacklist();
6213  }
6214
6215  public final class GnssExcessPathInfo implements android.os.Parcelable {
6216    method public int describeContents();
6217    method @FloatRange(from=0.0f) public float getAttenuationDb();
6218    method @FloatRange(from=0.0f) public float getExcessPathLengthMeters();
6219    method @FloatRange(from=0.0f) public float getExcessPathLengthUncertaintyMeters();
6220    method @NonNull public android.location.GnssReflectingPlane getReflectingPlane();
6221    method public boolean hasAttenuation();
6222    method public boolean hasExcessPathLength();
6223    method public boolean hasExcessPathLengthUncertainty();
6224    method public boolean hasReflectingPlane();
6225    method public void writeToParcel(@NonNull android.os.Parcel, int);
6226    field @NonNull public static final android.os.Parcelable.Creator<android.location.GnssExcessPathInfo> CREATOR;
6227  }
6228
6229  public static final class GnssExcessPathInfo.Builder {
6230    ctor public GnssExcessPathInfo.Builder();
6231    method @NonNull public android.location.GnssExcessPathInfo build();
6232    method @NonNull public android.location.GnssExcessPathInfo.Builder clearAttenuationDb();
6233    method @NonNull public android.location.GnssExcessPathInfo.Builder clearExcessPathLengthMeters();
6234    method @NonNull public android.location.GnssExcessPathInfo.Builder clearExcessPathLengthUncertaintyMeters();
6235    method @NonNull public android.location.GnssExcessPathInfo.Builder setAttenuationDb(@FloatRange(from=0.0f) float);
6236    method @NonNull public android.location.GnssExcessPathInfo.Builder setExcessPathLengthMeters(@FloatRange(from=0.0f) float);
6237    method @NonNull public android.location.GnssExcessPathInfo.Builder setExcessPathLengthUncertaintyMeters(@FloatRange(from=0.0f) float);
6238    method @NonNull public android.location.GnssExcessPathInfo.Builder setReflectingPlane(@Nullable android.location.GnssReflectingPlane);
6239  }
6240
6241  public final class GnssMeasurement implements android.os.Parcelable {
6242    method @Nullable public java.util.Collection<android.location.CorrelationVector> getCorrelationVectors();
6243    method @Nullable public android.location.SatellitePvt getSatellitePvt();
6244    method public boolean hasCorrelationVectors();
6245    method public boolean hasSatellitePvt();
6246  }
6247
6248  public final class GnssMeasurementCorrections implements android.os.Parcelable {
6249    method public int describeContents();
6250    method @FloatRange(from=-1000.0F, to=10000.0f) public double getAltitudeMeters();
6251    method @FloatRange(from=0.0f, to=360.0f) public float getEnvironmentBearingDegrees();
6252    method @FloatRange(from=0.0f, to=180.0f) public float getEnvironmentBearingUncertaintyDegrees();
6253    method @FloatRange(from=0.0f) public double getHorizontalPositionUncertaintyMeters();
6254    method @FloatRange(from=-90.0F, to=90.0f) public double getLatitudeDegrees();
6255    method @FloatRange(from=-180.0F, to=180.0f) public double getLongitudeDegrees();
6256    method @NonNull public java.util.List<android.location.GnssSingleSatCorrection> getSingleSatelliteCorrectionList();
6257    method @IntRange(from=0) public long getToaGpsNanosecondsOfWeek();
6258    method @FloatRange(from=0.0f) public double getVerticalPositionUncertaintyMeters();
6259    method public boolean hasEnvironmentBearing();
6260    method public void writeToParcel(@NonNull android.os.Parcel, int);
6261    field public static final android.os.Parcelable.Creator<android.location.GnssMeasurementCorrections> CREATOR;
6262  }
6263
6264  public static final class GnssMeasurementCorrections.Builder {
6265    ctor public GnssMeasurementCorrections.Builder();
6266    method @NonNull public android.location.GnssMeasurementCorrections build();
6267    method @NonNull public android.location.GnssMeasurementCorrections.Builder setAltitudeMeters(@FloatRange(from=-1000.0F, to=10000.0f) double);
6268    method @NonNull public android.location.GnssMeasurementCorrections.Builder setEnvironmentBearingDegrees(@FloatRange(from=0.0f, to=360.0f) float);
6269    method @NonNull public android.location.GnssMeasurementCorrections.Builder setEnvironmentBearingUncertaintyDegrees(@FloatRange(from=0.0f, to=180.0f) float);
6270    method @NonNull public android.location.GnssMeasurementCorrections.Builder setHorizontalPositionUncertaintyMeters(@FloatRange(from=0.0f) double);
6271    method @NonNull public android.location.GnssMeasurementCorrections.Builder setLatitudeDegrees(@FloatRange(from=-90.0F, to=90.0f) double);
6272    method @NonNull public android.location.GnssMeasurementCorrections.Builder setLongitudeDegrees(@FloatRange(from=-180.0F, to=180.0f) double);
6273    method @NonNull public android.location.GnssMeasurementCorrections.Builder setSingleSatelliteCorrectionList(@NonNull java.util.List<android.location.GnssSingleSatCorrection>);
6274    method @NonNull public android.location.GnssMeasurementCorrections.Builder setToaGpsNanosecondsOfWeek(@IntRange(from=0) long);
6275    method @NonNull public android.location.GnssMeasurementCorrections.Builder setVerticalPositionUncertaintyMeters(@FloatRange(from=0.0f) double);
6276  }
6277
6278  public final class GnssMeasurementRequest implements android.os.Parcelable {
6279    method public boolean isCorrelationVectorOutputsEnabled();
6280  }
6281
6282  public static final class GnssMeasurementRequest.Builder {
6283    method @NonNull public android.location.GnssMeasurementRequest.Builder setCorrelationVectorOutputsEnabled(boolean);
6284  }
6285
6286  public final class GnssReflectingPlane implements android.os.Parcelable {
6287    method public int describeContents();
6288    method @FloatRange(from=-1000.0F, to=10000.0f) public double getAltitudeMeters();
6289    method @FloatRange(from=0.0f, to=360.0f) public double getAzimuthDegrees();
6290    method @FloatRange(from=-90.0F, to=90.0f) public double getLatitudeDegrees();
6291    method @FloatRange(from=-180.0F, to=180.0f) public double getLongitudeDegrees();
6292    method public void writeToParcel(@NonNull android.os.Parcel, int);
6293    field public static final android.os.Parcelable.Creator<android.location.GnssReflectingPlane> CREATOR;
6294  }
6295
6296  public static final class GnssReflectingPlane.Builder {
6297    ctor public GnssReflectingPlane.Builder();
6298    method @NonNull public android.location.GnssReflectingPlane build();
6299    method @NonNull public android.location.GnssReflectingPlane.Builder setAltitudeMeters(@FloatRange(from=-1000.0F, to=10000.0f) double);
6300    method @NonNull public android.location.GnssReflectingPlane.Builder setAzimuthDegrees(@FloatRange(from=0.0f, to=360.0f) double);
6301    method @NonNull public android.location.GnssReflectingPlane.Builder setLatitudeDegrees(@FloatRange(from=-90.0F, to=90.0f) double);
6302    method @NonNull public android.location.GnssReflectingPlane.Builder setLongitudeDegrees(@FloatRange(from=-180.0F, to=180.0f) double);
6303  }
6304
6305  public final class GnssRequest implements android.os.Parcelable {
6306    method public int describeContents();
6307    method public boolean isFullTracking();
6308    method public void writeToParcel(@NonNull android.os.Parcel, int);
6309    field @NonNull public static final android.os.Parcelable.Creator<android.location.GnssRequest> CREATOR;
6310  }
6311
6312  public static final class GnssRequest.Builder {
6313    ctor public GnssRequest.Builder();
6314    ctor public GnssRequest.Builder(@NonNull android.location.GnssRequest);
6315    method @NonNull public android.location.GnssRequest build();
6316    method @NonNull public android.location.GnssRequest.Builder setFullTracking(boolean);
6317  }
6318
6319  public final class GnssSingleSatCorrection implements android.os.Parcelable {
6320    method public int describeContents();
6321    method @FloatRange(from=0.0f, fromInclusive=false) public float getCarrierFrequencyHz();
6322    method @FloatRange(from=0.0f) public float getCombinedAttenuationDb();
6323    method public int getConstellationType();
6324    method @FloatRange(from=0.0f) public float getExcessPathLengthMeters();
6325    method @FloatRange(from=0.0f) public float getExcessPathLengthUncertaintyMeters();
6326    method @NonNull public java.util.List<android.location.GnssExcessPathInfo> getGnssExcessPathInfoList();
6327    method @FloatRange(from=0.0f, to=1.0f) public float getProbabilityLineOfSight();
6328    method @Deprecated @Nullable public android.location.GnssReflectingPlane getReflectingPlane();
6329    method @IntRange(from=0) public int getSatelliteId();
6330    method public boolean hasCombinedAttenuation();
6331    method public boolean hasExcessPathLength();
6332    method public boolean hasExcessPathLengthUncertainty();
6333    method @Deprecated public boolean hasReflectingPlane();
6334    method public boolean hasValidSatelliteLineOfSight();
6335    method public void writeToParcel(@NonNull android.os.Parcel, int);
6336    field public static final android.os.Parcelable.Creator<android.location.GnssSingleSatCorrection> CREATOR;
6337  }
6338
6339  public static final class GnssSingleSatCorrection.Builder {
6340    ctor public GnssSingleSatCorrection.Builder();
6341    method @NonNull public android.location.GnssSingleSatCorrection build();
6342    method @NonNull public android.location.GnssSingleSatCorrection.Builder clearCombinedAttenuationDb();
6343    method @NonNull public android.location.GnssSingleSatCorrection.Builder clearExcessPathLengthMeters();
6344    method @NonNull public android.location.GnssSingleSatCorrection.Builder clearExcessPathLengthUncertaintyMeters();
6345    method @NonNull public android.location.GnssSingleSatCorrection.Builder clearProbabilityLineOfSight();
6346    method @NonNull public android.location.GnssSingleSatCorrection.Builder setCarrierFrequencyHz(@FloatRange(from=0.0f, fromInclusive=false) float);
6347    method @NonNull public android.location.GnssSingleSatCorrection.Builder setCombinedAttenuationDb(@FloatRange(from=0.0f) float);
6348    method @NonNull public android.location.GnssSingleSatCorrection.Builder setConstellationType(int);
6349    method @NonNull public android.location.GnssSingleSatCorrection.Builder setExcessPathLengthMeters(@FloatRange(from=0.0f) float);
6350    method @NonNull public android.location.GnssSingleSatCorrection.Builder setExcessPathLengthUncertaintyMeters(@FloatRange(from=0.0f) float);
6351    method @NonNull public android.location.GnssSingleSatCorrection.Builder setGnssExcessPathInfoList(@NonNull java.util.List<android.location.GnssExcessPathInfo>);
6352    method @NonNull public android.location.GnssSingleSatCorrection.Builder setProbabilityLineOfSight(@FloatRange(from=0.0f, to=1.0f) float);
6353    method @Deprecated @NonNull public android.location.GnssSingleSatCorrection.Builder setReflectingPlane(@Nullable android.location.GnssReflectingPlane);
6354    method @NonNull public android.location.GnssSingleSatCorrection.Builder setSatelliteId(@IntRange(from=0) int);
6355  }
6356
6357  @Deprecated public class GpsClock implements android.os.Parcelable {
6358    method @Deprecated public int describeContents();
6359    method @Deprecated public double getBiasInNs();
6360    method @Deprecated public double getBiasUncertaintyInNs();
6361    method @Deprecated public double getDriftInNsPerSec();
6362    method @Deprecated public double getDriftUncertaintyInNsPerSec();
6363    method @Deprecated public long getFullBiasInNs();
6364    method @Deprecated public short getLeapSecond();
6365    method @Deprecated public long getTimeInNs();
6366    method @Deprecated public double getTimeUncertaintyInNs();
6367    method @Deprecated public byte getType();
6368    method @Deprecated public boolean hasBiasInNs();
6369    method @Deprecated public boolean hasBiasUncertaintyInNs();
6370    method @Deprecated public boolean hasDriftInNsPerSec();
6371    method @Deprecated public boolean hasDriftUncertaintyInNsPerSec();
6372    method @Deprecated public boolean hasFullBiasInNs();
6373    method @Deprecated public boolean hasLeapSecond();
6374    method @Deprecated public boolean hasTimeUncertaintyInNs();
6375    method @Deprecated public void reset();
6376    method @Deprecated public void resetBiasInNs();
6377    method @Deprecated public void resetBiasUncertaintyInNs();
6378    method @Deprecated public void resetDriftInNsPerSec();
6379    method @Deprecated public void resetDriftUncertaintyInNsPerSec();
6380    method @Deprecated public void resetFullBiasInNs();
6381    method @Deprecated public void resetLeapSecond();
6382    method @Deprecated public void resetTimeUncertaintyInNs();
6383    method @Deprecated public void set(android.location.GpsClock);
6384    method @Deprecated public void setBiasInNs(double);
6385    method @Deprecated public void setBiasUncertaintyInNs(double);
6386    method @Deprecated public void setDriftInNsPerSec(double);
6387    method @Deprecated public void setDriftUncertaintyInNsPerSec(double);
6388    method @Deprecated public void setFullBiasInNs(long);
6389    method @Deprecated public void setLeapSecond(short);
6390    method @Deprecated public void setTimeInNs(long);
6391    method @Deprecated public void setTimeUncertaintyInNs(double);
6392    method @Deprecated public void setType(byte);
6393    method @Deprecated public void writeToParcel(android.os.Parcel, int);
6394    field @Deprecated @NonNull public static final android.os.Parcelable.Creator<android.location.GpsClock> CREATOR;
6395    field @Deprecated public static final byte TYPE_GPS_TIME = 2; // 0x2
6396    field @Deprecated public static final byte TYPE_LOCAL_HW_TIME = 1; // 0x1
6397    field @Deprecated public static final byte TYPE_UNKNOWN = 0; // 0x0
6398  }
6399
6400  @Deprecated public class GpsMeasurement implements android.os.Parcelable {
6401    method @Deprecated public int describeContents();
6402    method @Deprecated public double getAccumulatedDeltaRangeInMeters();
6403    method @Deprecated public short getAccumulatedDeltaRangeState();
6404    method @Deprecated public double getAccumulatedDeltaRangeUncertaintyInMeters();
6405    method @Deprecated public double getAzimuthInDeg();
6406    method @Deprecated public double getAzimuthUncertaintyInDeg();
6407    method @Deprecated public int getBitNumber();
6408    method @Deprecated public long getCarrierCycles();
6409    method @Deprecated public float getCarrierFrequencyInHz();
6410    method @Deprecated public double getCarrierPhase();
6411    method @Deprecated public double getCarrierPhaseUncertainty();
6412    method @Deprecated public double getCn0InDbHz();
6413    method @Deprecated public double getCodePhaseInChips();
6414    method @Deprecated public double getCodePhaseUncertaintyInChips();
6415    method @Deprecated public double getDopplerShiftInHz();
6416    method @Deprecated public double getDopplerShiftUncertaintyInHz();
6417    method @Deprecated public double getElevationInDeg();
6418    method @Deprecated public double getElevationUncertaintyInDeg();
6419    method @Deprecated public byte getLossOfLock();
6420    method @Deprecated public byte getMultipathIndicator();
6421    method @Deprecated public byte getPrn();
6422    method @Deprecated public double getPseudorangeInMeters();
6423    method @Deprecated public double getPseudorangeRateInMetersPerSec();
6424    method @Deprecated public double getPseudorangeRateUncertaintyInMetersPerSec();
6425    method @Deprecated public double getPseudorangeUncertaintyInMeters();
6426    method @Deprecated public long getReceivedGpsTowInNs();
6427    method @Deprecated public long getReceivedGpsTowUncertaintyInNs();
6428    method @Deprecated public double getSnrInDb();
6429    method @Deprecated public short getState();
6430    method @Deprecated public short getTimeFromLastBitInMs();
6431    method @Deprecated public double getTimeOffsetInNs();
6432    method @Deprecated public boolean hasAzimuthInDeg();
6433    method @Deprecated public boolean hasAzimuthUncertaintyInDeg();
6434    method @Deprecated public boolean hasBitNumber();
6435    method @Deprecated public boolean hasCarrierCycles();
6436    method @Deprecated public boolean hasCarrierFrequencyInHz();
6437    method @Deprecated public boolean hasCarrierPhase();
6438    method @Deprecated public boolean hasCarrierPhaseUncertainty();
6439    method @Deprecated public boolean hasCodePhaseInChips();
6440    method @Deprecated public boolean hasCodePhaseUncertaintyInChips();
6441    method @Deprecated public boolean hasDopplerShiftInHz();
6442    method @Deprecated public boolean hasDopplerShiftUncertaintyInHz();
6443    method @Deprecated public boolean hasElevationInDeg();
6444    method @Deprecated public boolean hasElevationUncertaintyInDeg();
6445    method @Deprecated public boolean hasPseudorangeInMeters();
6446    method @Deprecated public boolean hasPseudorangeUncertaintyInMeters();
6447    method @Deprecated public boolean hasSnrInDb();
6448    method @Deprecated public boolean hasTimeFromLastBitInMs();
6449    method @Deprecated public boolean isPseudorangeRateCorrected();
6450    method @Deprecated public boolean isUsedInFix();
6451    method @Deprecated public void reset();
6452    method @Deprecated public void resetAzimuthInDeg();
6453    method @Deprecated public void resetAzimuthUncertaintyInDeg();
6454    method @Deprecated public void resetBitNumber();
6455    method @Deprecated public void resetCarrierCycles();
6456    method @Deprecated public void resetCarrierFrequencyInHz();
6457    method @Deprecated public void resetCarrierPhase();
6458    method @Deprecated public void resetCarrierPhaseUncertainty();
6459    method @Deprecated public void resetCodePhaseInChips();
6460    method @Deprecated public void resetCodePhaseUncertaintyInChips();
6461    method @Deprecated public void resetDopplerShiftInHz();
6462    method @Deprecated public void resetDopplerShiftUncertaintyInHz();
6463    method @Deprecated public void resetElevationInDeg();
6464    method @Deprecated public void resetElevationUncertaintyInDeg();
6465    method @Deprecated public void resetPseudorangeInMeters();
6466    method @Deprecated public void resetPseudorangeUncertaintyInMeters();
6467    method @Deprecated public void resetSnrInDb();
6468    method @Deprecated public void resetTimeFromLastBitInMs();
6469    method @Deprecated public void set(android.location.GpsMeasurement);
6470    method @Deprecated public void setAccumulatedDeltaRangeInMeters(double);
6471    method @Deprecated public void setAccumulatedDeltaRangeState(short);
6472    method @Deprecated public void setAccumulatedDeltaRangeUncertaintyInMeters(double);
6473    method @Deprecated public void setAzimuthInDeg(double);
6474    method @Deprecated public void setAzimuthUncertaintyInDeg(double);
6475    method @Deprecated public void setBitNumber(int);
6476    method @Deprecated public void setCarrierCycles(long);
6477    method @Deprecated public void setCarrierFrequencyInHz(float);
6478    method @Deprecated public void setCarrierPhase(double);
6479    method @Deprecated public void setCarrierPhaseUncertainty(double);
6480    method @Deprecated public void setCn0InDbHz(double);
6481    method @Deprecated public void setCodePhaseInChips(double);
6482    method @Deprecated public void setCodePhaseUncertaintyInChips(double);
6483    method @Deprecated public void setDopplerShiftInHz(double);
6484    method @Deprecated public void setDopplerShiftUncertaintyInHz(double);
6485    method @Deprecated public void setElevationInDeg(double);
6486    method @Deprecated public void setElevationUncertaintyInDeg(double);
6487    method @Deprecated public void setLossOfLock(byte);
6488    method @Deprecated public void setMultipathIndicator(byte);
6489    method @Deprecated public void setPrn(byte);
6490    method @Deprecated public void setPseudorangeInMeters(double);
6491    method @Deprecated public void setPseudorangeRateInMetersPerSec(double);
6492    method @Deprecated public void setPseudorangeRateUncertaintyInMetersPerSec(double);
6493    method @Deprecated public void setPseudorangeUncertaintyInMeters(double);
6494    method @Deprecated public void setReceivedGpsTowInNs(long);
6495    method @Deprecated public void setReceivedGpsTowUncertaintyInNs(long);
6496    method @Deprecated public void setSnrInDb(double);
6497    method @Deprecated public void setState(short);
6498    method @Deprecated public void setTimeFromLastBitInMs(short);
6499    method @Deprecated public void setTimeOffsetInNs(double);
6500    method @Deprecated public void setUsedInFix(boolean);
6501    method @Deprecated public void writeToParcel(android.os.Parcel, int);
6502    field @Deprecated public static final short ADR_STATE_CYCLE_SLIP = 4; // 0x4
6503    field @Deprecated public static final short ADR_STATE_RESET = 2; // 0x2
6504    field @Deprecated public static final short ADR_STATE_UNKNOWN = 0; // 0x0
6505    field @Deprecated public static final short ADR_STATE_VALID = 1; // 0x1
6506    field @Deprecated @NonNull public static final android.os.Parcelable.Creator<android.location.GpsMeasurement> CREATOR;
6507    field @Deprecated public static final byte LOSS_OF_LOCK_CYCLE_SLIP = 2; // 0x2
6508    field @Deprecated public static final byte LOSS_OF_LOCK_OK = 1; // 0x1
6509    field @Deprecated public static final byte LOSS_OF_LOCK_UNKNOWN = 0; // 0x0
6510    field @Deprecated public static final byte MULTIPATH_INDICATOR_DETECTED = 1; // 0x1
6511    field @Deprecated public static final byte MULTIPATH_INDICATOR_NOT_USED = 2; // 0x2
6512    field @Deprecated public static final byte MULTIPATH_INDICATOR_UNKNOWN = 0; // 0x0
6513    field @Deprecated public static final short STATE_BIT_SYNC = 2; // 0x2
6514    field @Deprecated public static final short STATE_CODE_LOCK = 1; // 0x1
6515    field @Deprecated public static final short STATE_MSEC_AMBIGUOUS = 16; // 0x10
6516    field @Deprecated public static final short STATE_SUBFRAME_SYNC = 4; // 0x4
6517    field @Deprecated public static final short STATE_TOW_DECODED = 8; // 0x8
6518    field @Deprecated public static final short STATE_UNKNOWN = 0; // 0x0
6519  }
6520
6521  @Deprecated public class GpsMeasurementsEvent implements android.os.Parcelable {
6522    ctor @Deprecated public GpsMeasurementsEvent(android.location.GpsClock, android.location.GpsMeasurement[]);
6523    method @Deprecated public int describeContents();
6524    method @Deprecated @NonNull public android.location.GpsClock getClock();
6525    method @Deprecated @NonNull public java.util.Collection<android.location.GpsMeasurement> getMeasurements();
6526    method @Deprecated public void writeToParcel(android.os.Parcel, int);
6527    field @Deprecated @NonNull public static final android.os.Parcelable.Creator<android.location.GpsMeasurementsEvent> CREATOR;
6528    field @Deprecated public static final int STATUS_GPS_LOCATION_DISABLED = 2; // 0x2
6529    field @Deprecated public static final int STATUS_NOT_SUPPORTED = 0; // 0x0
6530    field @Deprecated public static final int STATUS_READY = 1; // 0x1
6531  }
6532
6533  @Deprecated public static interface GpsMeasurementsEvent.Listener {
6534    method @Deprecated public void onGpsMeasurementsReceived(android.location.GpsMeasurementsEvent);
6535    method @Deprecated public void onStatusChanged(int);
6536  }
6537
6538  @Deprecated public class GpsNavigationMessage implements android.os.Parcelable {
6539    method @Deprecated public int describeContents();
6540    method @Deprecated @NonNull public byte[] getData();
6541    method @Deprecated public short getMessageId();
6542    method @Deprecated public byte getPrn();
6543    method @Deprecated public short getStatus();
6544    method @Deprecated public short getSubmessageId();
6545    method @Deprecated public byte getType();
6546    method @Deprecated public void reset();
6547    method @Deprecated public void set(android.location.GpsNavigationMessage);
6548    method @Deprecated public void setData(byte[]);
6549    method @Deprecated public void setMessageId(short);
6550    method @Deprecated public void setPrn(byte);
6551    method @Deprecated public void setStatus(short);
6552    method @Deprecated public void setSubmessageId(short);
6553    method @Deprecated public void setType(byte);
6554    method @Deprecated public void writeToParcel(android.os.Parcel, int);
6555    field @Deprecated @NonNull public static final android.os.Parcelable.Creator<android.location.GpsNavigationMessage> CREATOR;
6556    field @Deprecated public static final short STATUS_PARITY_PASSED = 1; // 0x1
6557    field @Deprecated public static final short STATUS_PARITY_REBUILT = 2; // 0x2
6558    field @Deprecated public static final short STATUS_UNKNOWN = 0; // 0x0
6559    field @Deprecated public static final byte TYPE_CNAV2 = 4; // 0x4
6560    field @Deprecated public static final byte TYPE_L1CA = 1; // 0x1
6561    field @Deprecated public static final byte TYPE_L2CNAV = 2; // 0x2
6562    field @Deprecated public static final byte TYPE_L5CNAV = 3; // 0x3
6563    field @Deprecated public static final byte TYPE_UNKNOWN = 0; // 0x0
6564  }
6565
6566  @Deprecated public class GpsNavigationMessageEvent implements android.os.Parcelable {
6567    ctor @Deprecated public GpsNavigationMessageEvent(android.location.GpsNavigationMessage);
6568    method @Deprecated public int describeContents();
6569    method @Deprecated @NonNull public android.location.GpsNavigationMessage getNavigationMessage();
6570    method @Deprecated public void writeToParcel(android.os.Parcel, int);
6571    field @Deprecated @NonNull public static final android.os.Parcelable.Creator<android.location.GpsNavigationMessageEvent> CREATOR;
6572    field @Deprecated public static int STATUS_GPS_LOCATION_DISABLED;
6573    field @Deprecated public static int STATUS_NOT_SUPPORTED;
6574    field @Deprecated public static int STATUS_READY;
6575  }
6576
6577  @Deprecated public static interface GpsNavigationMessageEvent.Listener {
6578    method @Deprecated public void onGpsNavigationMessageReceived(android.location.GpsNavigationMessageEvent);
6579    method @Deprecated public void onStatusChanged(int);
6580  }
6581
6582  public final class LastLocationRequest implements android.os.Parcelable {
6583    method public int describeContents();
6584    method public boolean isAdasGnssBypass();
6585    method public boolean isHiddenFromAppOps();
6586    method public boolean isLocationSettingsIgnored();
6587    method public void writeToParcel(@NonNull android.os.Parcel, int);
6588    field @NonNull public static final android.os.Parcelable.Creator<android.location.LastLocationRequest> CREATOR;
6589  }
6590
6591  public static final class LastLocationRequest.Builder {
6592    ctor public LastLocationRequest.Builder();
6593    ctor public LastLocationRequest.Builder(@NonNull android.location.LastLocationRequest);
6594    method @NonNull public android.location.LastLocationRequest build();
6595    method @NonNull @RequiresPermission(android.Manifest.permission.LOCATION_BYPASS) public android.location.LastLocationRequest.Builder setAdasGnssBypass(boolean);
6596    method @NonNull @RequiresPermission(android.Manifest.permission.UPDATE_APP_OPS_STATS) public android.location.LastLocationRequest.Builder setHiddenFromAppOps(boolean);
6597    method @NonNull @RequiresPermission(android.Manifest.permission.LOCATION_BYPASS) public android.location.LastLocationRequest.Builder setLocationSettingsIgnored(boolean);
6598  }
6599
6600  public class Location implements android.os.Parcelable {
6601    method public void makeComplete();
6602    method @Deprecated public void setIsFromMockProvider(boolean);
6603    field @Deprecated public static final String EXTRA_NO_GPS_LOCATION = "noGPSLocation";
6604  }
6605
6606  public class LocationManager {
6607    method @RequiresPermission(allOf={android.Manifest.permission.LOCATION_HARDWARE, android.Manifest.permission.INTERACT_ACROSS_USERS}) public void addProviderRequestChangedListener(@NonNull java.util.concurrent.Executor, @NonNull android.location.provider.ProviderRequest.ChangedListener);
6608    method @Deprecated @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public void flushGnssBatch();
6609    method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_COARSE_LOCATION, android.Manifest.permission.ACCESS_FINE_LOCATION}) public void getCurrentLocation(@NonNull android.location.LocationRequest, @Nullable android.os.CancellationSignal, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<android.location.Location>);
6610    method @Nullable public String getExtraLocationControllerPackage();
6611    method @Deprecated public int getGnssBatchSize();
6612    method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_COARSE_LOCATION, android.Manifest.permission.ACCESS_FINE_LOCATION}) public android.location.Location getLastKnownLocation(@NonNull String, @NonNull android.location.LastLocationRequest);
6613    method @RequiresPermission(android.Manifest.permission.ACCESS_FINE_LOCATION) public void injectGnssMeasurementCorrections(@NonNull android.location.GnssMeasurementCorrections);
6614    method public boolean isAdasGnssLocationEnabled();
6615    method public boolean isExtraLocationControllerPackageEnabled();
6616    method public boolean isLocationEnabledForUser(@NonNull android.os.UserHandle);
6617    method public boolean isProviderEnabledForUser(@NonNull String, @NonNull android.os.UserHandle);
6618    method @Deprecated @RequiresPermission(android.Manifest.permission.READ_DEVICE_CONFIG) public boolean isProviderPackage(@NonNull String);
6619    method @RequiresPermission(android.Manifest.permission.READ_DEVICE_CONFIG) public boolean isProviderPackage(@Nullable String, @NonNull String, @Nullable String);
6620    method @Deprecated @RequiresPermission(allOf={android.Manifest.permission.LOCATION_HARDWARE, android.Manifest.permission.UPDATE_APP_OPS_STATS}) public boolean registerGnssBatchedLocationCallback(long, boolean, @NonNull android.location.BatchedLocationCallback, @Nullable android.os.Handler);
6621    method @Deprecated @RequiresPermission(android.Manifest.permission.ACCESS_FINE_LOCATION) public boolean registerGnssMeasurementsCallback(@NonNull android.location.GnssRequest, @NonNull java.util.concurrent.Executor, @NonNull android.location.GnssMeasurementsEvent.Callback);
6622    method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public void removeProviderRequestChangedListener(@NonNull android.location.provider.ProviderRequest.ChangedListener);
6623    method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_COARSE_LOCATION, android.Manifest.permission.ACCESS_FINE_LOCATION}) public void requestLocationUpdates(@Nullable android.location.LocationRequest, @NonNull android.location.LocationListener, @Nullable android.os.Looper);
6624    method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_COARSE_LOCATION, android.Manifest.permission.ACCESS_FINE_LOCATION}) public void requestLocationUpdates(@Nullable android.location.LocationRequest, @NonNull java.util.concurrent.Executor, @NonNull android.location.LocationListener);
6625    method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_COARSE_LOCATION, android.Manifest.permission.ACCESS_FINE_LOCATION}) public void requestLocationUpdates(@Nullable android.location.LocationRequest, @NonNull android.app.PendingIntent);
6626    method @RequiresPermission(android.Manifest.permission.LOCATION_BYPASS) public void setAdasGnssLocationEnabled(boolean);
6627    method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public void setExtraLocationControllerPackage(@Nullable String);
6628    method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public void setExtraLocationControllerPackageEnabled(boolean);
6629    method @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public void setLocationEnabledForUser(boolean, @NonNull android.os.UserHandle);
6630    method @Deprecated @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public boolean setProviderEnabledForUser(@NonNull String, boolean, @NonNull android.os.UserHandle);
6631    method @Deprecated @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public boolean unregisterGnssBatchedLocationCallback(@NonNull android.location.BatchedLocationCallback);
6632    field public static final String ACTION_ADAS_GNSS_ENABLED_CHANGED = "android.location.action.ADAS_GNSS_ENABLED_CHANGED";
6633    field public static final String EXTRA_ADAS_GNSS_ENABLED = "android.location.extra.ADAS_GNSS_ENABLED";
6634    field @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public static final String GPS_HARDWARE_PROVIDER = "gps_hardware";
6635  }
6636
6637  public final class LocationRequest implements android.os.Parcelable {
6638    method @Deprecated @NonNull public static android.location.LocationRequest create();
6639    method @Deprecated @NonNull public static android.location.LocationRequest createFromDeprecatedCriteria(@NonNull android.location.Criteria, long, float, boolean);
6640    method @Deprecated @NonNull public static android.location.LocationRequest createFromDeprecatedProvider(@NonNull String, long, float, boolean);
6641    method @Deprecated public long getExpireAt();
6642    method @Deprecated public long getExpireIn();
6643    method @Deprecated public long getFastestInterval();
6644    method @Deprecated public boolean getHideFromAppOps();
6645    method @Deprecated public long getInterval();
6646    method @Deprecated public int getNumUpdates();
6647    method @Deprecated @NonNull public String getProvider();
6648    method @Deprecated public float getSmallestDisplacement();
6649    method @NonNull public android.os.WorkSource getWorkSource();
6650    method public boolean isAdasGnssBypass();
6651    method public boolean isHiddenFromAppOps();
6652    method public boolean isLocationSettingsIgnored();
6653    method public boolean isLowPower();
6654    method @Deprecated public boolean isLowPowerMode();
6655    method @Deprecated @NonNull public android.location.LocationRequest setExpireAt(long);
6656    method @Deprecated @NonNull public android.location.LocationRequest setExpireIn(long);
6657    method @Deprecated @NonNull public android.location.LocationRequest setFastestInterval(long);
6658    method @Deprecated public void setHideFromAppOps(boolean);
6659    method @Deprecated @NonNull public android.location.LocationRequest setInterval(long);
6660    method @Deprecated @NonNull @RequiresPermission(android.Manifest.permission.LOCATION_BYPASS) public android.location.LocationRequest setLocationSettingsIgnored(boolean);
6661    method @Deprecated @NonNull public android.location.LocationRequest setLowPowerMode(boolean);
6662    method @Deprecated @NonNull public android.location.LocationRequest setNumUpdates(int);
6663    method @Deprecated @NonNull public android.location.LocationRequest setProvider(@NonNull String);
6664    method @Deprecated @NonNull public android.location.LocationRequest setQuality(int);
6665    method @Deprecated @NonNull public android.location.LocationRequest setSmallestDisplacement(float);
6666    method @Deprecated public void setWorkSource(@Nullable android.os.WorkSource);
6667    field @Deprecated public static final int ACCURACY_BLOCK = 102; // 0x66
6668    field @Deprecated public static final int ACCURACY_CITY = 104; // 0x68
6669    field @Deprecated public static final int ACCURACY_FINE = 100; // 0x64
6670    field @Deprecated public static final int POWER_HIGH = 203; // 0xcb
6671    field @Deprecated public static final int POWER_LOW = 201; // 0xc9
6672    field @Deprecated public static final int POWER_NONE = 200; // 0xc8
6673  }
6674
6675  public static final class LocationRequest.Builder {
6676    method @NonNull @RequiresPermission(android.Manifest.permission.LOCATION_BYPASS) public android.location.LocationRequest.Builder setAdasGnssBypass(boolean);
6677    method @NonNull @RequiresPermission(android.Manifest.permission.UPDATE_APP_OPS_STATS) public android.location.LocationRequest.Builder setHiddenFromAppOps(boolean);
6678    method @NonNull @RequiresPermission(android.Manifest.permission.LOCATION_BYPASS) public android.location.LocationRequest.Builder setLocationSettingsIgnored(boolean);
6679    method @NonNull @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public android.location.LocationRequest.Builder setLowPower(boolean);
6680    method @NonNull @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public android.location.LocationRequest.Builder setWorkSource(@Nullable android.os.WorkSource);
6681  }
6682
6683  public final class SatellitePvt implements android.os.Parcelable {
6684    method public int describeContents();
6685    method @Nullable public android.location.SatellitePvt.ClockInfo getClockInfo();
6686    method public int getEphemerisSource();
6687    method @FloatRange public double getIonoDelayMeters();
6688    method @IntRange(from=0, to=1023) public int getIssueOfDataClock();
6689    method @IntRange(from=0, to=1023) public int getIssueOfDataEphemeris();
6690    method @Nullable public android.location.SatellitePvt.PositionEcef getPositionEcef();
6691    method @IntRange(from=0) public long getTimeOfClockSeconds();
6692    method @IntRange(from=0) public long getTimeOfEphemerisSeconds();
6693    method @FloatRange public double getTropoDelayMeters();
6694    method @Nullable public android.location.SatellitePvt.VelocityEcef getVelocityEcef();
6695    method public boolean hasIono();
6696    method public boolean hasIssueOfDataClock();
6697    method public boolean hasIssueOfDataEphemeris();
6698    method public boolean hasPositionVelocityClockInfo();
6699    method public boolean hasTimeOfClockSeconds();
6700    method public boolean hasTimeOfEphemerisSeconds();
6701    method public boolean hasTropo();
6702    method public void writeToParcel(@NonNull android.os.Parcel, int);
6703    field @NonNull public static final android.os.Parcelable.Creator<android.location.SatellitePvt> CREATOR;
6704    field public static final int EPHEMERIS_SOURCE_DEMODULATED = 0; // 0x0
6705    field public static final int EPHEMERIS_SOURCE_OTHER = 3; // 0x3
6706    field public static final int EPHEMERIS_SOURCE_SERVER_LONG_TERM = 2; // 0x2
6707    field public static final int EPHEMERIS_SOURCE_SERVER_NORMAL = 1; // 0x1
6708  }
6709
6710  public static final class SatellitePvt.Builder {
6711    ctor public SatellitePvt.Builder();
6712    method @NonNull public android.location.SatellitePvt build();
6713    method @NonNull public android.location.SatellitePvt.Builder setClockInfo(@NonNull android.location.SatellitePvt.ClockInfo);
6714    method @NonNull public android.location.SatellitePvt.Builder setEphemerisSource(int);
6715    method @NonNull public android.location.SatellitePvt.Builder setIonoDelayMeters(@FloatRange(from=0.0f, to=100.0f) double);
6716    method @NonNull public android.location.SatellitePvt.Builder setIssueOfDataClock(@IntRange(from=0, to=1023) int);
6717    method @NonNull public android.location.SatellitePvt.Builder setIssueOfDataEphemeris(@IntRange(from=0, to=1023) int);
6718    method @NonNull public android.location.SatellitePvt.Builder setPositionEcef(@NonNull android.location.SatellitePvt.PositionEcef);
6719    method @NonNull public android.location.SatellitePvt.Builder setTimeOfClockSeconds(@IntRange(from=0) long);
6720    method @NonNull public android.location.SatellitePvt.Builder setTimeOfEphemerisSeconds(@IntRange(from=0) long);
6721    method @NonNull public android.location.SatellitePvt.Builder setTropoDelayMeters(@FloatRange(from=0.0f, to=100.0f) double);
6722    method @NonNull public android.location.SatellitePvt.Builder setVelocityEcef(@NonNull android.location.SatellitePvt.VelocityEcef);
6723  }
6724
6725  public static final class SatellitePvt.ClockInfo implements android.os.Parcelable {
6726    ctor public SatellitePvt.ClockInfo(double, double, double);
6727    method public int describeContents();
6728    method @FloatRange public double getClockDriftMetersPerSecond();
6729    method @FloatRange public double getHardwareCodeBiasMeters();
6730    method @FloatRange public double getTimeCorrectionMeters();
6731    method public void writeToParcel(@NonNull android.os.Parcel, int);
6732    field @NonNull public static final android.os.Parcelable.Creator<android.location.SatellitePvt.ClockInfo> CREATOR;
6733  }
6734
6735  public static final class SatellitePvt.PositionEcef implements android.os.Parcelable {
6736    ctor public SatellitePvt.PositionEcef(double, double, double, double);
6737    method public int describeContents();
6738    method @FloatRange(from=0.0f, fromInclusive=false) public double getUreMeters();
6739    method @FloatRange public double getXMeters();
6740    method @FloatRange public double getYMeters();
6741    method @FloatRange public double getZMeters();
6742    method public void writeToParcel(@NonNull android.os.Parcel, int);
6743    field @NonNull public static final android.os.Parcelable.Creator<android.location.SatellitePvt.PositionEcef> CREATOR;
6744  }
6745
6746  public static final class SatellitePvt.VelocityEcef implements android.os.Parcelable {
6747    ctor public SatellitePvt.VelocityEcef(double, double, double, double);
6748    method public int describeContents();
6749    method @FloatRange(from=0.0f, fromInclusive=false) public double getUreRateMetersPerSecond();
6750    method @FloatRange public double getXMetersPerSecond();
6751    method @FloatRange public double getYMetersPerSecond();
6752    method @FloatRange public double getZMetersPerSecond();
6753    method public void writeToParcel(@NonNull android.os.Parcel, int);
6754    field @NonNull public static final android.os.Parcelable.Creator<android.location.SatellitePvt.VelocityEcef> CREATOR;
6755  }
6756
6757}
6758
6759package android.location.provider {
6760
6761  public abstract class LocationProviderBase {
6762    ctor public LocationProviderBase(@NonNull android.content.Context, @NonNull String, @NonNull android.location.provider.ProviderProperties);
6763    method @Nullable public final android.os.IBinder getBinder();
6764    method @NonNull public android.location.provider.ProviderProperties getProperties();
6765    method public boolean isAllowed();
6766    method public abstract void onFlush(@NonNull android.location.provider.LocationProviderBase.OnFlushCompleteCallback);
6767    method public abstract void onSendExtraCommand(@NonNull String, @Nullable android.os.Bundle);
6768    method public abstract void onSetRequest(@NonNull android.location.provider.ProviderRequest);
6769    method public void reportLocation(@NonNull android.location.Location);
6770    method public void reportLocations(@NonNull java.util.List<android.location.Location>);
6771    method public void setAllowed(boolean);
6772    method public void setProperties(@NonNull android.location.provider.ProviderProperties);
6773    field public static final String ACTION_FUSED_PROVIDER = "com.android.location.service.FusedLocationProvider";
6774    field public static final String ACTION_GNSS_PROVIDER = "android.location.provider.action.GNSS_PROVIDER";
6775    field public static final String ACTION_NETWORK_PROVIDER = "com.android.location.service.v3.NetworkLocationProvider";
6776  }
6777
6778  public static interface LocationProviderBase.OnFlushCompleteCallback {
6779    method public void onFlushComplete();
6780  }
6781
6782  public final class ProviderRequest implements android.os.Parcelable {
6783    method public int describeContents();
6784    method @IntRange(from=0) public long getIntervalMillis();
6785    method @IntRange(from=0) public long getMaxUpdateDelayMillis();
6786    method public int getQuality();
6787    method @NonNull public android.os.WorkSource getWorkSource();
6788    method public boolean isActive();
6789    method public boolean isLocationSettingsIgnored();
6790    method public boolean isLowPower();
6791    method public void writeToParcel(@NonNull android.os.Parcel, int);
6792    field @NonNull public static final android.os.Parcelable.Creator<android.location.provider.ProviderRequest> CREATOR;
6793    field @NonNull public static final android.location.provider.ProviderRequest EMPTY_REQUEST;
6794    field public static final long INTERVAL_DISABLED = 9223372036854775807L; // 0x7fffffffffffffffL
6795  }
6796
6797  public static final class ProviderRequest.Builder {
6798    ctor public ProviderRequest.Builder();
6799    method @NonNull public android.location.provider.ProviderRequest build();
6800    method @NonNull public android.location.provider.ProviderRequest.Builder setIntervalMillis(@IntRange(from=0) long);
6801    method @NonNull public android.location.provider.ProviderRequest.Builder setLocationSettingsIgnored(boolean);
6802    method @NonNull public android.location.provider.ProviderRequest.Builder setLowPower(boolean);
6803    method @NonNull public android.location.provider.ProviderRequest.Builder setMaxUpdateDelayMillis(@IntRange(from=0) long);
6804    method @NonNull public android.location.provider.ProviderRequest.Builder setQuality(int);
6805    method @NonNull public android.location.provider.ProviderRequest.Builder setWorkSource(@NonNull android.os.WorkSource);
6806  }
6807
6808  public static interface ProviderRequest.ChangedListener {
6809    method public void onProviderRequestChanged(@NonNull String, @NonNull android.location.provider.ProviderRequest);
6810  }
6811
6812}
6813
6814package android.media {
6815
6816  public final class AudioAttributes implements android.os.Parcelable {
6817    method public int getAllFlags();
6818    method public android.os.Bundle getBundle();
6819    method public int getCapturePreset();
6820    method public int getSystemUsage();
6821    method public static boolean isSystemUsage(int);
6822    field @RequiresPermission(android.Manifest.permission.ACCESS_ULTRASOUND) public static final int CONTENT_TYPE_ULTRASOUND = 1997; // 0x7cd
6823    field public static final int FLAG_BEACON = 8; // 0x8
6824    field public static final int FLAG_BYPASS_INTERRUPTION_POLICY = 64; // 0x40
6825    field public static final int FLAG_BYPASS_MUTE = 128; // 0x80
6826    field public static final int FLAG_HW_HOTWORD = 32; // 0x20
6827    field @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public static final int USAGE_ANNOUNCEMENT = 1003; // 0x3eb
6828    field @RequiresPermission(allOf={android.Manifest.permission.MODIFY_PHONE_STATE, android.Manifest.permission.MODIFY_AUDIO_ROUTING}) public static final int USAGE_CALL_ASSISTANT = 17; // 0x11
6829    field @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public static final int USAGE_EMERGENCY = 1000; // 0x3e8
6830    field @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public static final int USAGE_SAFETY = 1001; // 0x3e9
6831    field @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public static final int USAGE_VEHICLE_STATUS = 1002; // 0x3ea
6832  }
6833
6834  public static class AudioAttributes.Builder {
6835    method public android.media.AudioAttributes.Builder addBundle(@NonNull android.os.Bundle);
6836    method public android.media.AudioAttributes.Builder setCapturePreset(int);
6837    method @NonNull @RequiresPermission(android.Manifest.permission.CAPTURE_AUDIO_HOTWORD) public android.media.AudioAttributes.Builder setHotwordModeEnabled(boolean);
6838    method public android.media.AudioAttributes.Builder setInternalCapturePreset(int);
6839    method @NonNull public android.media.AudioAttributes.Builder setInternalContentType(int);
6840    method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public android.media.AudioAttributes.Builder setSystemUsage(int);
6841  }
6842
6843  public class AudioDescriptor implements android.os.Parcelable {
6844    ctor public AudioDescriptor(int, int, @NonNull byte[]);
6845  }
6846
6847  public final class AudioDeviceAttributes implements android.os.Parcelable {
6848    ctor public AudioDeviceAttributes(@NonNull android.media.AudioDeviceInfo);
6849    ctor public AudioDeviceAttributes(int, int, @NonNull String);
6850    ctor public AudioDeviceAttributes(int, int, @NonNull String, @NonNull String, @NonNull java.util.List<android.media.AudioProfile>, @NonNull java.util.List<android.media.AudioDescriptor>);
6851    method public int describeContents();
6852    method public boolean equalTypeAddress(@Nullable Object);
6853    method @NonNull public String getAddress();
6854    method @NonNull public java.util.List<android.media.AudioDescriptor> getAudioDescriptors();
6855    method @NonNull public java.util.List<android.media.AudioProfile> getAudioProfiles();
6856    method @NonNull public String getName();
6857    method public int getRole();
6858    method public int getType();
6859    method public void writeToParcel(@NonNull android.os.Parcel, int);
6860    field @NonNull public static final android.os.Parcelable.Creator<android.media.AudioDeviceAttributes> CREATOR;
6861    field public static final int ROLE_INPUT = 1; // 0x1
6862    field public static final int ROLE_OUTPUT = 2; // 0x2
6863  }
6864
6865  public class AudioDeviceVolumeManager {
6866    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);
6867    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);
6868  }
6869
6870  public final class AudioFocusInfo implements android.os.Parcelable {
6871    method public int describeContents();
6872    method @NonNull public android.media.AudioAttributes getAttributes();
6873    method @NonNull public String getClientId();
6874    method public int getClientUid();
6875    method public int getFlags();
6876    method public int getGainRequest();
6877    method public int getLossReceived();
6878    method @NonNull public String getPackageName();
6879    method public void writeToParcel(android.os.Parcel, int);
6880    field @NonNull public static final android.os.Parcelable.Creator<android.media.AudioFocusInfo> CREATOR;
6881  }
6882
6883  public final class AudioFocusRequest {
6884    method public boolean locksFocus();
6885  }
6886
6887  public static final class AudioFocusRequest.Builder {
6888    method @NonNull public android.media.AudioFocusRequest.Builder setLocksFocus(boolean);
6889  }
6890
6891  public class AudioManager {
6892    method @Deprecated public int abandonAudioFocus(android.media.AudioManager.OnAudioFocusChangeListener, android.media.AudioAttributes);
6893    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public void addAssistantServicesUids(@NonNull int[]);
6894    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);
6895    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;
6896    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;
6897    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;
6898    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;
6899    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_SETTINGS_PRIVILEGED) public void addOnStreamAliasingChangedListener(@NonNull java.util.concurrent.Executor, @NonNull Runnable);
6900    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public void cancelMuteAwaitConnection(@NonNull android.media.AudioDeviceAttributes) throws java.lang.IllegalStateException;
6901    method public void clearAudioServerStateCallback();
6902    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public boolean clearPreferredDevicesForCapturePreset(int);
6903    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public int dispatchAudioFocusChange(@NonNull android.media.AudioFocusInfo, int, @NonNull android.media.audiopolicy.AudioPolicy);
6904    method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public int[] getActiveAssistantServicesUids();
6905    method @IntRange(from=0) public long getAdditionalOutputDeviceDelay(@NonNull android.media.AudioDeviceInfo);
6906    method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public int[] getAssistantServicesUids();
6907    method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public static java.util.List<android.media.audiopolicy.AudioProductStrategy> getAudioProductStrategies();
6908    method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public static java.util.List<android.media.audiopolicy.AudioVolumeGroup> getAudioVolumeGroups();
6909    method @NonNull @RequiresPermission(android.Manifest.permission.CALL_AUDIO_INTERCEPTION) public android.media.AudioRecord getCallDownlinkExtractionAudioRecord(@NonNull android.media.AudioFormat);
6910    method @NonNull @RequiresPermission(android.Manifest.permission.CALL_AUDIO_INTERCEPTION) public android.media.AudioTrack getCallUplinkInjectionAudioTrack(@NonNull android.media.AudioFormat);
6911    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);
6912    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);
6913    method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_SETTINGS_PRIVILEGED) public java.util.List<java.lang.Integer> getIndependentStreamTypes();
6914    method @RequiresPermission("android.permission.QUERY_AUDIO_STATE") public int getLastAudibleStreamVolume(int);
6915    method @IntRange(from=0) @RequiresPermission("android.permission.QUERY_AUDIO_STATE") public int getLastAudibleVolumeForVolumeGroup(int);
6916    method @IntRange(from=0) public long getMaxAdditionalOutputDeviceDelay(@NonNull android.media.AudioDeviceInfo);
6917    method @IntRange(from=0) @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public int getMaxVolumeIndexForAttributes(@NonNull android.media.AudioAttributes);
6918    method @IntRange(from=0) @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public int getMinVolumeIndexForAttributes(@NonNull android.media.AudioAttributes);
6919    method @Nullable @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public android.media.AudioDeviceAttributes getMutingExpectedDevice();
6920    method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public java.util.List<android.media.AudioDeviceAttributes> getNonDefaultDevicesForStrategy(@NonNull android.media.audiopolicy.AudioProductStrategy);
6921    method @Nullable @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public android.media.AudioDeviceAttributes getPreferredDeviceForStrategy(@NonNull android.media.audiopolicy.AudioProductStrategy);
6922    method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public java.util.List<android.media.AudioDeviceAttributes> getPreferredDevicesForCapturePreset(int);
6923    method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public java.util.List<android.media.AudioDeviceAttributes> getPreferredDevicesForStrategy(@NonNull android.media.audiopolicy.AudioProductStrategy);
6924    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_SETTINGS_PRIVILEGED) public int getStreamTypeAlias(int);
6925    method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public int[] getSupportedSystemUsages();
6926    method @IntRange(from=0) @RequiresPermission(anyOf={android.Manifest.permission.MODIFY_AUDIO_SETTINGS_PRIVILEGED, android.Manifest.permission.MODIFY_AUDIO_ROUTING}) public int getVolumeGroupMaxVolumeIndex(int);
6927    method @IntRange(from=0) @RequiresPermission(anyOf={android.Manifest.permission.MODIFY_AUDIO_SETTINGS_PRIVILEGED, android.Manifest.permission.MODIFY_AUDIO_ROUTING}) public int getVolumeGroupMinVolumeIndex(int);
6928    method @IntRange(from=0) @RequiresPermission(anyOf={android.Manifest.permission.MODIFY_AUDIO_SETTINGS_PRIVILEGED, android.Manifest.permission.MODIFY_AUDIO_ROUTING}) public int getVolumeGroupVolumeIndex(int);
6929    method @IntRange(from=0) @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public int getVolumeIndexForAttributes(@NonNull android.media.AudioAttributes);
6930    method public boolean isAudioServerRunning();
6931    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public boolean isBluetoothVariableLatencyEnabled();
6932    method public boolean isHdmiSystemAudioSupported();
6933    method @RequiresPermission(android.Manifest.permission.CAPTURE_AUDIO_HOTWORD) public boolean isHotwordStreamSupported(boolean);
6934    method @RequiresPermission(android.Manifest.permission.CALL_AUDIO_INTERCEPTION) public boolean isPstnCallAudioInterceptable();
6935    method @RequiresPermission(android.Manifest.permission.ACCESS_ULTRASOUND) public boolean isUltrasoundSupported();
6936    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;
6937    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public int registerAudioPolicy(@NonNull android.media.audiopolicy.AudioPolicy);
6938    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public void registerMuteAwaitConnectionCallback(@NonNull java.util.concurrent.Executor, @NonNull android.media.AudioManager.MuteAwaitConnectionCallback);
6939    method public void registerVolumeGroupCallback(@NonNull java.util.concurrent.Executor, @NonNull android.media.AudioManager.VolumeGroupCallback);
6940    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public void removeAssistantServicesUids(@NonNull int[]);
6941    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public boolean removeDeviceAsNonDefaultForStrategy(@NonNull android.media.audiopolicy.AudioProductStrategy, @NonNull android.media.AudioDeviceAttributes);
6942    method @RequiresPermission(anyOf={android.Manifest.permission.MODIFY_AUDIO_ROUTING, "android.permission.QUERY_AUDIO_STATE"}) public void removeOnDevicesForAttributesChangedListener(@NonNull android.media.AudioManager.OnDevicesForAttributesChangedListener);
6943    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public void removeOnNonDefaultDevicesForStrategyChangedListener(@NonNull android.media.AudioManager.OnNonDefaultDevicesForStrategyChangedListener);
6944    method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public void removeOnPreferredDeviceForStrategyChangedListener(@NonNull android.media.AudioManager.OnPreferredDeviceForStrategyChangedListener);
6945    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public void removeOnPreferredDevicesForCapturePresetChangedListener(@NonNull android.media.AudioManager.OnPreferredDevicesForCapturePresetChangedListener);
6946    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public void removeOnPreferredDevicesForStrategyChangedListener(@NonNull android.media.AudioManager.OnPreferredDevicesForStrategyChangedListener);
6947    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_SETTINGS_PRIVILEGED) public void removeOnStreamAliasingChangedListener(@NonNull Runnable);
6948    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public boolean removePreferredDeviceForStrategy(@NonNull android.media.audiopolicy.AudioProductStrategy);
6949    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;
6950    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;
6951    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public int requestAudioFocus(@NonNull android.media.AudioFocusRequest, @Nullable android.media.audiopolicy.AudioPolicy);
6952    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public void setActiveAssistantServiceUids(@NonNull int[]);
6953    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public boolean setAdditionalOutputDeviceDelay(@NonNull android.media.AudioDeviceInfo, @IntRange(from=0) long);
6954    method public void setAudioServerStateCallback(@NonNull java.util.concurrent.Executor, @NonNull android.media.AudioManager.AudioServerStateCallback);
6955    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public void setBluetoothVariableLatencyEnabled(boolean);
6956    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public boolean setDeviceAsNonDefaultForStrategy(@NonNull android.media.audiopolicy.AudioProductStrategy, @NonNull android.media.AudioDeviceAttributes);
6957    method @RequiresPermission(anyOf={android.Manifest.permission.MODIFY_AUDIO_ROUTING, android.Manifest.permission.MODIFY_AUDIO_SETTINGS_PRIVILEGED}) public void setDeviceVolumeBehavior(@NonNull android.media.AudioDeviceAttributes, int);
6958    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public void setFocusRequestResult(@NonNull android.media.AudioFocusInfo, int, @NonNull android.media.audiopolicy.AudioPolicy);
6959    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public boolean setPreferredDeviceForCapturePreset(int, @NonNull android.media.AudioDeviceAttributes);
6960    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public boolean setPreferredDeviceForStrategy(@NonNull android.media.audiopolicy.AudioProductStrategy, @NonNull android.media.AudioDeviceAttributes);
6961    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public boolean setPreferredDevicesForStrategy(@NonNull android.media.audiopolicy.AudioProductStrategy, @NonNull java.util.List<android.media.AudioDeviceAttributes>);
6962    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public void setSupportedSystemUsages(@NonNull int[]);
6963    method @RequiresPermission(anyOf={android.Manifest.permission.MODIFY_AUDIO_SETTINGS_PRIVILEGED, android.Manifest.permission.MODIFY_AUDIO_ROUTING}) public void setVolumeGroupVolumeIndex(int, int, int);
6964    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public void setVolumeIndexForAttributes(@NonNull android.media.AudioAttributes, int, int);
6965    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public boolean supportsBluetoothVariableLatency();
6966    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public void unregisterAudioPolicy(@NonNull android.media.audiopolicy.AudioPolicy);
6967    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public void unregisterAudioPolicyAsync(@NonNull android.media.audiopolicy.AudioPolicy);
6968    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public void unregisterMuteAwaitConnectionCallback(@NonNull android.media.AudioManager.MuteAwaitConnectionCallback);
6969    method public void unregisterVolumeGroupCallback(@NonNull android.media.AudioManager.VolumeGroupCallback);
6970    field public static final String ACTION_VOLUME_CHANGED = "android.media.VOLUME_CHANGED_ACTION";
6971    field public static final int AUDIOFOCUS_FLAG_DELAY_OK = 1; // 0x1
6972    field public static final int AUDIOFOCUS_FLAG_LOCK = 4; // 0x4
6973    field public static final int AUDIOFOCUS_FLAG_PAUSES_ON_DUCKABLE_LOSS = 2; // 0x2
6974    field public static final int DEVICE_VOLUME_BEHAVIOR_ABSOLUTE = 3; // 0x3
6975    field public static final int DEVICE_VOLUME_BEHAVIOR_ABSOLUTE_ADJUST_ONLY = 5; // 0x5
6976    field public static final int DEVICE_VOLUME_BEHAVIOR_ABSOLUTE_MULTI_MODE = 4; // 0x4
6977    field public static final int DEVICE_VOLUME_BEHAVIOR_FIXED = 2; // 0x2
6978    field public static final int DEVICE_VOLUME_BEHAVIOR_FULL = 1; // 0x1
6979    field public static final int DEVICE_VOLUME_BEHAVIOR_VARIABLE = 0; // 0x0
6980    field public static final String EXTRA_VOLUME_STREAM_TYPE = "android.media.EXTRA_VOLUME_STREAM_TYPE";
6981    field public static final String EXTRA_VOLUME_STREAM_VALUE = "android.media.EXTRA_VOLUME_STREAM_VALUE";
6982    field public static final int FLAG_BLUETOOTH_ABS_VOLUME = 64; // 0x40
6983    field @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public static final int STREAM_ASSISTANT = 11; // 0xb
6984    field public static final int STREAM_BLUETOOTH_SCO = 6; // 0x6
6985    field public static final int SUCCESS = 0; // 0x0
6986  }
6987
6988  public abstract static class AudioManager.AudioServerStateCallback {
6989    ctor public AudioManager.AudioServerStateCallback();
6990    method public void onAudioServerDown();
6991    method public void onAudioServerUp();
6992  }
6993
6994  public abstract static class AudioManager.MuteAwaitConnectionCallback {
6995    ctor public AudioManager.MuteAwaitConnectionCallback();
6996    method public void onMutedUntilConnection(@NonNull android.media.AudioDeviceAttributes, @NonNull int[]);
6997    method public void onUnmutedEvent(int, @NonNull android.media.AudioDeviceAttributes, @NonNull int[]);
6998    field public static final int EVENT_CANCEL = 3; // 0x3
6999    field public static final int EVENT_CONNECTION = 1; // 0x1
7000    field public static final int EVENT_TIMEOUT = 2; // 0x2
7001  }
7002
7003  public static interface AudioManager.OnDevicesForAttributesChangedListener {
7004    method public void onDevicesForAttributesChanged(@NonNull android.media.AudioAttributes, @NonNull java.util.List<android.media.AudioDeviceAttributes>);
7005  }
7006
7007  public static interface AudioManager.OnNonDefaultDevicesForStrategyChangedListener {
7008    method public void onNonDefaultDevicesForStrategyChanged(@NonNull android.media.audiopolicy.AudioProductStrategy, @NonNull java.util.List<android.media.AudioDeviceAttributes>);
7009  }
7010
7011  @Deprecated public static interface AudioManager.OnPreferredDeviceForStrategyChangedListener {
7012    method @Deprecated public void onPreferredDeviceForStrategyChanged(@NonNull android.media.audiopolicy.AudioProductStrategy, @Nullable android.media.AudioDeviceAttributes);
7013  }
7014
7015  public static interface AudioManager.OnPreferredDevicesForCapturePresetChangedListener {
7016    method public void onPreferredDevicesForCapturePresetChanged(int, @NonNull java.util.List<android.media.AudioDeviceAttributes>);
7017  }
7018
7019  public static interface AudioManager.OnPreferredDevicesForStrategyChangedListener {
7020    method public void onPreferredDevicesForStrategyChanged(@NonNull android.media.audiopolicy.AudioProductStrategy, @NonNull java.util.List<android.media.AudioDeviceAttributes>);
7021  }
7022
7023  public abstract static class AudioManager.VolumeGroupCallback {
7024    ctor public AudioManager.VolumeGroupCallback();
7025    method public void onAudioVolumeGroupChanged(int, int);
7026  }
7027
7028  public final class AudioPlaybackConfiguration implements android.os.Parcelable {
7029    method public int getChannelMask();
7030    method public int getClientPid();
7031    method public int getClientUid();
7032    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public int getMutedBy();
7033    method public int getPlayerInterfaceId();
7034    method public android.media.PlayerProxy getPlayerProxy();
7035    method public int getPlayerState();
7036    method public int getPlayerType();
7037    method @IntRange(from=0) public int getSampleRate();
7038    method @IntRange(from=0) public int getSessionId();
7039    method public boolean isActive();
7040    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public boolean isMuted();
7041    method public boolean isSpatialized();
7042    field @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public static final int MUTED_BY_APP_OPS = 8; // 0x8
7043    field @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public static final int MUTED_BY_CLIENT_VOLUME = 16; // 0x10
7044    field @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public static final int MUTED_BY_MASTER = 1; // 0x1
7045    field @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public static final int MUTED_BY_STREAM_MUTED = 4; // 0x4
7046    field @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public static final int MUTED_BY_STREAM_VOLUME = 2; // 0x2
7047    field @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public static final int MUTED_BY_VOLUME_SHAPER = 32; // 0x20
7048    field public static final int PLAYER_STATE_IDLE = 1; // 0x1
7049    field public static final int PLAYER_STATE_PAUSED = 3; // 0x3
7050    field public static final int PLAYER_STATE_RELEASED = 0; // 0x0
7051    field public static final int PLAYER_STATE_STARTED = 2; // 0x2
7052    field public static final int PLAYER_STATE_STOPPED = 4; // 0x4
7053    field public static final int PLAYER_STATE_UNKNOWN = -1; // 0xffffffff
7054    field public static final int PLAYER_TYPE_AAUDIO = 13; // 0xd
7055    field public static final int PLAYER_TYPE_JAM_AUDIOTRACK = 1; // 0x1
7056    field public static final int PLAYER_TYPE_JAM_MEDIAPLAYER = 2; // 0x2
7057    field public static final int PLAYER_TYPE_JAM_SOUNDPOOL = 3; // 0x3
7058    field public static final int PLAYER_TYPE_SLES_AUDIOPLAYER_BUFFERQUEUE = 11; // 0xb
7059    field public static final int PLAYER_TYPE_SLES_AUDIOPLAYER_URI_FD = 12; // 0xc
7060    field public static final int PLAYER_TYPE_UNKNOWN = -1; // 0xffffffff
7061  }
7062
7063  public class AudioProfile implements android.os.Parcelable {
7064    ctor public AudioProfile(int, @NonNull int[], @NonNull int[], @NonNull int[], int);
7065  }
7066
7067  public class AudioRecord implements android.media.AudioRecordingMonitor android.media.AudioRouting android.media.MicrophoneDirection {
7068    ctor @RequiresPermission(android.Manifest.permission.RECORD_AUDIO) public AudioRecord(android.media.AudioAttributes, android.media.AudioFormat, int, int) throws java.lang.IllegalArgumentException;
7069    method public static long getMaxSharedAudioHistoryMillis();
7070    method public boolean isHotwordLookbackStream();
7071    method public boolean isHotwordStream();
7072    method @NonNull @RequiresPermission(android.Manifest.permission.CAPTURE_AUDIO_HOTWORD) public android.media.MediaSyncEvent shareAudioHistory(@NonNull String, @IntRange(from=0) long);
7073  }
7074
7075  public static class AudioRecord.Builder {
7076    method public android.media.AudioRecord.Builder setAudioAttributes(@NonNull android.media.AudioAttributes) throws java.lang.IllegalArgumentException;
7077    method @NonNull @RequiresPermission(android.Manifest.permission.CAPTURE_AUDIO_HOTWORD) public android.media.AudioRecord.Builder setMaxSharedAudioHistoryMillis(long) throws java.lang.IllegalArgumentException;
7078    method @NonNull @RequiresPermission(android.Manifest.permission.CAPTURE_AUDIO_HOTWORD) public android.media.AudioRecord.Builder setRequestHotwordLookbackStream(boolean);
7079    method @NonNull @RequiresPermission(android.Manifest.permission.CAPTURE_AUDIO_HOTWORD) public android.media.AudioRecord.Builder setRequestHotwordStream(boolean);
7080    method public android.media.AudioRecord.Builder setSessionId(int) throws java.lang.IllegalArgumentException;
7081    method @NonNull public android.media.AudioRecord.Builder setSharedAudioEvent(@NonNull android.media.MediaSyncEvent) throws java.lang.IllegalArgumentException;
7082  }
7083
7084  public final class AudioRecordingConfiguration implements android.os.Parcelable {
7085    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public int getClientUid();
7086  }
7087
7088  public class AudioTrack implements android.media.AudioRouting android.media.VolumeAutomation {
7089    field @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public static final int ENCAPSULATION_MODE_HANDLE = 2; // 0x2
7090  }
7091
7092  public static class AudioTrack.Builder {
7093    method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public android.media.AudioTrack.Builder setTunerConfiguration(@NonNull android.media.AudioTrack.TunerConfiguration);
7094  }
7095
7096  public static class AudioTrack.TunerConfiguration {
7097    ctor @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public AudioTrack.TunerConfiguration(@IntRange(from=0) int, @IntRange(from=1) int);
7098    method @IntRange(from=1) @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public int getContentId();
7099    method @IntRange(from=1) @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public int getSyncId();
7100    field public static final int CONTENT_ID_NONE = 0; // 0x0
7101  }
7102
7103  public class HwAudioSource {
7104    method public boolean isPlaying();
7105    method public void start();
7106    method public void stop();
7107  }
7108
7109  public static final class HwAudioSource.Builder {
7110    ctor public HwAudioSource.Builder();
7111    method @NonNull public android.media.HwAudioSource build();
7112    method @NonNull public android.media.HwAudioSource.Builder setAudioAttributes(@NonNull android.media.AudioAttributes);
7113    method @NonNull public android.media.HwAudioSource.Builder setAudioDeviceInfo(@NonNull android.media.AudioDeviceInfo);
7114  }
7115
7116  public final class MediaCodec {
7117    method @NonNull @RequiresPermission(android.Manifest.permission.MEDIA_RESOURCE_OVERRIDE_PID) public static android.media.MediaCodec createByCodecNameForClient(@NonNull String, int, int) throws java.io.IOException;
7118  }
7119
7120  public class MediaPlayer implements android.media.AudioRouting android.media.VolumeAutomation {
7121    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);
7122  }
7123
7124  public static interface MediaPlayer.OnRtpRxNoticeListener {
7125    method public void onRtpRxNotice(@NonNull android.media.MediaPlayer, int, @NonNull int[]);
7126  }
7127
7128  public final class MediaRecorder.AudioSource {
7129    field @RequiresPermission(android.Manifest.permission.CAPTURE_AUDIO_OUTPUT) public static final int ECHO_REFERENCE = 1997; // 0x7cd
7130    field @RequiresPermission(android.Manifest.permission.CAPTURE_AUDIO_HOTWORD) public static final int HOTWORD = 1999; // 0x7cf
7131    field @RequiresPermission(android.Manifest.permission.CAPTURE_AUDIO_OUTPUT) public static final int RADIO_TUNER = 1998; // 0x7ce
7132    field @RequiresPermission(android.Manifest.permission.ACCESS_ULTRASOUND) public static final int ULTRASOUND = 2000; // 0x7d0
7133  }
7134
7135  public final class MediaRouter2 {
7136    method @NonNull public java.util.List<android.media.MediaRoute2Info> getAllRoutes();
7137    method @Nullable public String getClientPackageName();
7138    method @Nullable @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public static android.media.MediaRouter2 getInstance(@NonNull android.content.Context, @NonNull String);
7139    method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void setRouteVolume(@NonNull android.media.MediaRoute2Info, int);
7140    method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void startScan();
7141    method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void stopScan();
7142    method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void transfer(@NonNull android.media.MediaRouter2.RoutingController, @NonNull android.media.MediaRoute2Info);
7143  }
7144
7145  public abstract static class MediaRouter2.RouteCallback {
7146    method public void onPreferredFeaturesChanged(@NonNull java.util.List<java.lang.String>);
7147  }
7148
7149  public class MediaSyncEvent implements android.os.Parcelable {
7150    field public static final int SYNC_EVENT_SHARE_AUDIO_HISTORY = 100; // 0x64
7151  }
7152
7153  public final class NearbyDevice implements android.os.Parcelable {
7154    ctor public NearbyDevice(@NonNull String, int);
7155    method public int describeContents();
7156    method @NonNull public String getMediaRoute2Id();
7157    method public int getRangeZone();
7158    method public void writeToParcel(@NonNull android.os.Parcel, int);
7159    field @NonNull public static final android.os.Parcelable.Creator<android.media.NearbyDevice> CREATOR;
7160    field public static final int RANGE_CLOSE = 3; // 0x3
7161    field public static final int RANGE_FAR = 1; // 0x1
7162    field public static final int RANGE_LONG = 2; // 0x2
7163    field public static final int RANGE_UNKNOWN = 0; // 0x0
7164    field public static final int RANGE_WITHIN_REACH = 4; // 0x4
7165  }
7166
7167  public interface NearbyMediaDevicesProvider {
7168    method public void registerNearbyDevicesCallback(@NonNull java.util.function.Consumer<java.util.List<android.media.NearbyDevice>>);
7169    method public void unregisterNearbyDevicesCallback(@NonNull java.util.function.Consumer<java.util.List<android.media.NearbyDevice>>);
7170  }
7171
7172  public class PlayerProxy {
7173    method public void pause();
7174    method public void setPan(float);
7175    method public void setStartDelayMs(int);
7176    method public void setVolume(float);
7177    method public void start();
7178    method public void stop();
7179  }
7180
7181  public class RingtoneManager {
7182    method @RequiresPermission(android.Manifest.permission.WRITE_SETTINGS) public static void ensureDefaultRingtones(@NonNull android.content.Context);
7183  }
7184
7185  public final class RouteDiscoveryPreference implements android.os.Parcelable {
7186    field public static final android.media.RouteDiscoveryPreference EMPTY;
7187  }
7188
7189  public class Spatializer {
7190    method @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public void addCompatibleAudioDevice(@NonNull android.media.AudioDeviceAttributes);
7191    method @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public void addOnHeadTrackingModeChangedListener(@NonNull java.util.concurrent.Executor, @NonNull android.media.Spatializer.OnHeadTrackingModeChangedListener);
7192    method @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public void clearOnHeadToSoundstagePoseUpdatedListener();
7193    method @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public void clearOnSpatializerOutputChangedListener();
7194    method @NonNull @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public java.util.List<android.media.AudioDeviceAttributes> getCompatibleAudioDevices();
7195    method @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public int getDesiredHeadTrackingMode();
7196    method @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public void getEffectParameter(int, @NonNull byte[]);
7197    method @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public int getHeadTrackingMode();
7198    method @IntRange(from=0) @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public int getOutput();
7199    method @NonNull @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public java.util.List<java.lang.Integer> getSupportedHeadTrackingModes();
7200    method @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public boolean hasHeadTracker(@NonNull android.media.AudioDeviceAttributes);
7201    method @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public boolean isAvailableForDevice(@NonNull android.media.AudioDeviceAttributes);
7202    method @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public boolean isHeadTrackerEnabled(@NonNull android.media.AudioDeviceAttributes);
7203    method @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public void recenterHeadTracker();
7204    method @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public void removeCompatibleAudioDevice(@NonNull android.media.AudioDeviceAttributes);
7205    method @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public void removeOnHeadTrackingModeChangedListener(@NonNull android.media.Spatializer.OnHeadTrackingModeChangedListener);
7206    method @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public void setDesiredHeadTrackingMode(int);
7207    method @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public void setEffectParameter(int, @NonNull byte[]);
7208    method @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public void setEnabled(boolean);
7209    method @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public void setGlobalTransform(@NonNull float[]);
7210    method @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public void setHeadTrackerEnabled(boolean, @NonNull android.media.AudioDeviceAttributes);
7211    method @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public void setOnHeadToSoundstagePoseUpdatedListener(@NonNull java.util.concurrent.Executor, @NonNull android.media.Spatializer.OnHeadToSoundstagePoseUpdatedListener);
7212    method @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public void setOnSpatializerOutputChangedListener(@NonNull java.util.concurrent.Executor, @NonNull android.media.Spatializer.OnSpatializerOutputChangedListener);
7213    field @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public static final int HEAD_TRACKING_MODE_DISABLED = -1; // 0xffffffff
7214    field @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public static final int HEAD_TRACKING_MODE_OTHER = 0; // 0x0
7215    field @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public static final int HEAD_TRACKING_MODE_RELATIVE_DEVICE = 2; // 0x2
7216    field @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public static final int HEAD_TRACKING_MODE_RELATIVE_WORLD = 1; // 0x1
7217    field @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public static final int HEAD_TRACKING_MODE_UNSUPPORTED = -2; // 0xfffffffe
7218  }
7219
7220  public static interface Spatializer.OnHeadToSoundstagePoseUpdatedListener {
7221    method public void onHeadToSoundstagePoseUpdated(@NonNull android.media.Spatializer, @NonNull float[]);
7222  }
7223
7224  public static interface Spatializer.OnHeadTrackingModeChangedListener {
7225    method public void onDesiredHeadTrackingModeChanged(@NonNull android.media.Spatializer, int);
7226    method public void onHeadTrackingModeChanged(@NonNull android.media.Spatializer, int);
7227  }
7228
7229  public static interface Spatializer.OnSpatializerOutputChangedListener {
7230    method public void onSpatializerOutputChanged(@NonNull android.media.Spatializer, @IntRange(from=0) int);
7231  }
7232
7233  public final class VolumeInfo implements android.os.Parcelable {
7234    method public int describeContents();
7235    method @NonNull public static android.media.VolumeInfo getDefaultVolumeInfo();
7236    method public int getMaxVolumeIndex();
7237    method public int getMinVolumeIndex();
7238    method public int getStreamType();
7239    method @NonNull public android.media.audiopolicy.AudioVolumeGroup getVolumeGroup();
7240    method public int getVolumeIndex();
7241    method public boolean hasMuteCommand();
7242    method public boolean hasStreamType();
7243    method public boolean hasVolumeGroup();
7244    method public boolean isMuted();
7245    method public void writeToParcel(@NonNull android.os.Parcel, int);
7246    field @NonNull public static final android.os.Parcelable.Creator<android.media.VolumeInfo> CREATOR;
7247    field public static final int INDEX_NOT_SET = -100; // 0xffffff9c
7248  }
7249
7250  public static final class VolumeInfo.Builder {
7251    ctor public VolumeInfo.Builder(int);
7252    ctor public VolumeInfo.Builder(@NonNull android.media.audiopolicy.AudioVolumeGroup);
7253    ctor public VolumeInfo.Builder(@NonNull android.media.VolumeInfo);
7254    method @NonNull public android.media.VolumeInfo build();
7255    method @NonNull public android.media.VolumeInfo.Builder setMaxVolumeIndex(int);
7256    method @NonNull public android.media.VolumeInfo.Builder setMinVolumeIndex(int);
7257    method @NonNull public android.media.VolumeInfo.Builder setMuted(boolean);
7258    method @NonNull public android.media.VolumeInfo.Builder setVolumeIndex(int);
7259  }
7260
7261}
7262
7263package android.media.audiofx {
7264
7265  public class AudioEffect {
7266    ctor @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public AudioEffect(@NonNull java.util.UUID, @NonNull android.media.AudioDeviceAttributes);
7267    method @RequiresPermission("android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS") public static boolean isEffectSupportedForDevice(@NonNull java.util.UUID, @NonNull android.media.AudioDeviceAttributes);
7268  }
7269
7270}
7271
7272package android.media.audiopolicy {
7273
7274  public class AudioMix {
7275    method public int getMixState();
7276    field public static final int MIX_STATE_DISABLED = -1; // 0xffffffff
7277    field public static final int MIX_STATE_IDLE = 0; // 0x0
7278    field public static final int MIX_STATE_MIXING = 1; // 0x1
7279    field public static final int ROUTE_FLAG_LOOP_BACK = 2; // 0x2
7280    field public static final int ROUTE_FLAG_RENDER = 1; // 0x1
7281  }
7282
7283  public static class AudioMix.Builder {
7284    ctor public AudioMix.Builder(android.media.audiopolicy.AudioMixingRule) throws java.lang.IllegalArgumentException;
7285    method public android.media.audiopolicy.AudioMix build() throws java.lang.IllegalArgumentException;
7286    method public android.media.audiopolicy.AudioMix.Builder setDevice(@NonNull android.media.AudioDeviceInfo) throws java.lang.IllegalArgumentException;
7287    method public android.media.audiopolicy.AudioMix.Builder setFormat(android.media.AudioFormat) throws java.lang.IllegalArgumentException;
7288    method public android.media.audiopolicy.AudioMix.Builder setRouteFlags(int) throws java.lang.IllegalArgumentException;
7289  }
7290
7291  public class AudioMixingRule {
7292    method public int getTargetMixRole();
7293    field public static final int MIX_ROLE_INJECTOR = 1; // 0x1
7294    field public static final int MIX_ROLE_PLAYERS = 0; // 0x0
7295    field public static final int RULE_MATCH_ATTRIBUTE_CAPTURE_PRESET = 2; // 0x2
7296    field public static final int RULE_MATCH_ATTRIBUTE_USAGE = 1; // 0x1
7297    field public static final int RULE_MATCH_AUDIO_SESSION_ID = 16; // 0x10
7298    field public static final int RULE_MATCH_UID = 4; // 0x4
7299    field public static final int RULE_MATCH_USERID = 8; // 0x8
7300  }
7301
7302  public static class AudioMixingRule.Builder {
7303    ctor public AudioMixingRule.Builder();
7304    method public android.media.audiopolicy.AudioMixingRule.Builder addMixRule(int, Object) throws java.lang.IllegalArgumentException;
7305    method public android.media.audiopolicy.AudioMixingRule.Builder addRule(android.media.AudioAttributes, int) throws java.lang.IllegalArgumentException;
7306    method @NonNull public android.media.audiopolicy.AudioMixingRule.Builder allowPrivilegedPlaybackCapture(boolean);
7307    method public android.media.audiopolicy.AudioMixingRule build();
7308    method public android.media.audiopolicy.AudioMixingRule.Builder excludeMixRule(int, Object) throws java.lang.IllegalArgumentException;
7309    method public android.media.audiopolicy.AudioMixingRule.Builder excludeRule(android.media.AudioAttributes, int) throws java.lang.IllegalArgumentException;
7310    method @NonNull public android.media.audiopolicy.AudioMixingRule.Builder setTargetMixRole(int);
7311  }
7312
7313  public class AudioPolicy {
7314    method public int attachMixes(@NonNull java.util.List<android.media.audiopolicy.AudioMix>);
7315    method public android.media.AudioRecord createAudioRecordSink(android.media.audiopolicy.AudioMix) throws java.lang.IllegalArgumentException;
7316    method public android.media.AudioTrack createAudioTrackSource(android.media.audiopolicy.AudioMix) throws java.lang.IllegalArgumentException;
7317    method public int detachMixes(@NonNull java.util.List<android.media.audiopolicy.AudioMix>);
7318    method public int getFocusDuckingBehavior();
7319    method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public java.util.List<android.media.AudioFocusInfo> getFocusStack();
7320    method public int getStatus();
7321    method public boolean removeUidDeviceAffinity(int);
7322    method public boolean removeUserIdDeviceAffinity(int);
7323    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public boolean sendFocusLoss(@NonNull android.media.AudioFocusInfo) throws java.lang.IllegalStateException;
7324    method public int setFocusDuckingBehavior(int) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException;
7325    method public void setRegistration(String);
7326    method public boolean setUidDeviceAffinity(int, @NonNull java.util.List<android.media.AudioDeviceInfo>);
7327    method public boolean setUserIdDeviceAffinity(int, @NonNull java.util.List<android.media.AudioDeviceInfo>);
7328    method public String toLogFriendlyString();
7329    field public static final int FOCUS_POLICY_DUCKING_DEFAULT = 0; // 0x0
7330    field public static final int FOCUS_POLICY_DUCKING_IN_APP = 0; // 0x0
7331    field public static final int FOCUS_POLICY_DUCKING_IN_POLICY = 1; // 0x1
7332    field public static final int POLICY_STATUS_REGISTERED = 2; // 0x2
7333    field public static final int POLICY_STATUS_UNREGISTERED = 1; // 0x1
7334  }
7335
7336  public abstract static class AudioPolicy.AudioPolicyFocusListener {
7337    ctor public AudioPolicy.AudioPolicyFocusListener();
7338    method public void onAudioFocusAbandon(android.media.AudioFocusInfo);
7339    method public void onAudioFocusGrant(android.media.AudioFocusInfo, int);
7340    method public void onAudioFocusLoss(android.media.AudioFocusInfo, boolean);
7341    method public void onAudioFocusRequest(android.media.AudioFocusInfo, int);
7342  }
7343
7344  public abstract static class AudioPolicy.AudioPolicyStatusListener {
7345    ctor public AudioPolicy.AudioPolicyStatusListener();
7346    method public void onMixStateUpdate(android.media.audiopolicy.AudioMix);
7347    method public void onStatusChange();
7348  }
7349
7350  public abstract static class AudioPolicy.AudioPolicyVolumeCallback {
7351    ctor public AudioPolicy.AudioPolicyVolumeCallback();
7352    method public void onVolumeAdjustment(int);
7353  }
7354
7355  public static class AudioPolicy.Builder {
7356    ctor public AudioPolicy.Builder(android.content.Context);
7357    method @NonNull public android.media.audiopolicy.AudioPolicy.Builder addMix(@NonNull android.media.audiopolicy.AudioMix) throws java.lang.IllegalArgumentException;
7358    method @NonNull public android.media.audiopolicy.AudioPolicy build();
7359    method public void setAudioPolicyFocusListener(android.media.audiopolicy.AudioPolicy.AudioPolicyFocusListener);
7360    method public void setAudioPolicyStatusListener(android.media.audiopolicy.AudioPolicy.AudioPolicyStatusListener);
7361    method @NonNull public android.media.audiopolicy.AudioPolicy.Builder setAudioPolicyVolumeCallback(@NonNull android.media.audiopolicy.AudioPolicy.AudioPolicyVolumeCallback);
7362    method @NonNull public android.media.audiopolicy.AudioPolicy.Builder setIsAudioFocusPolicy(boolean);
7363    method @NonNull public android.media.audiopolicy.AudioPolicy.Builder setLooper(@NonNull android.os.Looper) throws java.lang.IllegalArgumentException;
7364  }
7365
7366  public final class AudioProductStrategy implements android.os.Parcelable {
7367    method @NonNull public static android.media.audiopolicy.AudioProductStrategy createInvalidAudioProductStrategy(int);
7368    method public int describeContents();
7369    method @NonNull public android.media.AudioAttributes getAudioAttributes();
7370    method public int getId();
7371    method @NonNull public String getName();
7372    method public boolean supportsAudioAttributes(@NonNull android.media.AudioAttributes);
7373    method public void writeToParcel(@NonNull android.os.Parcel, int);
7374    field @NonNull public static final android.os.Parcelable.Creator<android.media.audiopolicy.AudioProductStrategy> CREATOR;
7375  }
7376
7377  public final class AudioVolumeGroup implements android.os.Parcelable {
7378    method public int describeContents();
7379    method @NonNull public java.util.List<android.media.AudioAttributes> getAudioAttributes();
7380    method public int getId();
7381    method @NonNull public int[] getLegacyStreamTypes();
7382    method @NonNull public String name();
7383    method public void writeToParcel(@NonNull android.os.Parcel, int);
7384    field public static final android.os.Parcelable.Creator<android.media.audiopolicy.AudioVolumeGroup> CREATOR;
7385    field public static final int DEFAULT_VOLUME_GROUP = -1; // 0xffffffff
7386  }
7387
7388}
7389
7390package android.media.musicrecognition {
7391
7392  public class MusicRecognitionManager {
7393    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);
7394    field public static final int RECOGNITION_FAILED_AUDIO_UNAVAILABLE = 7; // 0x7
7395    field public static final int RECOGNITION_FAILED_NOT_FOUND = 1; // 0x1
7396    field public static final int RECOGNITION_FAILED_NO_CONNECTIVITY = 2; // 0x2
7397    field public static final int RECOGNITION_FAILED_SERVICE_KILLED = 5; // 0x5
7398    field public static final int RECOGNITION_FAILED_SERVICE_UNAVAILABLE = 3; // 0x3
7399    field public static final int RECOGNITION_FAILED_TIMEOUT = 6; // 0x6
7400    field public static final int RECOGNITION_FAILED_UNKNOWN = -1; // 0xffffffff
7401  }
7402
7403  public static interface MusicRecognitionManager.RecognitionCallback {
7404    method public void onAudioStreamClosed();
7405    method public void onRecognitionFailed(@NonNull android.media.musicrecognition.RecognitionRequest, int);
7406    method public void onRecognitionSucceeded(@NonNull android.media.musicrecognition.RecognitionRequest, @NonNull android.media.MediaMetadata, @Nullable android.os.Bundle);
7407  }
7408
7409  public abstract class MusicRecognitionService extends android.app.Service {
7410    ctor public MusicRecognitionService();
7411    method public abstract void onRecognize(@NonNull android.os.ParcelFileDescriptor, @NonNull android.media.AudioFormat, @NonNull android.media.musicrecognition.MusicRecognitionService.Callback);
7412  }
7413
7414  public static interface MusicRecognitionService.Callback {
7415    method public void onRecognitionFailed(int);
7416    method public void onRecognitionSucceeded(@NonNull android.media.MediaMetadata, @Nullable android.os.Bundle);
7417  }
7418
7419  public final class RecognitionRequest implements android.os.Parcelable {
7420    method public int describeContents();
7421    method @NonNull public android.media.AudioAttributes getAudioAttributes();
7422    method @NonNull public android.media.AudioFormat getAudioFormat();
7423    method public int getCaptureSession();
7424    method public int getIgnoreBeginningFrames();
7425    method public int getMaxAudioLengthSeconds();
7426    method public void writeToParcel(@NonNull android.os.Parcel, int);
7427    field @NonNull public static final android.os.Parcelable.Creator<android.media.musicrecognition.RecognitionRequest> CREATOR;
7428  }
7429
7430  public static final class RecognitionRequest.Builder {
7431    ctor public RecognitionRequest.Builder();
7432    method @NonNull public android.media.musicrecognition.RecognitionRequest build();
7433    method @NonNull public android.media.musicrecognition.RecognitionRequest.Builder setAudioAttributes(@NonNull android.media.AudioAttributes);
7434    method @NonNull public android.media.musicrecognition.RecognitionRequest.Builder setAudioFormat(@NonNull android.media.AudioFormat);
7435    method @NonNull public android.media.musicrecognition.RecognitionRequest.Builder setCaptureSession(int);
7436    method @NonNull public android.media.musicrecognition.RecognitionRequest.Builder setIgnoreBeginningFrames(int);
7437    method @NonNull public android.media.musicrecognition.RecognitionRequest.Builder setMaxAudioLengthSeconds(int);
7438  }
7439
7440}
7441
7442package android.media.session {
7443
7444  public final class MediaSessionManager {
7445    method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void addOnMediaKeyEventDispatchedListener(@NonNull java.util.concurrent.Executor, @NonNull android.media.session.MediaSessionManager.OnMediaKeyEventDispatchedListener);
7446    method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void removeOnMediaKeyEventDispatchedListener(@NonNull android.media.session.MediaSessionManager.OnMediaKeyEventDispatchedListener);
7447    method @RequiresPermission(android.Manifest.permission.SET_MEDIA_KEY_LISTENER) public void setOnMediaKeyListener(android.media.session.MediaSessionManager.OnMediaKeyListener, @Nullable android.os.Handler);
7448    method @RequiresPermission(android.Manifest.permission.SET_VOLUME_KEY_LONG_PRESS_LISTENER) public void setOnVolumeKeyLongPressListener(android.media.session.MediaSessionManager.OnVolumeKeyLongPressListener, @Nullable android.os.Handler);
7449  }
7450
7451  public static interface MediaSessionManager.OnMediaKeyEventDispatchedListener {
7452    method public void onMediaKeyEventDispatched(@NonNull android.view.KeyEvent, @NonNull String, @Nullable android.media.session.MediaSession.Token);
7453  }
7454
7455  public static interface MediaSessionManager.OnMediaKeyListener {
7456    method public boolean onMediaKey(android.view.KeyEvent);
7457  }
7458
7459  public static interface MediaSessionManager.OnVolumeKeyLongPressListener {
7460    method public void onVolumeKeyLongPress(android.view.KeyEvent);
7461  }
7462
7463}
7464
7465package android.media.soundtrigger {
7466
7467  public abstract class SoundTriggerDetectionService extends android.app.Service {
7468    ctor public SoundTriggerDetectionService();
7469    method @MainThread public void onConnected(@NonNull java.util.UUID, @Nullable android.os.Bundle);
7470    method @MainThread public void onDisconnected(@NonNull java.util.UUID, @Nullable android.os.Bundle);
7471    method @MainThread public void onError(@NonNull java.util.UUID, @Nullable android.os.Bundle, int, int);
7472    method @MainThread public void onGenericRecognitionEvent(@NonNull java.util.UUID, @Nullable android.os.Bundle, int, @NonNull android.hardware.soundtrigger.SoundTrigger.RecognitionEvent);
7473    method @MainThread public abstract void onStopOperation(@NonNull java.util.UUID, @Nullable android.os.Bundle, int);
7474    method public final void operationFinished(@Nullable java.util.UUID, int);
7475  }
7476
7477  @Deprecated public final class SoundTriggerDetector {
7478    method @Deprecated @RequiresPermission(android.Manifest.permission.MANAGE_SOUND_TRIGGER) public boolean startRecognition(int);
7479    method @Deprecated @RequiresPermission(android.Manifest.permission.MANAGE_SOUND_TRIGGER) public boolean stopRecognition();
7480    field @Deprecated public static final int RECOGNITION_FLAG_ALLOW_MULTIPLE_TRIGGERS = 2; // 0x2
7481    field @Deprecated public static final int RECOGNITION_FLAG_CAPTURE_TRIGGER_AUDIO = 1; // 0x1
7482    field @Deprecated public static final int RECOGNITION_FLAG_ENABLE_AUDIO_ECHO_CANCELLATION = 4; // 0x4
7483    field @Deprecated public static final int RECOGNITION_FLAG_ENABLE_AUDIO_NOISE_SUPPRESSION = 8; // 0x8
7484    field @Deprecated public static final int RECOGNITION_FLAG_RUN_IN_BATTERY_SAVER = 16; // 0x10
7485  }
7486
7487  @Deprecated public abstract static class SoundTriggerDetector.Callback {
7488    ctor @Deprecated public SoundTriggerDetector.Callback();
7489    method @Deprecated public abstract void onAvailabilityChanged(int);
7490    method @Deprecated public abstract void onDetected(@NonNull android.media.soundtrigger.SoundTriggerDetector.EventPayload);
7491    method @Deprecated public abstract void onError();
7492    method @Deprecated public abstract void onRecognitionPaused();
7493    method @Deprecated public abstract void onRecognitionResumed();
7494  }
7495
7496  @Deprecated public static class SoundTriggerDetector.EventPayload {
7497    method @Deprecated @Nullable public android.media.AudioFormat getCaptureAudioFormat();
7498    method @Deprecated @Nullable public byte[] getTriggerAudio();
7499  }
7500
7501  public final class SoundTriggerManager {
7502    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);
7503    method @Deprecated @RequiresPermission(android.Manifest.permission.MANAGE_SOUND_TRIGGER) public void deleteModel(java.util.UUID);
7504    method public int getDetectionServiceOperationsTimeout();
7505    method @Deprecated @Nullable @RequiresPermission(android.Manifest.permission.MANAGE_SOUND_TRIGGER) public android.media.soundtrigger.SoundTriggerManager.Model getModel(java.util.UUID);
7506    method @Nullable @RequiresPermission(android.Manifest.permission.MANAGE_SOUND_TRIGGER) public android.hardware.soundtrigger.SoundTrigger.ModuleProperties getModuleProperties();
7507    method @RequiresPermission(android.Manifest.permission.MANAGE_SOUND_TRIGGER) public int getParameter(@NonNull java.util.UUID, int);
7508    method @Nullable @RequiresPermission(android.Manifest.permission.MANAGE_SOUND_TRIGGER) public android.hardware.soundtrigger.SoundTrigger.ModelParamRange queryParameter(@Nullable java.util.UUID, int);
7509    method @RequiresPermission(android.Manifest.permission.MANAGE_SOUND_TRIGGER) public int setParameter(@Nullable java.util.UUID, int, int);
7510    method @Deprecated @RequiresPermission(android.Manifest.permission.MANAGE_SOUND_TRIGGER) public void updateModel(android.media.soundtrigger.SoundTriggerManager.Model);
7511  }
7512
7513  public static class SoundTriggerManager.Model {
7514    method @NonNull public static android.media.soundtrigger.SoundTriggerManager.Model create(@NonNull java.util.UUID, @NonNull java.util.UUID, @Nullable byte[], int);
7515    method @NonNull public static android.media.soundtrigger.SoundTriggerManager.Model create(@NonNull java.util.UUID, @NonNull java.util.UUID, @Nullable byte[]);
7516    method @Nullable public byte[] getModelData();
7517    method @NonNull public java.util.UUID getModelUuid();
7518    method @NonNull public java.util.UUID getVendorUuid();
7519    method public int getVersion();
7520  }
7521
7522}
7523
7524package android.media.tv {
7525
7526  public final class DvbDeviceInfo implements android.os.Parcelable {
7527    ctor public DvbDeviceInfo(int, int);
7528    method public int describeContents();
7529    method @IntRange(from=0) public int getAdapterId();
7530    method @IntRange(from=0) public int getDeviceId();
7531    method public void writeToParcel(@NonNull android.os.Parcel, int);
7532    field @NonNull public static final android.os.Parcelable.Creator<android.media.tv.DvbDeviceInfo> CREATOR;
7533  }
7534
7535  public final class TunedInfo implements android.os.Parcelable {
7536    method public int describeContents();
7537    method public int getAppTag();
7538    method public int getAppType();
7539    method @Nullable public android.net.Uri getChannelUri();
7540    method @NonNull public String getInputId();
7541    method public boolean isMainSession();
7542    method public boolean isRecordingSession();
7543    method public boolean isVisible();
7544    method public void writeToParcel(@NonNull android.os.Parcel, int);
7545    field public static final int APP_TAG_SELF = 0; // 0x0
7546    field public static final int APP_TYPE_NON_SYSTEM = 3; // 0x3
7547    field public static final int APP_TYPE_SELF = 1; // 0x1
7548    field public static final int APP_TYPE_SYSTEM = 2; // 0x2
7549    field @NonNull public static final android.os.Parcelable.Creator<android.media.tv.TunedInfo> CREATOR;
7550  }
7551
7552  public final class TvContentRatingSystemInfo implements android.os.Parcelable {
7553    method public static android.media.tv.TvContentRatingSystemInfo createTvContentRatingSystemInfo(int, android.content.pm.ApplicationInfo);
7554    method public int describeContents();
7555    method public android.net.Uri getXmlUri();
7556    method public boolean isSystemDefined();
7557    method public void writeToParcel(android.os.Parcel, int);
7558  }
7559
7560  public final class TvContract {
7561    method public static android.net.Uri buildChannelsUriForInput(@Nullable String, boolean);
7562    method public static android.net.Uri buildChannelsUriForInput(@Nullable String, @Nullable String, boolean);
7563    field public static final String ACTION_CHANNEL_BROWSABLE_REQUESTED = "android.media.tv.action.CHANNEL_BROWSABLE_REQUESTED";
7564    field public static final String EXTRA_BLOCKED_PACKAGES = "android.media.tv.extra.BLOCKED_PACKAGES";
7565    field public static final String EXTRA_COLUMN_NAME = "android.media.tv.extra.COLUMN_NAME";
7566    field public static final String EXTRA_DATA_TYPE = "android.media.tv.extra.DATA_TYPE";
7567    field public static final String EXTRA_DEFAULT_VALUE = "android.media.tv.extra.DEFAULT_VALUE";
7568    field public static final String EXTRA_EXISTING_COLUMN_NAMES = "android.media.tv.extra.EXISTING_COLUMN_NAMES";
7569    field public static final String EXTRA_PACKAGE_NAME = "android.media.tv.extra.PACKAGE_NAME";
7570    field public static final String EXTRA_RESULT_CODE = "android.media.tv.extra.RESULT_CODE";
7571    field public static final String METHOD_ADD_COLUMN = "add_column";
7572    field public static final String METHOD_BLOCK_PACKAGE = "block_package";
7573    field public static final String METHOD_GET_BLOCKED_PACKAGES = "get_blocked_packages";
7574    field public static final String METHOD_GET_COLUMNS = "get_columns";
7575    field public static final String METHOD_UNBLOCK_PACKAGE = "unblock_package";
7576    field public static final int RESULT_ERROR_INVALID_ARGUMENT = 2; // 0x2
7577    field public static final int RESULT_ERROR_IO = 1; // 0x1
7578    field public static final int RESULT_OK = 0; // 0x0
7579  }
7580
7581  public static final class TvContract.WatchedPrograms implements android.media.tv.TvContract.BaseTvColumns {
7582    field public static final String COLUMN_CHANNEL_ID = "channel_id";
7583    field public static final String COLUMN_DESCRIPTION = "description";
7584    field public static final String COLUMN_END_TIME_UTC_MILLIS = "end_time_utc_millis";
7585    field public static final String COLUMN_INTERNAL_SESSION_TOKEN = "session_token";
7586    field public static final String COLUMN_INTERNAL_TUNE_PARAMS = "tune_params";
7587    field public static final String COLUMN_START_TIME_UTC_MILLIS = "start_time_utc_millis";
7588    field public static final String COLUMN_TITLE = "title";
7589    field public static final String COLUMN_WATCH_END_TIME_UTC_MILLIS = "watch_end_time_utc_millis";
7590    field public static final String COLUMN_WATCH_START_TIME_UTC_MILLIS = "watch_start_time_utc_millis";
7591    field public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/watched_program";
7592    field public static final String CONTENT_TYPE = "vnd.android.cursor.dir/watched_program";
7593    field public static final android.net.Uri CONTENT_URI;
7594  }
7595
7596  public final class TvInputHardwareInfo implements android.os.Parcelable {
7597    method public int describeContents();
7598    method public String getAudioAddress();
7599    method public int getAudioType();
7600    method public int getCableConnectionStatus();
7601    method public int getDeviceId();
7602    method public int getHdmiPortId();
7603    method public int getType();
7604    method public void readFromParcel(android.os.Parcel);
7605    method public void writeToParcel(android.os.Parcel, int);
7606    field public static final int CABLE_CONNECTION_STATUS_CONNECTED = 1; // 0x1
7607    field public static final int CABLE_CONNECTION_STATUS_DISCONNECTED = 2; // 0x2
7608    field public static final int CABLE_CONNECTION_STATUS_UNKNOWN = 0; // 0x0
7609    field @NonNull public static final android.os.Parcelable.Creator<android.media.tv.TvInputHardwareInfo> CREATOR;
7610    field public static final int TV_INPUT_TYPE_COMPONENT = 6; // 0x6
7611    field public static final int TV_INPUT_TYPE_COMPOSITE = 3; // 0x3
7612    field public static final int TV_INPUT_TYPE_DISPLAY_PORT = 10; // 0xa
7613    field public static final int TV_INPUT_TYPE_DVI = 8; // 0x8
7614    field public static final int TV_INPUT_TYPE_HDMI = 9; // 0x9
7615    field public static final int TV_INPUT_TYPE_OTHER_HARDWARE = 1; // 0x1
7616    field public static final int TV_INPUT_TYPE_SCART = 5; // 0x5
7617    field public static final int TV_INPUT_TYPE_SVIDEO = 4; // 0x4
7618    field public static final int TV_INPUT_TYPE_TUNER = 2; // 0x2
7619    field public static final int TV_INPUT_TYPE_VGA = 7; // 0x7
7620  }
7621
7622  public static final class TvInputHardwareInfo.Builder {
7623    ctor public TvInputHardwareInfo.Builder();
7624    method public android.media.tv.TvInputHardwareInfo.Builder audioAddress(String);
7625    method public android.media.tv.TvInputHardwareInfo.Builder audioType(int);
7626    method public android.media.tv.TvInputHardwareInfo build();
7627    method public android.media.tv.TvInputHardwareInfo.Builder cableConnectionStatus(int);
7628    method public android.media.tv.TvInputHardwareInfo.Builder deviceId(int);
7629    method public android.media.tv.TvInputHardwareInfo.Builder hdmiPortId(int);
7630    method public android.media.tv.TvInputHardwareInfo.Builder type(int);
7631  }
7632
7633  public final class TvInputInfo implements android.os.Parcelable {
7634    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;
7635    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;
7636    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;
7637    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;
7638    method public android.hardware.hdmi.HdmiDeviceInfo getHdmiDeviceInfo();
7639    method public boolean isConnectedToHdmiSwitch();
7640    method public boolean isHardwareInput();
7641    method public android.graphics.drawable.Drawable loadIcon(@NonNull android.content.Context, int);
7642  }
7643
7644  public static final class TvInputInfo.Builder {
7645    method public android.media.tv.TvInputInfo.Builder setHdmiDeviceInfo(android.hardware.hdmi.HdmiDeviceInfo);
7646    method public android.media.tv.TvInputInfo.Builder setIcon(android.graphics.drawable.Icon);
7647    method public android.media.tv.TvInputInfo.Builder setIcon(android.graphics.drawable.Icon, int);
7648    method public android.media.tv.TvInputInfo.Builder setLabel(CharSequence);
7649    method public android.media.tv.TvInputInfo.Builder setLabel(@StringRes int);
7650    method public android.media.tv.TvInputInfo.Builder setParentId(String);
7651    method public android.media.tv.TvInputInfo.Builder setTvInputHardwareInfo(android.media.tv.TvInputHardwareInfo);
7652  }
7653
7654  public static final class TvInputInfo.TvInputSettings {
7655    method public static java.util.Map<java.lang.String,java.lang.String> getCustomLabels(android.content.Context, int);
7656    method public static java.util.Set<java.lang.String> getHiddenTvInputIds(android.content.Context, int);
7657    method public static void putCustomLabels(android.content.Context, java.util.Map<java.lang.String,java.lang.String>, int);
7658    method public static void putHiddenTvInputs(android.content.Context, java.util.Set<java.lang.String>, int);
7659  }
7660
7661  public final class TvInputManager {
7662    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);
7663    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);
7664    method @RequiresPermission(android.Manifest.permission.MODIFY_PARENTAL_CONTROLS) public void addBlockedRating(@NonNull android.media.tv.TvContentRating);
7665    method @RequiresPermission(android.Manifest.permission.CAPTURE_TV_INPUT) public boolean captureFrame(String, android.view.Surface, android.media.tv.TvStreamConfig);
7666    method @NonNull @RequiresPermission(android.Manifest.permission.TIS_EXTENSION_INTERFACE) public java.util.List<java.lang.String> getAvailableExtensionInterfaceNames(@NonNull String);
7667    method @RequiresPermission(android.Manifest.permission.CAPTURE_TV_INPUT) public java.util.List<android.media.tv.TvStreamConfig> getAvailableTvStreamConfigList(String);
7668    method @RequiresPermission("android.permission.TUNER_RESOURCE_ACCESS") public int getClientPid(@NonNull String);
7669    method @RequiresPermission("android.permission.TUNER_RESOURCE_ACCESS") public int getClientPriority(int, @NonNull String);
7670    method @RequiresPermission("android.permission.TUNER_RESOURCE_ACCESS") public int getClientPriority(int);
7671    method @NonNull @RequiresPermission(android.Manifest.permission.ACCESS_TUNED_INFO) public java.util.List<android.media.tv.TunedInfo> getCurrentTunedInfos();
7672    method @NonNull @RequiresPermission("android.permission.DVB_DEVICE") public java.util.List<android.media.tv.DvbDeviceInfo> getDvbDeviceList();
7673    method @Nullable @RequiresPermission(android.Manifest.permission.TIS_EXTENSION_INTERFACE) public android.os.IBinder getExtensionInterface(@NonNull String, @NonNull String);
7674    method @RequiresPermission(android.Manifest.permission.TV_INPUT_HARDWARE) public java.util.List<android.media.tv.TvInputHardwareInfo> getHardwareList();
7675    method @RequiresPermission(android.Manifest.permission.READ_CONTENT_RATING_SYSTEMS) public java.util.List<android.media.tv.TvContentRatingSystemInfo> getTvContentRatingSystemList();
7676    method @RequiresPermission(android.Manifest.permission.CAPTURE_TV_INPUT) public boolean isSingleSessionActive();
7677    method @RequiresPermission(android.Manifest.permission.NOTIFY_TV_INPUTS) public void notifyPreviewProgramAddedToWatchNext(String, long, long);
7678    method @RequiresPermission(android.Manifest.permission.NOTIFY_TV_INPUTS) public void notifyPreviewProgramBrowsableDisabled(String, long);
7679    method @RequiresPermission(android.Manifest.permission.NOTIFY_TV_INPUTS) public void notifyWatchNextProgramBrowsableDisabled(String, long);
7680    method @Nullable @RequiresPermission("android.permission.DVB_DEVICE") public android.os.ParcelFileDescriptor openDvbDevice(@NonNull android.media.tv.DvbDeviceInfo, int);
7681    method @RequiresPermission(android.Manifest.permission.TV_INPUT_HARDWARE) public void releaseTvInputHardware(int, android.media.tv.TvInputManager.Hardware);
7682    method @RequiresPermission(android.Manifest.permission.MODIFY_PARENTAL_CONTROLS) public void removeBlockedRating(@NonNull android.media.tv.TvContentRating);
7683    method @RequiresPermission(android.Manifest.permission.MODIFY_PARENTAL_CONTROLS) public void setParentalControlsEnabled(boolean);
7684  }
7685
7686  public static final class TvInputManager.Hardware {
7687    method public void overrideAudioSink(int, String, int, int, int);
7688    method public void overrideAudioSink(@NonNull android.media.AudioDeviceInfo, @IntRange(from=0) int, int, int);
7689    method public void setStreamVolume(float);
7690    method public boolean setSurface(android.view.Surface, android.media.tv.TvStreamConfig);
7691  }
7692
7693  public abstract static class TvInputManager.HardwareCallback {
7694    ctor public TvInputManager.HardwareCallback();
7695    method public abstract void onReleased();
7696    method public abstract void onStreamConfigChanged(android.media.tv.TvStreamConfig[]);
7697  }
7698
7699  public abstract static class TvInputManager.TvInputCallback {
7700    method @RequiresPermission(android.Manifest.permission.ACCESS_TUNED_INFO) public void onCurrentTunedInfosUpdated(@NonNull java.util.List<android.media.tv.TunedInfo>);
7701  }
7702
7703  public abstract class TvInputService extends android.app.Service {
7704    method @Nullable public android.os.IBinder createExtension();
7705    method @NonNull public java.util.List<java.lang.String> getAvailableExtensionInterfaceNames();
7706    method @Nullable public android.os.IBinder getExtensionInterface(@NonNull String);
7707    method @Nullable public String getExtensionInterfacePermission(@NonNull String);
7708    method @Nullable public android.media.tv.TvInputInfo onHardwareAdded(android.media.tv.TvInputHardwareInfo);
7709    method @Nullable public String onHardwareRemoved(android.media.tv.TvInputHardwareInfo);
7710    method @Nullable public android.media.tv.TvInputInfo onHdmiDeviceAdded(android.hardware.hdmi.HdmiDeviceInfo);
7711    method @Nullable public String onHdmiDeviceRemoved(android.hardware.hdmi.HdmiDeviceInfo);
7712    method public void onHdmiDeviceUpdated(@NonNull android.hardware.hdmi.HdmiDeviceInfo);
7713  }
7714
7715  public abstract static class TvInputService.RecordingSession {
7716    method public void notifySessionEvent(@NonNull String, android.os.Bundle);
7717  }
7718
7719  public abstract static class TvInputService.Session implements android.view.KeyEvent.Callback {
7720    method public void notifySessionEvent(@NonNull String, android.os.Bundle);
7721    method public void onSetMain(boolean);
7722  }
7723
7724  public abstract static class TvRecordingClient.RecordingCallback {
7725    method public void onEvent(String, String, android.os.Bundle);
7726  }
7727
7728  public class TvStreamConfig implements android.os.Parcelable {
7729    method public int describeContents();
7730    method public int getGeneration();
7731    method public int getMaxHeight();
7732    method public int getMaxWidth();
7733    method public int getStreamId();
7734    method public int getType();
7735    method public void writeToParcel(android.os.Parcel, int);
7736    field @NonNull public static final android.os.Parcelable.Creator<android.media.tv.TvStreamConfig> CREATOR;
7737    field public static final int STREAM_TYPE_BUFFER_PRODUCER = 2; // 0x2
7738    field public static final int STREAM_TYPE_INDEPENDENT_VIDEO_SOURCE = 1; // 0x1
7739  }
7740
7741  public static final class TvStreamConfig.Builder {
7742    ctor public TvStreamConfig.Builder();
7743    method public android.media.tv.TvStreamConfig build();
7744    method public android.media.tv.TvStreamConfig.Builder generation(int);
7745    method public android.media.tv.TvStreamConfig.Builder maxHeight(int);
7746    method public android.media.tv.TvStreamConfig.Builder maxWidth(int);
7747    method public android.media.tv.TvStreamConfig.Builder streamId(int);
7748    method public android.media.tv.TvStreamConfig.Builder type(int);
7749  }
7750
7751  public class TvView extends android.view.ViewGroup {
7752    method @RequiresPermission("android.permission.CHANGE_HDMI_CEC_ACTIVE_SOURCE") public void setMain();
7753    method @RequiresPermission(android.Manifest.permission.MODIFY_PARENTAL_CONTROLS) public void unblockContent(android.media.tv.TvContentRating);
7754  }
7755
7756  public abstract static class TvView.TvInputCallback {
7757    method public void onEvent(String, String, android.os.Bundle);
7758  }
7759
7760}
7761
7762package android.media.tv.tuner {
7763
7764  public class DemuxCapabilities {
7765    method public int getAudioFilterCount();
7766    method public int getDemuxCount();
7767    method public int getFilterCapabilities();
7768    method @NonNull public int[] getFilterTypeCapabilityList();
7769    method @NonNull @Size(5) public int[] getLinkCapabilities();
7770    method public int getPcrFilterCount();
7771    method public int getPesFilterCount();
7772    method public int getPlaybackCount();
7773    method public int getRecordCount();
7774    method public int getSectionFilterCount();
7775    method public long getSectionFilterLength();
7776    method public int getTsFilterCount();
7777    method public int getVideoFilterCount();
7778    method public boolean isTimeFilterSupported();
7779  }
7780
7781  public class DemuxInfo {
7782    ctor public DemuxInfo(int);
7783    method public int getFilterTypes();
7784    method public void setFilterTypes(int);
7785  }
7786
7787  public class Descrambler implements java.lang.AutoCloseable {
7788    method public int addPid(int, int, @Nullable android.media.tv.tuner.filter.Filter);
7789    method public void close();
7790    method public static boolean isValidKeyToken(@NonNull byte[]);
7791    method public int removePid(int, int, @Nullable android.media.tv.tuner.filter.Filter);
7792    method public int setKeyToken(@NonNull byte[]);
7793    field public static final int PID_TYPE_MMTP = 2; // 0x2
7794    field public static final int PID_TYPE_T = 1; // 0x1
7795  }
7796
7797  public class Lnb implements java.lang.AutoCloseable {
7798    method public void addCallback(@NonNull java.util.concurrent.Executor, @NonNull android.media.tv.tuner.LnbCallback);
7799    method public void close();
7800    method public boolean removeCallback(@NonNull android.media.tv.tuner.LnbCallback);
7801    method public int sendDiseqcMessage(@NonNull byte[]);
7802    method public int setSatellitePosition(int);
7803    method public int setTone(int);
7804    method public int setVoltage(int);
7805    field public static final int EVENT_TYPE_DISEQC_RX_OVERFLOW = 0; // 0x0
7806    field public static final int EVENT_TYPE_DISEQC_RX_PARITY_ERROR = 2; // 0x2
7807    field public static final int EVENT_TYPE_DISEQC_RX_TIMEOUT = 1; // 0x1
7808    field public static final int EVENT_TYPE_LNB_OVERLOAD = 3; // 0x3
7809    field public static final int POSITION_A = 1; // 0x1
7810    field public static final int POSITION_B = 2; // 0x2
7811    field public static final int POSITION_UNDEFINED = 0; // 0x0
7812    field public static final int TONE_CONTINUOUS = 1; // 0x1
7813    field public static final int TONE_NONE = 0; // 0x0
7814    field public static final int VOLTAGE_11V = 2; // 0x2
7815    field public static final int VOLTAGE_12V = 3; // 0x3
7816    field public static final int VOLTAGE_13V = 4; // 0x4
7817    field public static final int VOLTAGE_14V = 5; // 0x5
7818    field public static final int VOLTAGE_15V = 6; // 0x6
7819    field public static final int VOLTAGE_18V = 7; // 0x7
7820    field public static final int VOLTAGE_19V = 8; // 0x8
7821    field public static final int VOLTAGE_5V = 1; // 0x1
7822    field public static final int VOLTAGE_NONE = 0; // 0x0
7823  }
7824
7825  public interface LnbCallback {
7826    method public void onDiseqcMessage(@NonNull byte[]);
7827    method public void onEvent(int);
7828  }
7829
7830  public class Tuner implements java.lang.AutoCloseable {
7831    ctor @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public Tuner(@NonNull android.content.Context, @Nullable String, int);
7832    method public int applyFrontend(@NonNull android.media.tv.tuner.frontend.FrontendInfo);
7833    method public int cancelScanning();
7834    method public int cancelTuning();
7835    method public void clearOnTuneEventListener();
7836    method public void clearResourceLostListener();
7837    method public void close();
7838    method public void closeFrontend();
7839    method public int configureDemux(@Nullable android.media.tv.tuner.DemuxInfo);
7840    method public int connectCiCam(int);
7841    method public int connectFrontendToCiCam(int);
7842    method public int disconnectCiCam();
7843    method public int disconnectFrontendToCiCam(int);
7844    method public int getAvSyncHwId(@NonNull android.media.tv.tuner.filter.Filter);
7845    method public long getAvSyncTime(int);
7846    method @Nullable public java.util.List<android.media.tv.tuner.frontend.FrontendInfo> getAvailableFrontendInfos();
7847    method @Nullable public android.media.tv.tuner.DemuxInfo getCurrentDemuxInfo();
7848    method @Nullable public String getCurrentFrontendHardwareInfo();
7849    method @Nullable public android.media.tv.tuner.DemuxCapabilities getDemuxCapabilities();
7850    method @Nullable public android.media.tv.tuner.frontend.FrontendInfo getFrontendInfo();
7851    method @Nullable public android.media.tv.tuner.frontend.FrontendStatus getFrontendStatus(@NonNull int[]);
7852    method @NonNull public java.util.List<android.media.tv.tuner.frontend.FrontendStatusReadiness> getFrontendStatusReadiness(@NonNull int[]);
7853    method @IntRange(from=0xffffffff) public int getMaxNumberOfFrontends(int);
7854    method @RequiresPermission("android.permission.TUNER_RESOURCE_ACCESS") public boolean hasUnusedFrontend(int);
7855    method public boolean isLnaSupported();
7856    method public boolean isLowestPriority(int);
7857    method @Nullable @RequiresPermission(android.Manifest.permission.ACCESS_TV_DESCRAMBLER) public android.media.tv.tuner.Descrambler openDescrambler();
7858    method @Nullable public android.media.tv.tuner.dvr.DvrPlayback openDvrPlayback(long, @NonNull java.util.concurrent.Executor, @NonNull android.media.tv.tuner.dvr.OnPlaybackStatusChangedListener);
7859    method @Nullable public android.media.tv.tuner.dvr.DvrRecorder openDvrRecorder(long, @NonNull java.util.concurrent.Executor, @NonNull android.media.tv.tuner.dvr.OnRecordStatusChangedListener);
7860    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);
7861    method @Nullable public android.media.tv.tuner.Lnb openLnb(@NonNull java.util.concurrent.Executor, @NonNull android.media.tv.tuner.LnbCallback);
7862    method @Nullable public android.media.tv.tuner.Lnb openLnbByName(@NonNull String, @NonNull java.util.concurrent.Executor, @NonNull android.media.tv.tuner.LnbCallback);
7863    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);
7864    method @Nullable public android.media.tv.tuner.filter.TimeFilter openTimeFilter();
7865    method public int removeOutputPid(@IntRange(from=0) int);
7866    method public int scan(@NonNull android.media.tv.tuner.frontend.FrontendSettings, int, @NonNull java.util.concurrent.Executor, @NonNull android.media.tv.tuner.frontend.ScanCallback);
7867    method public int setLnaEnabled(boolean);
7868    method public int setMaxNumberOfFrontends(int, @IntRange(from=0) int);
7869    method public void setOnTuneEventListener(@NonNull java.util.concurrent.Executor, @NonNull android.media.tv.tuner.frontend.OnTuneEventListener);
7870    method public void setResourceLostListener(@NonNull java.util.concurrent.Executor, @NonNull android.media.tv.tuner.Tuner.OnResourceLostListener);
7871    method public void shareFrontendFromTuner(@NonNull android.media.tv.tuner.Tuner);
7872    method public int transferOwner(@NonNull android.media.tv.tuner.Tuner);
7873    method public int tune(@NonNull android.media.tv.tuner.frontend.FrontendSettings);
7874    method @RequiresPermission("android.permission.TUNER_RESOURCE_ACCESS") public void updateResourcePriority(int, int);
7875    field public static final int INVALID_AV_SYNC_ID = -1; // 0xffffffff
7876    field public static final int INVALID_FILTER_ID = -1; // 0xffffffff
7877    field public static final long INVALID_FILTER_ID_LONG = -1L; // 0xffffffffffffffffL
7878    field public static final int INVALID_FIRST_MACROBLOCK_IN_SLICE = -1; // 0xffffffff
7879    field public static final int INVALID_FRONTEND_ID = -1; // 0xffffffff
7880    field public static final int INVALID_FRONTEND_SETTING_FREQUENCY = -1; // 0xffffffff
7881    field public static final int INVALID_LTS_ID = -1; // 0xffffffff
7882    field public static final int INVALID_MMTP_RECORD_EVENT_MPT_SEQUENCE_NUM = -1; // 0xffffffff
7883    field public static final int INVALID_STREAM_ID = 65535; // 0xffff
7884    field public static final long INVALID_TIMESTAMP = -1L; // 0xffffffffffffffffL
7885    field public static final int INVALID_TS_PID = 65535; // 0xffff
7886    field public static final int RESULT_INVALID_ARGUMENT = 4; // 0x4
7887    field public static final int RESULT_INVALID_STATE = 3; // 0x3
7888    field public static final int RESULT_NOT_INITIALIZED = 2; // 0x2
7889    field public static final int RESULT_OUT_OF_MEMORY = 5; // 0x5
7890    field public static final int RESULT_SUCCESS = 0; // 0x0
7891    field public static final int RESULT_UNAVAILABLE = 1; // 0x1
7892    field public static final int RESULT_UNKNOWN_ERROR = 6; // 0x6
7893    field public static final int SCAN_TYPE_AUTO = 1; // 0x1
7894    field public static final int SCAN_TYPE_BLIND = 2; // 0x2
7895    field public static final int SCAN_TYPE_UNDEFINED = 0; // 0x0
7896    field @NonNull public static final byte[] VOID_KEYTOKEN;
7897  }
7898
7899  public static interface Tuner.OnResourceLostListener {
7900    method public void onResourceLost(@NonNull android.media.tv.tuner.Tuner);
7901  }
7902
7903  public final class TunerVersionChecker {
7904    method public static int getTunerVersion();
7905    field public static final int TUNER_VERSION_1_0 = 65536; // 0x10000
7906    field public static final int TUNER_VERSION_1_1 = 65537; // 0x10001
7907    field public static final int TUNER_VERSION_2_0 = 131072; // 0x20000
7908    field public static final int TUNER_VERSION_3_0 = 196608; // 0x30000
7909    field public static final int TUNER_VERSION_UNKNOWN = 0; // 0x0
7910  }
7911
7912}
7913
7914package android.media.tv.tuner.dvr {
7915
7916  public class DvrPlayback implements java.lang.AutoCloseable {
7917    method @Deprecated public int attachFilter(@NonNull android.media.tv.tuner.filter.Filter);
7918    method public void close();
7919    method public int configure(@NonNull android.media.tv.tuner.dvr.DvrSettings);
7920    method @Deprecated public int detachFilter(@NonNull android.media.tv.tuner.filter.Filter);
7921    method public int flush();
7922    method public long read(long);
7923    method public long read(@NonNull byte[], long, long);
7924    method public long seek(long);
7925    method public void setFileDescriptor(@NonNull android.os.ParcelFileDescriptor);
7926    method public int setPlaybackBufferStatusCheckIntervalHint(long);
7927    method public int start();
7928    method public int stop();
7929    field public static final int PLAYBACK_STATUS_ALMOST_EMPTY = 2; // 0x2
7930    field public static final int PLAYBACK_STATUS_ALMOST_FULL = 4; // 0x4
7931    field public static final int PLAYBACK_STATUS_EMPTY = 1; // 0x1
7932    field public static final int PLAYBACK_STATUS_FULL = 8; // 0x8
7933  }
7934
7935  public class DvrRecorder implements java.lang.AutoCloseable {
7936    method public int attachFilter(@NonNull android.media.tv.tuner.filter.Filter);
7937    method public void close();
7938    method public int configure(@NonNull android.media.tv.tuner.dvr.DvrSettings);
7939    method public int detachFilter(@NonNull android.media.tv.tuner.filter.Filter);
7940    method public int flush();
7941    method public void setFileDescriptor(@NonNull android.os.ParcelFileDescriptor);
7942    method public int setRecordBufferStatusCheckIntervalHint(long);
7943    method public int start();
7944    method public int stop();
7945    method public long write(long);
7946    method public long write(@NonNull byte[], long, long);
7947  }
7948
7949  public class DvrSettings {
7950    method @NonNull public static android.media.tv.tuner.dvr.DvrSettings.Builder builder();
7951    method public int getDataFormat();
7952    method public long getHighThreshold();
7953    method public long getLowThreshold();
7954    method public long getPacketSize();
7955    method public int getStatusMask();
7956    field public static final int DATA_FORMAT_ES = 2; // 0x2
7957    field public static final int DATA_FORMAT_PES = 1; // 0x1
7958    field public static final int DATA_FORMAT_SHV_TLV = 3; // 0x3
7959    field public static final int DATA_FORMAT_TS = 0; // 0x0
7960  }
7961
7962  public static final class DvrSettings.Builder {
7963    ctor public DvrSettings.Builder();
7964    method @NonNull public android.media.tv.tuner.dvr.DvrSettings build();
7965    method @NonNull public android.media.tv.tuner.dvr.DvrSettings.Builder setDataFormat(int);
7966    method @NonNull public android.media.tv.tuner.dvr.DvrSettings.Builder setHighThreshold(long);
7967    method @NonNull public android.media.tv.tuner.dvr.DvrSettings.Builder setLowThreshold(long);
7968    method @NonNull public android.media.tv.tuner.dvr.DvrSettings.Builder setPacketSize(long);
7969    method @NonNull public android.media.tv.tuner.dvr.DvrSettings.Builder setStatusMask(int);
7970  }
7971
7972  public interface OnPlaybackStatusChangedListener {
7973    method public void onPlaybackStatusChanged(int);
7974  }
7975
7976  public interface OnRecordStatusChangedListener {
7977    method public void onRecordStatusChanged(int);
7978  }
7979
7980}
7981
7982package android.media.tv.tuner.filter {
7983
7984  public final class AlpFilterConfiguration extends android.media.tv.tuner.filter.FilterConfiguration {
7985    method @NonNull public static android.media.tv.tuner.filter.AlpFilterConfiguration.Builder builder();
7986    method public int getLengthType();
7987    method public int getPacketType();
7988    method public int getType();
7989    field public static final int LENGTH_TYPE_UNDEFINED = 0; // 0x0
7990    field public static final int LENGTH_TYPE_WITHOUT_ADDITIONAL_HEADER = 1; // 0x1
7991    field public static final int LENGTH_TYPE_WITH_ADDITIONAL_HEADER = 2; // 0x2
7992    field public static final int PACKET_TYPE_COMPRESSED = 2; // 0x2
7993    field public static final int PACKET_TYPE_EXTENSION = 6; // 0x6
7994    field public static final int PACKET_TYPE_IPV4 = 0; // 0x0
7995    field public static final int PACKET_TYPE_MPEG2_TS = 7; // 0x7
7996    field public static final int PACKET_TYPE_SIGNALING = 4; // 0x4
7997  }
7998
7999  public static final class AlpFilterConfiguration.Builder {
8000    method @NonNull public android.media.tv.tuner.filter.AlpFilterConfiguration build();
8001    method @NonNull public android.media.tv.tuner.filter.AlpFilterConfiguration.Builder setLengthType(int);
8002    method @NonNull public android.media.tv.tuner.filter.AlpFilterConfiguration.Builder setPacketType(int);
8003    method @NonNull public android.media.tv.tuner.filter.AlpFilterConfiguration.Builder setSettings(@Nullable android.media.tv.tuner.filter.Settings);
8004  }
8005
8006  public class AudioDescriptor {
8007    method public byte getAdFade();
8008    method public byte getAdGainCenter();
8009    method public byte getAdGainFront();
8010    method public byte getAdGainSurround();
8011    method public byte getAdPan();
8012    method public char getAdVersionTextTag();
8013  }
8014
8015  public class AvSettings extends android.media.tv.tuner.filter.Settings {
8016    method @NonNull public static android.media.tv.tuner.filter.AvSettings.Builder builder(int, boolean);
8017    method public int getAudioStreamType();
8018    method public int getVideoStreamType();
8019    method public boolean isPassthrough();
8020    method public boolean useSecureMemory();
8021    field public static final int AUDIO_STREAM_TYPE_AAC = 6; // 0x6
8022    field public static final int AUDIO_STREAM_TYPE_AAC_ADTS = 16; // 0x10
8023    field public static final int AUDIO_STREAM_TYPE_AAC_HE_ADTS = 18; // 0x12
8024    field public static final int AUDIO_STREAM_TYPE_AAC_HE_LATM = 19; // 0x13
8025    field public static final int AUDIO_STREAM_TYPE_AAC_LATM = 17; // 0x11
8026    field public static final int AUDIO_STREAM_TYPE_AC3 = 7; // 0x7
8027    field public static final int AUDIO_STREAM_TYPE_AC4 = 9; // 0x9
8028    field public static final int AUDIO_STREAM_TYPE_DRA = 15; // 0xf
8029    field public static final int AUDIO_STREAM_TYPE_DTS = 10; // 0xa
8030    field public static final int AUDIO_STREAM_TYPE_DTS_HD = 11; // 0xb
8031    field public static final int AUDIO_STREAM_TYPE_EAC3 = 8; // 0x8
8032    field public static final int AUDIO_STREAM_TYPE_MP3 = 2; // 0x2
8033    field public static final int AUDIO_STREAM_TYPE_MPEG1 = 3; // 0x3
8034    field public static final int AUDIO_STREAM_TYPE_MPEG2 = 4; // 0x4
8035    field public static final int AUDIO_STREAM_TYPE_MPEGH = 5; // 0x5
8036    field public static final int AUDIO_STREAM_TYPE_OPUS = 13; // 0xd
8037    field public static final int AUDIO_STREAM_TYPE_PCM = 1; // 0x1
8038    field public static final int AUDIO_STREAM_TYPE_UNDEFINED = 0; // 0x0
8039    field public static final int AUDIO_STREAM_TYPE_VORBIS = 14; // 0xe
8040    field public static final int AUDIO_STREAM_TYPE_WMA = 12; // 0xc
8041    field public static final int VIDEO_STREAM_TYPE_AV1 = 10; // 0xa
8042    field public static final int VIDEO_STREAM_TYPE_AVC = 5; // 0x5
8043    field public static final int VIDEO_STREAM_TYPE_AVS = 11; // 0xb
8044    field public static final int VIDEO_STREAM_TYPE_AVS2 = 12; // 0xc
8045    field public static final int VIDEO_STREAM_TYPE_HEVC = 6; // 0x6
8046    field public static final int VIDEO_STREAM_TYPE_MPEG1 = 2; // 0x2
8047    field public static final int VIDEO_STREAM_TYPE_MPEG2 = 3; // 0x3
8048    field public static final int VIDEO_STREAM_TYPE_MPEG4P2 = 4; // 0x4
8049    field public static final int VIDEO_STREAM_TYPE_RESERVED = 1; // 0x1
8050    field public static final int VIDEO_STREAM_TYPE_UNDEFINED = 0; // 0x0
8051    field public static final int VIDEO_STREAM_TYPE_VC1 = 7; // 0x7
8052    field public static final int VIDEO_STREAM_TYPE_VP8 = 8; // 0x8
8053    field public static final int VIDEO_STREAM_TYPE_VP9 = 9; // 0x9
8054    field public static final int VIDEO_STREAM_TYPE_VVC = 13; // 0xd
8055  }
8056
8057  public static class AvSettings.Builder {
8058    method @NonNull public android.media.tv.tuner.filter.AvSettings build();
8059    method @NonNull public android.media.tv.tuner.filter.AvSettings.Builder setAudioStreamType(int);
8060    method @NonNull public android.media.tv.tuner.filter.AvSettings.Builder setPassthrough(boolean);
8061    method @NonNull public android.media.tv.tuner.filter.AvSettings.Builder setUseSecureMemory(boolean);
8062    method @NonNull public android.media.tv.tuner.filter.AvSettings.Builder setVideoStreamType(int);
8063  }
8064
8065  public class DownloadEvent extends android.media.tv.tuner.filter.FilterEvent {
8066    method public int getDataLength();
8067    method public int getDownloadId();
8068    method public int getItemFragmentIndex();
8069    method public int getItemId();
8070    method public int getLastItemFragmentIndex();
8071    method @IntRange(from=0) public int getMpuSequenceNumber();
8072  }
8073
8074  public class DownloadSettings extends android.media.tv.tuner.filter.Settings {
8075    method @NonNull public static android.media.tv.tuner.filter.DownloadSettings.Builder builder(int);
8076    method public int getDownloadId();
8077    method public boolean useDownloadId();
8078  }
8079
8080  public static class DownloadSettings.Builder {
8081    method @NonNull public android.media.tv.tuner.filter.DownloadSettings build();
8082    method @NonNull public android.media.tv.tuner.filter.DownloadSettings.Builder setDownloadId(int);
8083    method @NonNull public android.media.tv.tuner.filter.DownloadSettings.Builder setUseDownloadId(boolean);
8084  }
8085
8086  public class Filter implements java.lang.AutoCloseable {
8087    method @Nullable public String acquireSharedFilterToken();
8088    method public void close();
8089    method public int configure(@NonNull android.media.tv.tuner.filter.FilterConfiguration);
8090    method public int delayCallbackForDurationMillis(long);
8091    method public int delayCallbackUntilBytesAccumulated(int);
8092    method public int flush();
8093    method public void freeSharedFilterToken(@NonNull String);
8094    method @Deprecated public int getId();
8095    method public long getIdLong();
8096    method public int read(@NonNull byte[], long, long);
8097    method public int setDataSource(@Nullable android.media.tv.tuner.filter.Filter);
8098    method public int setMonitorEventMask(int);
8099    method public int start();
8100    method public int stop();
8101    field public static final int MONITOR_EVENT_IP_CID_CHANGE = 2; // 0x2
8102    field public static final int MONITOR_EVENT_SCRAMBLING_STATUS = 1; // 0x1
8103    field public static final int SCRAMBLING_STATUS_NOT_SCRAMBLED = 2; // 0x2
8104    field public static final int SCRAMBLING_STATUS_SCRAMBLED = 4; // 0x4
8105    field public static final int SCRAMBLING_STATUS_UNKNOWN = 1; // 0x1
8106    field public static final int STATUS_DATA_READY = 1; // 0x1
8107    field public static final int STATUS_HIGH_WATER = 4; // 0x4
8108    field public static final int STATUS_LOW_WATER = 2; // 0x2
8109    field public static final int STATUS_NO_DATA = 16; // 0x10
8110    field public static final int STATUS_OVERFLOW = 8; // 0x8
8111    field public static final int SUBTYPE_AUDIO = 3; // 0x3
8112    field public static final int SUBTYPE_DOWNLOAD = 5; // 0x5
8113    field public static final int SUBTYPE_IP = 13; // 0xd
8114    field public static final int SUBTYPE_IP_PAYLOAD = 12; // 0xc
8115    field public static final int SUBTYPE_MMTP = 10; // 0xa
8116    field public static final int SUBTYPE_NTP = 11; // 0xb
8117    field public static final int SUBTYPE_PAYLOAD_THROUGH = 14; // 0xe
8118    field public static final int SUBTYPE_PCR = 8; // 0x8
8119    field public static final int SUBTYPE_PES = 2; // 0x2
8120    field public static final int SUBTYPE_PTP = 16; // 0x10
8121    field public static final int SUBTYPE_RECORD = 6; // 0x6
8122    field public static final int SUBTYPE_SECTION = 1; // 0x1
8123    field public static final int SUBTYPE_TEMI = 9; // 0x9
8124    field public static final int SUBTYPE_TLV = 15; // 0xf
8125    field public static final int SUBTYPE_TS = 7; // 0x7
8126    field public static final int SUBTYPE_UNDEFINED = 0; // 0x0
8127    field public static final int SUBTYPE_VIDEO = 4; // 0x4
8128    field public static final int TYPE_ALP = 16; // 0x10
8129    field public static final int TYPE_IP = 4; // 0x4
8130    field public static final int TYPE_MMTP = 2; // 0x2
8131    field public static final int TYPE_TLV = 8; // 0x8
8132    field public static final int TYPE_TS = 1; // 0x1
8133    field public static final int TYPE_UNDEFINED = 0; // 0x0
8134  }
8135
8136  public interface FilterCallback {
8137    method public void onFilterEvent(@NonNull android.media.tv.tuner.filter.Filter, @NonNull android.media.tv.tuner.filter.FilterEvent[]);
8138    method public void onFilterStatusChanged(@NonNull android.media.tv.tuner.filter.Filter, int);
8139  }
8140
8141  public abstract class FilterConfiguration {
8142    method @Nullable public android.media.tv.tuner.filter.Settings getSettings();
8143    method public abstract int getType();
8144  }
8145
8146  public abstract class FilterEvent {
8147    ctor public FilterEvent();
8148  }
8149
8150  public final class IpCidChangeEvent extends android.media.tv.tuner.filter.FilterEvent {
8151    method public int getIpCid();
8152  }
8153
8154  public final class IpFilterConfiguration extends android.media.tv.tuner.filter.FilterConfiguration {
8155    method @NonNull public static android.media.tv.tuner.filter.IpFilterConfiguration.Builder builder();
8156    method @NonNull @Size(min=4, max=16) public byte[] getDstIpAddress();
8157    method public int getDstPort();
8158    method @IntRange(from=0, to=61439) public int getIpFilterContextId();
8159    method @NonNull @Size(min=4, max=16) public byte[] getSrcIpAddress();
8160    method public int getSrcPort();
8161    method public int getType();
8162    method public boolean isPassthrough();
8163    field public static final int INVALID_IP_FILTER_CONTEXT_ID = -1; // 0xffffffff
8164  }
8165
8166  public static final class IpFilterConfiguration.Builder {
8167    method @NonNull public android.media.tv.tuner.filter.IpFilterConfiguration build();
8168    method @NonNull public android.media.tv.tuner.filter.IpFilterConfiguration.Builder setDstIpAddress(@NonNull byte[]);
8169    method @NonNull public android.media.tv.tuner.filter.IpFilterConfiguration.Builder setDstPort(int);
8170    method @NonNull public android.media.tv.tuner.filter.IpFilterConfiguration.Builder setIpFilterContextId(int);
8171    method @NonNull public android.media.tv.tuner.filter.IpFilterConfiguration.Builder setPassthrough(boolean);
8172    method @NonNull public android.media.tv.tuner.filter.IpFilterConfiguration.Builder setSettings(@Nullable android.media.tv.tuner.filter.Settings);
8173    method @NonNull public android.media.tv.tuner.filter.IpFilterConfiguration.Builder setSrcIpAddress(@NonNull byte[]);
8174    method @NonNull public android.media.tv.tuner.filter.IpFilterConfiguration.Builder setSrcPort(int);
8175  }
8176
8177  public class IpPayloadEvent extends android.media.tv.tuner.filter.FilterEvent {
8178    method public int getDataLength();
8179  }
8180
8181  public class MediaEvent extends android.media.tv.tuner.filter.FilterEvent {
8182    method public long getAudioHandle();
8183    method @NonNull public java.util.List<android.media.AudioPresentation> getAudioPresentations();
8184    method public long getAvDataId();
8185    method public long getDataLength();
8186    method public long getDts();
8187    method @Nullable public android.media.tv.tuner.filter.AudioDescriptor getExtraMetaData();
8188    method @Nullable public android.media.MediaCodec.LinearBlock getLinearBlock();
8189    method @IntRange(from=0) public int getMpuSequenceNumber();
8190    method public long getOffset();
8191    method public long getPts();
8192    method public int getScIndexMask();
8193    method public int getStreamId();
8194    method public boolean isDtsPresent();
8195    method public boolean isPrivateData();
8196    method public boolean isPtsPresent();
8197    method public boolean isSecureMemory();
8198    method public void release();
8199  }
8200
8201  public final class MmtpFilterConfiguration extends android.media.tv.tuner.filter.FilterConfiguration {
8202    method @NonNull public static android.media.tv.tuner.filter.MmtpFilterConfiguration.Builder builder();
8203    method public int getMmtpPacketId();
8204    method public int getType();
8205  }
8206
8207  public static final class MmtpFilterConfiguration.Builder {
8208    method @NonNull public android.media.tv.tuner.filter.MmtpFilterConfiguration build();
8209    method @NonNull public android.media.tv.tuner.filter.MmtpFilterConfiguration.Builder setMmtpPacketId(int);
8210    method @NonNull public android.media.tv.tuner.filter.MmtpFilterConfiguration.Builder setSettings(@Nullable android.media.tv.tuner.filter.Settings);
8211  }
8212
8213  public class MmtpRecordEvent extends android.media.tv.tuner.filter.FilterEvent {
8214    method public long getDataLength();
8215    method public int getFirstMacroblockInSlice();
8216    method @IntRange(from=0) public int getMpuSequenceNumber();
8217    method public long getPts();
8218    method public int getScHevcIndexMask();
8219    method public int getTsIndexMask();
8220  }
8221
8222  public class PesEvent extends android.media.tv.tuner.filter.FilterEvent {
8223    method public int getDataLength();
8224    method @IntRange(from=0) public int getMpuSequenceNumber();
8225    method public int getStreamId();
8226  }
8227
8228  public class PesSettings extends android.media.tv.tuner.filter.Settings {
8229    method @NonNull public static android.media.tv.tuner.filter.PesSettings.Builder builder(int);
8230    method public int getStreamId();
8231    method public boolean isRaw();
8232  }
8233
8234  public static class PesSettings.Builder {
8235    method @NonNull public android.media.tv.tuner.filter.PesSettings build();
8236    method @NonNull public android.media.tv.tuner.filter.PesSettings.Builder setRaw(boolean);
8237    method @NonNull public android.media.tv.tuner.filter.PesSettings.Builder setStreamId(int);
8238  }
8239
8240  public class RecordSettings extends android.media.tv.tuner.filter.Settings {
8241    method @NonNull public static android.media.tv.tuner.filter.RecordSettings.Builder builder(int);
8242    method public int getScIndexMask();
8243    method public int getScIndexType();
8244    method public int getTsIndexMask();
8245    field public static final int INDEX_TYPE_NONE = 0; // 0x0
8246    field public static final int INDEX_TYPE_SC = 1; // 0x1
8247    field public static final int INDEX_TYPE_SC_AVC = 3; // 0x3
8248    field public static final int INDEX_TYPE_SC_HEVC = 2; // 0x2
8249    field public static final int INDEX_TYPE_SC_VVC = 4; // 0x4
8250    field public static final int MPT_INDEX_AUDIO = 262144; // 0x40000
8251    field public static final int MPT_INDEX_MPT = 65536; // 0x10000
8252    field public static final int MPT_INDEX_TIMESTAMP_TARGET_AUDIO = 1048576; // 0x100000
8253    field public static final int MPT_INDEX_TIMESTAMP_TARGET_VIDEO = 524288; // 0x80000
8254    field public static final int MPT_INDEX_VIDEO = 131072; // 0x20000
8255    field public static final int SC_HEVC_INDEX_AUD = 2; // 0x2
8256    field public static final int SC_HEVC_INDEX_SLICE_BLA_N_LP = 16; // 0x10
8257    field public static final int SC_HEVC_INDEX_SLICE_BLA_W_RADL = 8; // 0x8
8258    field public static final int SC_HEVC_INDEX_SLICE_CE_BLA_W_LP = 4; // 0x4
8259    field public static final int SC_HEVC_INDEX_SLICE_IDR_N_LP = 64; // 0x40
8260    field public static final int SC_HEVC_INDEX_SLICE_IDR_W_RADL = 32; // 0x20
8261    field public static final int SC_HEVC_INDEX_SLICE_TRAIL_CRA = 128; // 0x80
8262    field public static final int SC_HEVC_INDEX_SPS = 1; // 0x1
8263    field public static final int SC_INDEX_B_FRAME = 4; // 0x4
8264    field public static final int SC_INDEX_B_SLICE = 64; // 0x40
8265    field public static final int SC_INDEX_I_FRAME = 1; // 0x1
8266    field public static final int SC_INDEX_I_SLICE = 16; // 0x10
8267    field public static final int SC_INDEX_P_FRAME = 2; // 0x2
8268    field public static final int SC_INDEX_P_SLICE = 32; // 0x20
8269    field public static final int SC_INDEX_SEQUENCE = 8; // 0x8
8270    field public static final int SC_INDEX_SI_SLICE = 128; // 0x80
8271    field public static final int SC_INDEX_SP_SLICE = 256; // 0x100
8272    field public static final int SC_VVC_INDEX_AUD = 64; // 0x40
8273    field public static final int SC_VVC_INDEX_SLICE_CRA = 4; // 0x4
8274    field public static final int SC_VVC_INDEX_SLICE_GDR = 8; // 0x8
8275    field public static final int SC_VVC_INDEX_SLICE_IDR_N_LP = 2; // 0x2
8276    field public static final int SC_VVC_INDEX_SLICE_IDR_W_RADL = 1; // 0x1
8277    field public static final int SC_VVC_INDEX_SPS = 32; // 0x20
8278    field public static final int SC_VVC_INDEX_VPS = 16; // 0x10
8279    field public static final int TS_INDEX_ADAPTATION_EXTENSION_FLAG = 4096; // 0x1000
8280    field public static final int TS_INDEX_CHANGE_TO_EVEN_SCRAMBLED = 8; // 0x8
8281    field public static final int TS_INDEX_CHANGE_TO_NOT_SCRAMBLED = 4; // 0x4
8282    field public static final int TS_INDEX_CHANGE_TO_ODD_SCRAMBLED = 16; // 0x10
8283    field public static final int TS_INDEX_DISCONTINUITY_INDICATOR = 32; // 0x20
8284    field public static final int TS_INDEX_FIRST_PACKET = 1; // 0x1
8285    field public static final int TS_INDEX_INVALID = 0; // 0x0
8286    field public static final int TS_INDEX_OPCR_FLAG = 512; // 0x200
8287    field public static final int TS_INDEX_PAYLOAD_UNIT_START_INDICATOR = 2; // 0x2
8288    field public static final int TS_INDEX_PCR_FLAG = 256; // 0x100
8289    field public static final int TS_INDEX_PRIORITY_INDICATOR = 128; // 0x80
8290    field public static final int TS_INDEX_PRIVATE_DATA = 2048; // 0x800
8291    field public static final int TS_INDEX_RANDOM_ACCESS_INDICATOR = 64; // 0x40
8292    field public static final int TS_INDEX_SPLICING_POINT_FLAG = 1024; // 0x400
8293  }
8294
8295  public static class RecordSettings.Builder {
8296    method @NonNull public android.media.tv.tuner.filter.RecordSettings build();
8297    method @NonNull public android.media.tv.tuner.filter.RecordSettings.Builder setScIndexMask(int);
8298    method @NonNull public android.media.tv.tuner.filter.RecordSettings.Builder setScIndexType(int);
8299    method @NonNull public android.media.tv.tuner.filter.RecordSettings.Builder setTsIndexMask(int);
8300  }
8301
8302  public final class RestartEvent extends android.media.tv.tuner.filter.FilterEvent {
8303    method public int getStartId();
8304    field public static final int NEW_FILTER_FIRST_START_ID = 0; // 0x0
8305  }
8306
8307  public final class ScramblingStatusEvent extends android.media.tv.tuner.filter.FilterEvent {
8308    method public int getScramblingStatus();
8309  }
8310
8311  public class SectionEvent extends android.media.tv.tuner.filter.FilterEvent {
8312    method @Deprecated public int getDataLength();
8313    method public long getDataLengthLong();
8314    method public int getSectionNumber();
8315    method public int getTableId();
8316    method public int getVersion();
8317  }
8318
8319  public abstract class SectionSettings extends android.media.tv.tuner.filter.Settings {
8320    method public int getLengthFieldBitWidth();
8321    method public boolean isCrcEnabled();
8322    method public boolean isRaw();
8323    method public boolean isRepeat();
8324  }
8325
8326  public abstract static class SectionSettings.Builder<T extends android.media.tv.tuner.filter.SectionSettings.Builder<T>> {
8327    method @NonNull public T setBitWidthOfLengthField(@IntRange(from=0) int);
8328    method @NonNull public T setCrcEnabled(boolean);
8329    method @NonNull public T setRaw(boolean);
8330    method @NonNull public T setRepeat(boolean);
8331  }
8332
8333  public class SectionSettingsWithSectionBits extends android.media.tv.tuner.filter.SectionSettings {
8334    method @NonNull public static android.media.tv.tuner.filter.SectionSettingsWithSectionBits.Builder builder(int);
8335    method @NonNull public byte[] getFilterBytes();
8336    method @NonNull public byte[] getMask();
8337    method @NonNull public byte[] getMode();
8338  }
8339
8340  public static class SectionSettingsWithSectionBits.Builder extends android.media.tv.tuner.filter.SectionSettings.Builder<android.media.tv.tuner.filter.SectionSettingsWithSectionBits.Builder> {
8341    method @NonNull public android.media.tv.tuner.filter.SectionSettingsWithSectionBits build();
8342    method @NonNull public android.media.tv.tuner.filter.SectionSettingsWithSectionBits.Builder setFilter(@NonNull byte[]);
8343    method @NonNull public android.media.tv.tuner.filter.SectionSettingsWithSectionBits.Builder setMask(@NonNull byte[]);
8344    method @NonNull public android.media.tv.tuner.filter.SectionSettingsWithSectionBits.Builder setMode(@NonNull byte[]);
8345  }
8346
8347  public class SectionSettingsWithTableInfo extends android.media.tv.tuner.filter.SectionSettings {
8348    method @NonNull public static android.media.tv.tuner.filter.SectionSettingsWithTableInfo.Builder builder(int);
8349    method public int getTableId();
8350    method public int getVersion();
8351    field public static final int INVALID_TABLE_INFO_VERSION = -1; // 0xffffffff
8352  }
8353
8354  public static class SectionSettingsWithTableInfo.Builder extends android.media.tv.tuner.filter.SectionSettings.Builder<android.media.tv.tuner.filter.SectionSettingsWithTableInfo.Builder> {
8355    method @NonNull public android.media.tv.tuner.filter.SectionSettingsWithTableInfo build();
8356    method @NonNull public android.media.tv.tuner.filter.SectionSettingsWithTableInfo.Builder setTableId(int);
8357    method @NonNull public android.media.tv.tuner.filter.SectionSettingsWithTableInfo.Builder setVersion(int);
8358  }
8359
8360  public abstract class Settings {
8361    method public int getType();
8362  }
8363
8364  public final class SharedFilter implements java.lang.AutoCloseable {
8365    method public void close();
8366    method public int flush();
8367    method public int read(@NonNull byte[], long, long);
8368    method public int start();
8369    method public int stop();
8370    field public static final int STATUS_INACCESSIBLE = 128; // 0x80
8371  }
8372
8373  public interface SharedFilterCallback {
8374    method public void onFilterEvent(@NonNull android.media.tv.tuner.filter.SharedFilter, @NonNull android.media.tv.tuner.filter.FilterEvent[]);
8375    method public void onFilterStatusChanged(@NonNull android.media.tv.tuner.filter.SharedFilter, int);
8376  }
8377
8378  public class TemiEvent extends android.media.tv.tuner.filter.FilterEvent {
8379    method @NonNull public byte[] getDescriptorData();
8380    method public byte getDescriptorTag();
8381    method public long getPts();
8382  }
8383
8384  public class TimeFilter implements java.lang.AutoCloseable {
8385    method public int clearTimestamp();
8386    method public void close();
8387    method public long getSourceTime();
8388    method public long getTimeStamp();
8389    method public int setCurrentTimestamp(long);
8390  }
8391
8392  public final class TlvFilterConfiguration extends android.media.tv.tuner.filter.FilterConfiguration {
8393    method @NonNull public static android.media.tv.tuner.filter.TlvFilterConfiguration.Builder builder();
8394    method public int getPacketType();
8395    method public int getType();
8396    method public boolean isCompressedIpPacket();
8397    method public boolean isPassthrough();
8398    field public static final int PACKET_TYPE_COMPRESSED = 3; // 0x3
8399    field public static final int PACKET_TYPE_IPV4 = 1; // 0x1
8400    field public static final int PACKET_TYPE_IPV6 = 2; // 0x2
8401    field public static final int PACKET_TYPE_NULL = 255; // 0xff
8402    field public static final int PACKET_TYPE_SIGNALING = 254; // 0xfe
8403  }
8404
8405  public static final class TlvFilterConfiguration.Builder {
8406    method @NonNull public android.media.tv.tuner.filter.TlvFilterConfiguration build();
8407    method @NonNull public android.media.tv.tuner.filter.TlvFilterConfiguration.Builder setCompressedIpPacket(boolean);
8408    method @NonNull public android.media.tv.tuner.filter.TlvFilterConfiguration.Builder setPacketType(int);
8409    method @NonNull public android.media.tv.tuner.filter.TlvFilterConfiguration.Builder setPassthrough(boolean);
8410    method @NonNull public android.media.tv.tuner.filter.TlvFilterConfiguration.Builder setSettings(@Nullable android.media.tv.tuner.filter.Settings);
8411  }
8412
8413  public final class TsFilterConfiguration extends android.media.tv.tuner.filter.FilterConfiguration {
8414    method @NonNull public static android.media.tv.tuner.filter.TsFilterConfiguration.Builder builder();
8415    method public int getTpid();
8416    method public int getType();
8417  }
8418
8419  public static final class TsFilterConfiguration.Builder {
8420    method @NonNull public android.media.tv.tuner.filter.TsFilterConfiguration build();
8421    method @NonNull public android.media.tv.tuner.filter.TsFilterConfiguration.Builder setSettings(@Nullable android.media.tv.tuner.filter.Settings);
8422    method @NonNull public android.media.tv.tuner.filter.TsFilterConfiguration.Builder setTpid(int);
8423  }
8424
8425  public class TsRecordEvent extends android.media.tv.tuner.filter.FilterEvent {
8426    method public long getDataLength();
8427    method public int getFirstMacroblockInSlice();
8428    method public int getPacketId();
8429    method public long getPts();
8430    method public int getScIndexMask();
8431    method public int getTsIndexMask();
8432  }
8433
8434}
8435
8436package android.media.tv.tuner.frontend {
8437
8438  public class AnalogFrontendCapabilities extends android.media.tv.tuner.frontend.FrontendCapabilities {
8439    method public int getSifStandardCapability();
8440    method public int getSignalTypeCapability();
8441  }
8442
8443  public class AnalogFrontendSettings extends android.media.tv.tuner.frontend.FrontendSettings {
8444    method @NonNull public static android.media.tv.tuner.frontend.AnalogFrontendSettings.Builder builder();
8445    method public int getAftFlag();
8446    method public int getSifStandard();
8447    method public int getSignalType();
8448    method public int getType();
8449    field public static final int AFT_FLAG_FALSE = 2; // 0x2
8450    field public static final int AFT_FLAG_TRUE = 1; // 0x1
8451    field public static final int AFT_FLAG_UNDEFINED = 0; // 0x0
8452    field public static final int SIF_AUTO = 1; // 0x1
8453    field public static final int SIF_BG = 2; // 0x2
8454    field public static final int SIF_BG_A2 = 4; // 0x4
8455    field public static final int SIF_BG_NICAM = 8; // 0x8
8456    field public static final int SIF_DK = 32; // 0x20
8457    field public static final int SIF_DK1_A2 = 64; // 0x40
8458    field public static final int SIF_DK2_A2 = 128; // 0x80
8459    field public static final int SIF_DK3_A2 = 256; // 0x100
8460    field public static final int SIF_DK_NICAM = 512; // 0x200
8461    field public static final int SIF_I = 16; // 0x10
8462    field public static final int SIF_I_NICAM = 32768; // 0x8000
8463    field public static final int SIF_L = 1024; // 0x400
8464    field public static final int SIF_L_NICAM = 65536; // 0x10000
8465    field public static final int SIF_L_PRIME = 131072; // 0x20000
8466    field public static final int SIF_M = 2048; // 0x800
8467    field public static final int SIF_M_A2 = 8192; // 0x2000
8468    field public static final int SIF_M_BTSC = 4096; // 0x1000
8469    field public static final int SIF_M_EIAJ = 16384; // 0x4000
8470    field public static final int SIF_UNDEFINED = 0; // 0x0
8471    field public static final int SIGNAL_TYPE_AUTO = 1; // 0x1
8472    field public static final int SIGNAL_TYPE_NTSC = 32; // 0x20
8473    field public static final int SIGNAL_TYPE_NTSC_443 = 64; // 0x40
8474    field public static final int SIGNAL_TYPE_PAL = 2; // 0x2
8475    field public static final int SIGNAL_TYPE_PAL_60 = 16; // 0x10
8476    field public static final int SIGNAL_TYPE_PAL_M = 4; // 0x4
8477    field public static final int SIGNAL_TYPE_PAL_N = 8; // 0x8
8478    field public static final int SIGNAL_TYPE_SECAM = 128; // 0x80
8479    field public static final int SIGNAL_TYPE_UNDEFINED = 0; // 0x0
8480  }
8481
8482  public static class AnalogFrontendSettings.Builder {
8483    method @NonNull public android.media.tv.tuner.frontend.AnalogFrontendSettings build();
8484    method @NonNull public android.media.tv.tuner.frontend.AnalogFrontendSettings.Builder setAftFlag(int);
8485    method @Deprecated @IntRange(from=1) @NonNull public android.media.tv.tuner.frontend.AnalogFrontendSettings.Builder setFrequency(int);
8486    method @IntRange(from=1) @NonNull public android.media.tv.tuner.frontend.AnalogFrontendSettings.Builder setFrequencyLong(long);
8487    method @NonNull public android.media.tv.tuner.frontend.AnalogFrontendSettings.Builder setSifStandard(int);
8488    method @NonNull public android.media.tv.tuner.frontend.AnalogFrontendSettings.Builder setSignalType(int);
8489  }
8490
8491  public class Atsc3FrontendCapabilities extends android.media.tv.tuner.frontend.FrontendCapabilities {
8492    method public int getBandwidthCapability();
8493    method public int getDemodOutputFormatCapability();
8494    method public int getFecCapability();
8495    method public int getModulationCapability();
8496    method public int getPlpCodeRateCapability();
8497    method public int getTimeInterleaveModeCapability();
8498  }
8499
8500  public class Atsc3FrontendSettings extends android.media.tv.tuner.frontend.FrontendSettings {
8501    method @NonNull public static android.media.tv.tuner.frontend.Atsc3FrontendSettings.Builder builder();
8502    method public int getBandwidth();
8503    method public int getDemodOutputFormat();
8504    method @NonNull public android.media.tv.tuner.frontend.Atsc3PlpSettings[] getPlpSettings();
8505    method public int getType();
8506    field public static final int BANDWIDTH_AUTO = 1; // 0x1
8507    field public static final int BANDWIDTH_BANDWIDTH_6MHZ = 2; // 0x2
8508    field public static final int BANDWIDTH_BANDWIDTH_7MHZ = 4; // 0x4
8509    field public static final int BANDWIDTH_BANDWIDTH_8MHZ = 8; // 0x8
8510    field public static final int BANDWIDTH_UNDEFINED = 0; // 0x0
8511    field public static final int CODERATE_10_15 = 512; // 0x200
8512    field public static final int CODERATE_11_15 = 1024; // 0x400
8513    field public static final int CODERATE_12_15 = 2048; // 0x800
8514    field public static final int CODERATE_13_15 = 4096; // 0x1000
8515    field public static final int CODERATE_2_15 = 2; // 0x2
8516    field public static final int CODERATE_3_15 = 4; // 0x4
8517    field public static final int CODERATE_4_15 = 8; // 0x8
8518    field public static final int CODERATE_5_15 = 16; // 0x10
8519    field public static final int CODERATE_6_15 = 32; // 0x20
8520    field public static final int CODERATE_7_15 = 64; // 0x40
8521    field public static final int CODERATE_8_15 = 128; // 0x80
8522    field public static final int CODERATE_9_15 = 256; // 0x100
8523    field public static final int CODERATE_AUTO = 1; // 0x1
8524    field public static final int CODERATE_UNDEFINED = 0; // 0x0
8525    field public static final int DEMOD_OUTPUT_FORMAT_ATSC3_LINKLAYER_PACKET = 1; // 0x1
8526    field public static final int DEMOD_OUTPUT_FORMAT_BASEBAND_PACKET = 2; // 0x2
8527    field public static final int DEMOD_OUTPUT_FORMAT_UNDEFINED = 0; // 0x0
8528    field public static final int FEC_AUTO = 1; // 0x1
8529    field public static final int FEC_BCH_LDPC_16K = 2; // 0x2
8530    field public static final int FEC_BCH_LDPC_64K = 4; // 0x4
8531    field public static final int FEC_CRC_LDPC_16K = 8; // 0x8
8532    field public static final int FEC_CRC_LDPC_64K = 16; // 0x10
8533    field public static final int FEC_LDPC_16K = 32; // 0x20
8534    field public static final int FEC_LDPC_64K = 64; // 0x40
8535    field public static final int FEC_UNDEFINED = 0; // 0x0
8536    field public static final int MODULATION_AUTO = 1; // 0x1
8537    field public static final int MODULATION_MOD_1024QAM = 32; // 0x20
8538    field public static final int MODULATION_MOD_16QAM = 4; // 0x4
8539    field public static final int MODULATION_MOD_256QAM = 16; // 0x10
8540    field public static final int MODULATION_MOD_4096QAM = 64; // 0x40
8541    field public static final int MODULATION_MOD_64QAM = 8; // 0x8
8542    field public static final int MODULATION_MOD_QPSK = 2; // 0x2
8543    field public static final int MODULATION_UNDEFINED = 0; // 0x0
8544    field public static final int TIME_INTERLEAVE_MODE_AUTO = 1; // 0x1
8545    field public static final int TIME_INTERLEAVE_MODE_CTI = 2; // 0x2
8546    field public static final int TIME_INTERLEAVE_MODE_HTI = 4; // 0x4
8547    field public static final int TIME_INTERLEAVE_MODE_UNDEFINED = 0; // 0x0
8548  }
8549
8550  public static class Atsc3FrontendSettings.Builder {
8551    method @NonNull public android.media.tv.tuner.frontend.Atsc3FrontendSettings build();
8552    method @NonNull public android.media.tv.tuner.frontend.Atsc3FrontendSettings.Builder setBandwidth(int);
8553    method @NonNull public android.media.tv.tuner.frontend.Atsc3FrontendSettings.Builder setDemodOutputFormat(int);
8554    method @Deprecated @IntRange(from=1) @NonNull public android.media.tv.tuner.frontend.Atsc3FrontendSettings.Builder setFrequency(int);
8555    method @IntRange(from=1) @NonNull public android.media.tv.tuner.frontend.Atsc3FrontendSettings.Builder setFrequencyLong(long);
8556    method @NonNull public android.media.tv.tuner.frontend.Atsc3FrontendSettings.Builder setPlpSettings(@NonNull android.media.tv.tuner.frontend.Atsc3PlpSettings[]);
8557  }
8558
8559  public class Atsc3PlpInfo {
8560    method public boolean getLlsFlag();
8561    method public int getPlpId();
8562  }
8563
8564  public class Atsc3PlpSettings {
8565    method @NonNull public static android.media.tv.tuner.frontend.Atsc3PlpSettings.Builder builder();
8566    method public int getCodeRate();
8567    method public int getFec();
8568    method public int getInterleaveMode();
8569    method public int getModulation();
8570    method public int getPlpId();
8571  }
8572
8573  public static class Atsc3PlpSettings.Builder {
8574    method @NonNull public android.media.tv.tuner.frontend.Atsc3PlpSettings build();
8575    method @NonNull public android.media.tv.tuner.frontend.Atsc3PlpSettings.Builder setCodeRate(int);
8576    method @NonNull public android.media.tv.tuner.frontend.Atsc3PlpSettings.Builder setFec(int);
8577    method @NonNull public android.media.tv.tuner.frontend.Atsc3PlpSettings.Builder setInterleaveMode(int);
8578    method @NonNull public android.media.tv.tuner.frontend.Atsc3PlpSettings.Builder setModulation(int);
8579    method @NonNull public android.media.tv.tuner.frontend.Atsc3PlpSettings.Builder setPlpId(int);
8580  }
8581
8582  public class AtscFrontendCapabilities extends android.media.tv.tuner.frontend.FrontendCapabilities {
8583    method public int getModulationCapability();
8584  }
8585
8586  public class AtscFrontendSettings extends android.media.tv.tuner.frontend.FrontendSettings {
8587    method @NonNull public static android.media.tv.tuner.frontend.AtscFrontendSettings.Builder builder();
8588    method public int getModulation();
8589    method public int getType();
8590    field public static final int MODULATION_AUTO = 1; // 0x1
8591    field public static final int MODULATION_MOD_16VSB = 8; // 0x8
8592    field public static final int MODULATION_MOD_8VSB = 4; // 0x4
8593    field public static final int MODULATION_UNDEFINED = 0; // 0x0
8594  }
8595
8596  public static class AtscFrontendSettings.Builder {
8597    method @NonNull public android.media.tv.tuner.frontend.AtscFrontendSettings build();
8598    method @Deprecated @IntRange(from=1) @NonNull public android.media.tv.tuner.frontend.AtscFrontendSettings.Builder setFrequency(int);
8599    method @IntRange(from=1) @NonNull public android.media.tv.tuner.frontend.AtscFrontendSettings.Builder setFrequencyLong(long);
8600    method @NonNull public android.media.tv.tuner.frontend.AtscFrontendSettings.Builder setModulation(int);
8601  }
8602
8603  public final class DtmbFrontendCapabilities extends android.media.tv.tuner.frontend.FrontendCapabilities {
8604    method public int getBandwidthCapability();
8605    method public int getCodeRateCapability();
8606    method public int getGuardIntervalCapability();
8607    method public int getModulationCapability();
8608    method public int getTimeInterleaveModeCapability();
8609    method public int getTransmissionModeCapability();
8610  }
8611
8612  public final class DtmbFrontendSettings extends android.media.tv.tuner.frontend.FrontendSettings {
8613    method @NonNull public static android.media.tv.tuner.frontend.DtmbFrontendSettings.Builder builder();
8614    method public int getBandwidth();
8615    method public int getCodeRate();
8616    method public int getGuardInterval();
8617    method public int getModulation();
8618    method public int getTimeInterleaveMode();
8619    method public int getTransmissionMode();
8620    method public int getType();
8621    field public static final int BANDWIDTH_6MHZ = 4; // 0x4
8622    field public static final int BANDWIDTH_8MHZ = 2; // 0x2
8623    field public static final int BANDWIDTH_AUTO = 1; // 0x1
8624    field public static final int BANDWIDTH_UNDEFINED = 0; // 0x0
8625    field public static final int CODERATE_2_5 = 2; // 0x2
8626    field public static final int CODERATE_3_5 = 4; // 0x4
8627    field public static final int CODERATE_4_5 = 8; // 0x8
8628    field public static final int CODERATE_AUTO = 1; // 0x1
8629    field public static final int CODERATE_UNDEFINED = 0; // 0x0
8630    field public static final int GUARD_INTERVAL_AUTO = 1; // 0x1
8631    field public static final int GUARD_INTERVAL_PN_420_CONST = 16; // 0x10
8632    field public static final int GUARD_INTERVAL_PN_420_VARIOUS = 2; // 0x2
8633    field public static final int GUARD_INTERVAL_PN_595_CONST = 4; // 0x4
8634    field public static final int GUARD_INTERVAL_PN_945_CONST = 32; // 0x20
8635    field public static final int GUARD_INTERVAL_PN_945_VARIOUS = 8; // 0x8
8636    field public static final int GUARD_INTERVAL_PN_RESERVED = 64; // 0x40
8637    field public static final int GUARD_INTERVAL_UNDEFINED = 0; // 0x0
8638    field public static final int MODULATION_CONSTELLATION_16QAM = 8; // 0x8
8639    field public static final int MODULATION_CONSTELLATION_32QAM = 16; // 0x10
8640    field public static final int MODULATION_CONSTELLATION_4QAM = 2; // 0x2
8641    field public static final int MODULATION_CONSTELLATION_4QAM_NR = 4; // 0x4
8642    field public static final int MODULATION_CONSTELLATION_64QAM = 32; // 0x20
8643    field public static final int MODULATION_CONSTELLATION_AUTO = 1; // 0x1
8644    field public static final int MODULATION_CONSTELLATION_UNDEFINED = 0; // 0x0
8645    field public static final int TIME_INTERLEAVE_MODE_AUTO = 1; // 0x1
8646    field public static final int TIME_INTERLEAVE_MODE_TIMER_INT_240 = 2; // 0x2
8647    field public static final int TIME_INTERLEAVE_MODE_TIMER_INT_720 = 4; // 0x4
8648    field public static final int TIME_INTERLEAVE_MODE_UNDEFINED = 0; // 0x0
8649    field public static final int TRANSMISSION_MODE_AUTO = 1; // 0x1
8650    field public static final int TRANSMISSION_MODE_C1 = 2; // 0x2
8651    field public static final int TRANSMISSION_MODE_C3780 = 4; // 0x4
8652    field public static final int TRANSMISSION_MODE_UNDEFINED = 0; // 0x0
8653  }
8654
8655  public static final class DtmbFrontendSettings.Builder {
8656    method @NonNull public android.media.tv.tuner.frontend.DtmbFrontendSettings build();
8657    method @NonNull public android.media.tv.tuner.frontend.DtmbFrontendSettings.Builder setBandwidth(int);
8658    method @NonNull public android.media.tv.tuner.frontend.DtmbFrontendSettings.Builder setCodeRate(int);
8659    method @Deprecated @IntRange(from=1) @NonNull public android.media.tv.tuner.frontend.DtmbFrontendSettings.Builder setFrequency(int);
8660    method @IntRange(from=1) @NonNull public android.media.tv.tuner.frontend.DtmbFrontendSettings.Builder setFrequencyLong(long);
8661    method @NonNull public android.media.tv.tuner.frontend.DtmbFrontendSettings.Builder setGuardInterval(int);
8662    method @NonNull public android.media.tv.tuner.frontend.DtmbFrontendSettings.Builder setModulation(int);
8663    method @NonNull public android.media.tv.tuner.frontend.DtmbFrontendSettings.Builder setTimeInterleaveMode(int);
8664    method @NonNull public android.media.tv.tuner.frontend.DtmbFrontendSettings.Builder setTransmissionMode(int);
8665  }
8666
8667  public class DvbcFrontendCapabilities extends android.media.tv.tuner.frontend.FrontendCapabilities {
8668    method public int getAnnexCapability();
8669    method public long getCodeRateCapability();
8670    method @Deprecated public int getFecCapability();
8671    method public int getModulationCapability();
8672  }
8673
8674  public class DvbcFrontendSettings extends android.media.tv.tuner.frontend.FrontendSettings {
8675    method @NonNull public static android.media.tv.tuner.frontend.DvbcFrontendSettings.Builder builder();
8676    method public int getAnnex();
8677    method public int getBandwidth();
8678    method public long getInnerFec();
8679    method public int getModulation();
8680    method public int getOuterFec();
8681    method public int getSpectralInversion();
8682    method public int getSymbolRate();
8683    method public int getTimeInterleaveMode();
8684    method public int getType();
8685    field public static final int ANNEX_A = 1; // 0x1
8686    field public static final int ANNEX_B = 2; // 0x2
8687    field public static final int ANNEX_C = 4; // 0x4
8688    field public static final int ANNEX_UNDEFINED = 0; // 0x0
8689    field public static final int BANDWIDTH_5MHZ = 1; // 0x1
8690    field public static final int BANDWIDTH_6MHZ = 2; // 0x2
8691    field public static final int BANDWIDTH_7MHZ = 4; // 0x4
8692    field public static final int BANDWIDTH_8MHZ = 8; // 0x8
8693    field public static final int BANDWIDTH_UNDEFINED = 0; // 0x0
8694    field public static final int MODULATION_AUTO = 1; // 0x1
8695    field public static final int MODULATION_MOD_128QAM = 16; // 0x10
8696    field public static final int MODULATION_MOD_16QAM = 2; // 0x2
8697    field public static final int MODULATION_MOD_256QAM = 32; // 0x20
8698    field public static final int MODULATION_MOD_32QAM = 4; // 0x4
8699    field public static final int MODULATION_MOD_64QAM = 8; // 0x8
8700    field public static final int MODULATION_UNDEFINED = 0; // 0x0
8701    field public static final int OUTER_FEC_OUTER_FEC_NONE = 1; // 0x1
8702    field public static final int OUTER_FEC_OUTER_FEC_RS = 2; // 0x2
8703    field public static final int OUTER_FEC_UNDEFINED = 0; // 0x0
8704    field @Deprecated public static final int SPECTRAL_INVERSION_INVERTED = 2; // 0x2
8705    field @Deprecated public static final int SPECTRAL_INVERSION_NORMAL = 1; // 0x1
8706    field @Deprecated public static final int SPECTRAL_INVERSION_UNDEFINED = 0; // 0x0
8707    field public static final int TIME_INTERLEAVE_MODE_128_1_0 = 2; // 0x2
8708    field public static final int TIME_INTERLEAVE_MODE_128_1_1 = 4; // 0x4
8709    field public static final int TIME_INTERLEAVE_MODE_128_2 = 128; // 0x80
8710    field public static final int TIME_INTERLEAVE_MODE_128_3 = 256; // 0x100
8711    field public static final int TIME_INTERLEAVE_MODE_128_4 = 512; // 0x200
8712    field public static final int TIME_INTERLEAVE_MODE_16_8 = 32; // 0x20
8713    field public static final int TIME_INTERLEAVE_MODE_32_4 = 16; // 0x10
8714    field public static final int TIME_INTERLEAVE_MODE_64_2 = 8; // 0x8
8715    field public static final int TIME_INTERLEAVE_MODE_8_16 = 64; // 0x40
8716    field public static final int TIME_INTERLEAVE_MODE_AUTO = 1; // 0x1
8717    field public static final int TIME_INTERLEAVE_MODE_UNDEFINED = 0; // 0x0
8718  }
8719
8720  public static class DvbcFrontendSettings.Builder {
8721    method @NonNull public android.media.tv.tuner.frontend.DvbcFrontendSettings build();
8722    method @NonNull public android.media.tv.tuner.frontend.DvbcFrontendSettings.Builder setAnnex(int);
8723    method @NonNull public android.media.tv.tuner.frontend.DvbcFrontendSettings.Builder setBandwidth(int);
8724    method @Deprecated @IntRange(from=1) @NonNull public android.media.tv.tuner.frontend.DvbcFrontendSettings.Builder setFrequency(int);
8725    method @IntRange(from=1) @NonNull public android.media.tv.tuner.frontend.DvbcFrontendSettings.Builder setFrequencyLong(long);
8726    method @NonNull public android.media.tv.tuner.frontend.DvbcFrontendSettings.Builder setInnerFec(long);
8727    method @NonNull public android.media.tv.tuner.frontend.DvbcFrontendSettings.Builder setModulation(int);
8728    method @NonNull public android.media.tv.tuner.frontend.DvbcFrontendSettings.Builder setOuterFec(int);
8729    method @NonNull public android.media.tv.tuner.frontend.DvbcFrontendSettings.Builder setSpectralInversion(int);
8730    method @NonNull public android.media.tv.tuner.frontend.DvbcFrontendSettings.Builder setSymbolRate(int);
8731    method @NonNull public android.media.tv.tuner.frontend.DvbcFrontendSettings.Builder setTimeInterleaveMode(int);
8732  }
8733
8734  public class DvbsCodeRate {
8735    method @NonNull public static android.media.tv.tuner.frontend.DvbsCodeRate.Builder builder();
8736    method public int getBitsPer1000Symbol();
8737    method public long getInnerFec();
8738    method public boolean isLinear();
8739    method public boolean isShortFrameEnabled();
8740  }
8741
8742  public static class DvbsCodeRate.Builder {
8743    method @NonNull public android.media.tv.tuner.frontend.DvbsCodeRate build();
8744    method @NonNull public android.media.tv.tuner.frontend.DvbsCodeRate.Builder setBitsPer1000Symbol(int);
8745    method @NonNull public android.media.tv.tuner.frontend.DvbsCodeRate.Builder setInnerFec(long);
8746    method @NonNull public android.media.tv.tuner.frontend.DvbsCodeRate.Builder setLinear(boolean);
8747    method @NonNull public android.media.tv.tuner.frontend.DvbsCodeRate.Builder setShortFrameEnabled(boolean);
8748  }
8749
8750  public class DvbsFrontendCapabilities extends android.media.tv.tuner.frontend.FrontendCapabilities {
8751    method public long getInnerFecCapability();
8752    method public int getModulationCapability();
8753    method public int getStandardCapability();
8754  }
8755
8756  public class DvbsFrontendSettings extends android.media.tv.tuner.frontend.FrontendSettings {
8757    method @NonNull public static android.media.tv.tuner.frontend.DvbsFrontendSettings.Builder builder();
8758    method public boolean canHandleDiseqcRxMessage();
8759    method @Nullable public android.media.tv.tuner.frontend.DvbsCodeRate getCodeRate();
8760    method public int getInputStreamId();
8761    method public int getModulation();
8762    method public int getPilot();
8763    method public int getRolloff();
8764    method public int getScanType();
8765    method public int getStandard();
8766    method public int getSymbolRate();
8767    method public int getType();
8768    method public int getVcmMode();
8769    field public static final int MODULATION_AUTO = 1; // 0x1
8770    field public static final int MODULATION_MOD_128APSK = 2048; // 0x800
8771    field public static final int MODULATION_MOD_16APSK = 256; // 0x100
8772    field public static final int MODULATION_MOD_16PSK = 16; // 0x10
8773    field public static final int MODULATION_MOD_16QAM = 8; // 0x8
8774    field public static final int MODULATION_MOD_256APSK = 4096; // 0x1000
8775    field public static final int MODULATION_MOD_32APSK = 512; // 0x200
8776    field public static final int MODULATION_MOD_32PSK = 32; // 0x20
8777    field public static final int MODULATION_MOD_64APSK = 1024; // 0x400
8778    field public static final int MODULATION_MOD_8APSK = 128; // 0x80
8779    field public static final int MODULATION_MOD_8PSK = 4; // 0x4
8780    field public static final int MODULATION_MOD_ACM = 64; // 0x40
8781    field public static final int MODULATION_MOD_QPSK = 2; // 0x2
8782    field public static final int MODULATION_MOD_RESERVED = 8192; // 0x2000
8783    field public static final int MODULATION_UNDEFINED = 0; // 0x0
8784    field public static final int PILOT_AUTO = 3; // 0x3
8785    field public static final int PILOT_OFF = 2; // 0x2
8786    field public static final int PILOT_ON = 1; // 0x1
8787    field public static final int PILOT_UNDEFINED = 0; // 0x0
8788    field public static final int ROLLOFF_0_10 = 5; // 0x5
8789    field public static final int ROLLOFF_0_15 = 4; // 0x4
8790    field public static final int ROLLOFF_0_20 = 3; // 0x3
8791    field public static final int ROLLOFF_0_25 = 2; // 0x2
8792    field public static final int ROLLOFF_0_35 = 1; // 0x1
8793    field public static final int ROLLOFF_0_5 = 6; // 0x6
8794    field public static final int ROLLOFF_UNDEFINED = 0; // 0x0
8795    field public static final int SCAN_TYPE_DIRECT = 1; // 0x1
8796    field public static final int SCAN_TYPE_DISEQC = 2; // 0x2
8797    field public static final int SCAN_TYPE_JESS = 4; // 0x4
8798    field public static final int SCAN_TYPE_UNDEFINED = 0; // 0x0
8799    field public static final int SCAN_TYPE_UNICABLE = 3; // 0x3
8800    field public static final int STANDARD_AUTO = 1; // 0x1
8801    field public static final int STANDARD_S = 2; // 0x2
8802    field public static final int STANDARD_S2 = 4; // 0x4
8803    field public static final int STANDARD_S2X = 8; // 0x8
8804    field public static final int VCM_MODE_AUTO = 1; // 0x1
8805    field public static final int VCM_MODE_MANUAL = 2; // 0x2
8806    field public static final int VCM_MODE_UNDEFINED = 0; // 0x0
8807  }
8808
8809  public static class DvbsFrontendSettings.Builder {
8810    method @NonNull public android.media.tv.tuner.frontend.DvbsFrontendSettings build();
8811    method @NonNull public android.media.tv.tuner.frontend.DvbsFrontendSettings.Builder setCanHandleDiseqcRxMessage(boolean);
8812    method @NonNull public android.media.tv.tuner.frontend.DvbsFrontendSettings.Builder setCodeRate(@Nullable android.media.tv.tuner.frontend.DvbsCodeRate);
8813    method @Deprecated @IntRange(from=1) @NonNull public android.media.tv.tuner.frontend.DvbsFrontendSettings.Builder setFrequency(int);
8814    method @IntRange(from=1) @NonNull public android.media.tv.tuner.frontend.DvbsFrontendSettings.Builder setFrequencyLong(long);
8815    method @NonNull public android.media.tv.tuner.frontend.DvbsFrontendSettings.Builder setInputStreamId(int);
8816    method @NonNull public android.media.tv.tuner.frontend.DvbsFrontendSettings.Builder setModulation(int);
8817    method @NonNull public android.media.tv.tuner.frontend.DvbsFrontendSettings.Builder setPilot(int);
8818    method @NonNull public android.media.tv.tuner.frontend.DvbsFrontendSettings.Builder setRolloff(int);
8819    method @NonNull public android.media.tv.tuner.frontend.DvbsFrontendSettings.Builder setScanType(int);
8820    method @NonNull public android.media.tv.tuner.frontend.DvbsFrontendSettings.Builder setStandard(int);
8821    method @NonNull public android.media.tv.tuner.frontend.DvbsFrontendSettings.Builder setSymbolRate(int);
8822    method @NonNull public android.media.tv.tuner.frontend.DvbsFrontendSettings.Builder setVcmMode(int);
8823  }
8824
8825  public class DvbtFrontendCapabilities extends android.media.tv.tuner.frontend.FrontendCapabilities {
8826    method public int getBandwidthCapability();
8827    method public int getCodeRateCapability();
8828    method public int getConstellationCapability();
8829    method public int getGuardIntervalCapability();
8830    method public int getHierarchyCapability();
8831    method public int getTransmissionModeCapability();
8832    method public boolean isMisoSupported();
8833    method public boolean isT2Supported();
8834  }
8835
8836  public class DvbtFrontendSettings extends android.media.tv.tuner.frontend.FrontendSettings {
8837    method @NonNull public static android.media.tv.tuner.frontend.DvbtFrontendSettings.Builder builder();
8838    method public int getBandwidth();
8839    method public int getConstellation();
8840    method public int getGuardInterval();
8841    method public int getHierarchy();
8842    method public int getHighPriorityCodeRate();
8843    method public int getLowPriorityCodeRate();
8844    method public int getPlpGroupId();
8845    method public int getPlpId();
8846    method public int getPlpMode();
8847    method public int getStandard();
8848    method public int getTransmissionMode();
8849    method public int getType();
8850    method public boolean isHighPriority();
8851    method public boolean isMiso();
8852    field public static final int BANDWIDTH_10MHZ = 64; // 0x40
8853    field public static final int BANDWIDTH_1_7MHZ = 32; // 0x20
8854    field public static final int BANDWIDTH_5MHZ = 16; // 0x10
8855    field public static final int BANDWIDTH_6MHZ = 8; // 0x8
8856    field public static final int BANDWIDTH_7MHZ = 4; // 0x4
8857    field public static final int BANDWIDTH_8MHZ = 2; // 0x2
8858    field public static final int BANDWIDTH_AUTO = 1; // 0x1
8859    field public static final int BANDWIDTH_UNDEFINED = 0; // 0x0
8860    field public static final int CODERATE_1_2 = 2; // 0x2
8861    field public static final int CODERATE_2_3 = 4; // 0x4
8862    field public static final int CODERATE_3_4 = 8; // 0x8
8863    field public static final int CODERATE_3_5 = 64; // 0x40
8864    field public static final int CODERATE_4_5 = 128; // 0x80
8865    field public static final int CODERATE_5_6 = 16; // 0x10
8866    field public static final int CODERATE_6_7 = 256; // 0x100
8867    field public static final int CODERATE_7_8 = 32; // 0x20
8868    field public static final int CODERATE_8_9 = 512; // 0x200
8869    field public static final int CODERATE_AUTO = 1; // 0x1
8870    field public static final int CODERATE_UNDEFINED = 0; // 0x0
8871    field public static final int CONSTELLATION_16QAM = 4; // 0x4
8872    field public static final int CONSTELLATION_16QAM_R = 64; // 0x40
8873    field public static final int CONSTELLATION_256QAM = 16; // 0x10
8874    field public static final int CONSTELLATION_256QAM_R = 256; // 0x100
8875    field public static final int CONSTELLATION_64QAM = 8; // 0x8
8876    field public static final int CONSTELLATION_64QAM_R = 128; // 0x80
8877    field public static final int CONSTELLATION_AUTO = 1; // 0x1
8878    field public static final int CONSTELLATION_QPSK = 2; // 0x2
8879    field public static final int CONSTELLATION_QPSK_R = 32; // 0x20
8880    field public static final int CONSTELLATION_UNDEFINED = 0; // 0x0
8881    field public static final int GUARD_INTERVAL_19_128 = 64; // 0x40
8882    field public static final int GUARD_INTERVAL_19_256 = 128; // 0x80
8883    field public static final int GUARD_INTERVAL_1_128 = 32; // 0x20
8884    field public static final int GUARD_INTERVAL_1_16 = 4; // 0x4
8885    field public static final int GUARD_INTERVAL_1_32 = 2; // 0x2
8886    field public static final int GUARD_INTERVAL_1_4 = 16; // 0x10
8887    field public static final int GUARD_INTERVAL_1_8 = 8; // 0x8
8888    field public static final int GUARD_INTERVAL_AUTO = 1; // 0x1
8889    field public static final int GUARD_INTERVAL_UNDEFINED = 0; // 0x0
8890    field public static final int HIERARCHY_1_INDEPTH = 64; // 0x40
8891    field public static final int HIERARCHY_1_NATIVE = 4; // 0x4
8892    field public static final int HIERARCHY_2_INDEPTH = 128; // 0x80
8893    field public static final int HIERARCHY_2_NATIVE = 8; // 0x8
8894    field public static final int HIERARCHY_4_INDEPTH = 256; // 0x100
8895    field public static final int HIERARCHY_4_NATIVE = 16; // 0x10
8896    field public static final int HIERARCHY_AUTO = 1; // 0x1
8897    field public static final int HIERARCHY_NON_INDEPTH = 32; // 0x20
8898    field public static final int HIERARCHY_NON_NATIVE = 2; // 0x2
8899    field public static final int HIERARCHY_UNDEFINED = 0; // 0x0
8900    field public static final int PLP_MODE_AUTO = 1; // 0x1
8901    field public static final int PLP_MODE_MANUAL = 2; // 0x2
8902    field public static final int PLP_MODE_UNDEFINED = 0; // 0x0
8903    field public static final int STANDARD_AUTO = 1; // 0x1
8904    field public static final int STANDARD_T = 2; // 0x2
8905    field public static final int STANDARD_T2 = 4; // 0x4
8906    field public static final int TRANSMISSION_MODE_16K = 32; // 0x20
8907    field public static final int TRANSMISSION_MODE_1K = 16; // 0x10
8908    field public static final int TRANSMISSION_MODE_2K = 2; // 0x2
8909    field public static final int TRANSMISSION_MODE_32K = 64; // 0x40
8910    field public static final int TRANSMISSION_MODE_4K = 8; // 0x8
8911    field public static final int TRANSMISSION_MODE_8K = 4; // 0x4
8912    field public static final int TRANSMISSION_MODE_AUTO = 1; // 0x1
8913    field public static final int TRANSMISSION_MODE_EXTENDED_16K = 256; // 0x100
8914    field public static final int TRANSMISSION_MODE_EXTENDED_32K = 512; // 0x200
8915    field public static final int TRANSMISSION_MODE_EXTENDED_8K = 128; // 0x80
8916    field public static final int TRANSMISSION_MODE_UNDEFINED = 0; // 0x0
8917  }
8918
8919  public static class DvbtFrontendSettings.Builder {
8920    method @NonNull public android.media.tv.tuner.frontend.DvbtFrontendSettings build();
8921    method @NonNull public android.media.tv.tuner.frontend.DvbtFrontendSettings.Builder setBandwidth(int);
8922    method @NonNull public android.media.tv.tuner.frontend.DvbtFrontendSettings.Builder setConstellation(int);
8923    method @Deprecated @IntRange(from=1) @NonNull public android.media.tv.tuner.frontend.DvbtFrontendSettings.Builder setFrequency(int);
8924    method @IntRange(from=1) @NonNull public android.media.tv.tuner.frontend.DvbtFrontendSettings.Builder setFrequencyLong(long);
8925    method @NonNull public android.media.tv.tuner.frontend.DvbtFrontendSettings.Builder setGuardInterval(int);
8926    method @NonNull public android.media.tv.tuner.frontend.DvbtFrontendSettings.Builder setHierarchy(int);
8927    method @NonNull public android.media.tv.tuner.frontend.DvbtFrontendSettings.Builder setHighPriority(boolean);
8928    method @NonNull public android.media.tv.tuner.frontend.DvbtFrontendSettings.Builder setHighPriorityCodeRate(int);
8929    method @NonNull public android.media.tv.tuner.frontend.DvbtFrontendSettings.Builder setLowPriorityCodeRate(int);
8930    method @NonNull public android.media.tv.tuner.frontend.DvbtFrontendSettings.Builder setMiso(boolean);
8931    method @NonNull public android.media.tv.tuner.frontend.DvbtFrontendSettings.Builder setPlpGroupId(int);
8932    method @NonNull public android.media.tv.tuner.frontend.DvbtFrontendSettings.Builder setPlpId(int);
8933    method @NonNull public android.media.tv.tuner.frontend.DvbtFrontendSettings.Builder setPlpMode(int);
8934    method @NonNull public android.media.tv.tuner.frontend.DvbtFrontendSettings.Builder setStandard(int);
8935    method @NonNull public android.media.tv.tuner.frontend.DvbtFrontendSettings.Builder setTransmissionMode(int);
8936  }
8937
8938  public abstract class FrontendCapabilities {
8939    ctor public FrontendCapabilities();
8940  }
8941
8942  public class FrontendInfo {
8943    method @Deprecated public int getAcquireRange();
8944    method public long getAcquireRangeLong();
8945    method public int getExclusiveGroupId();
8946    method @Deprecated @NonNull public android.util.Range<java.lang.Integer> getFrequencyRange();
8947    method @NonNull public android.util.Range<java.lang.Long> getFrequencyRangeLong();
8948    method @NonNull public android.media.tv.tuner.frontend.FrontendCapabilities getFrontendCapabilities();
8949    method public int getId();
8950    method @NonNull public int[] getStatusCapabilities();
8951    method @NonNull public android.util.Range<java.lang.Integer> getSymbolRateRange();
8952    method public int getType();
8953  }
8954
8955  public abstract class FrontendSettings {
8956    method @Deprecated @IntRange(from=1) public int getEndFrequency();
8957    method @IntRange(from=1) public long getEndFrequencyLong();
8958    method @Deprecated public int getFrequency();
8959    method public long getFrequencyLong();
8960    method public int getFrontendSpectralInversion();
8961    method public abstract int getType();
8962    method @Deprecated @IntRange(from=1) public void setEndFrequency(int);
8963    method @IntRange(from=1) public void setEndFrequencyLong(long);
8964    method public void setSpectralInversion(int);
8965    field public static final long FEC_11_15 = 4194304L; // 0x400000L
8966    field public static final long FEC_11_20 = 8388608L; // 0x800000L
8967    field public static final long FEC_11_45 = 16777216L; // 0x1000000L
8968    field public static final long FEC_13_18 = 33554432L; // 0x2000000L
8969    field public static final long FEC_13_45 = 67108864L; // 0x4000000L
8970    field public static final long FEC_14_45 = 134217728L; // 0x8000000L
8971    field public static final long FEC_1_2 = 2L; // 0x2L
8972    field public static final long FEC_1_3 = 4L; // 0x4L
8973    field public static final long FEC_1_4 = 8L; // 0x8L
8974    field public static final long FEC_1_5 = 16L; // 0x10L
8975    field public static final long FEC_23_36 = 268435456L; // 0x10000000L
8976    field public static final long FEC_25_36 = 536870912L; // 0x20000000L
8977    field public static final long FEC_26_45 = 1073741824L; // 0x40000000L
8978    field public static final long FEC_28_45 = 2147483648L; // 0x80000000L
8979    field public static final long FEC_29_45 = 4294967296L; // 0x100000000L
8980    field public static final long FEC_2_3 = 32L; // 0x20L
8981    field public static final long FEC_2_5 = 64L; // 0x40L
8982    field public static final long FEC_2_9 = 128L; // 0x80L
8983    field public static final long FEC_31_45 = 8589934592L; // 0x200000000L
8984    field public static final long FEC_32_45 = 17179869184L; // 0x400000000L
8985    field public static final long FEC_3_4 = 256L; // 0x100L
8986    field public static final long FEC_3_5 = 512L; // 0x200L
8987    field public static final long FEC_4_15 = 2048L; // 0x800L
8988    field public static final long FEC_4_5 = 1024L; // 0x400L
8989    field public static final long FEC_5_6 = 4096L; // 0x1000L
8990    field public static final long FEC_5_9 = 8192L; // 0x2000L
8991    field public static final long FEC_6_7 = 16384L; // 0x4000L
8992    field public static final long FEC_77_90 = 34359738368L; // 0x800000000L
8993    field public static final long FEC_7_15 = 131072L; // 0x20000L
8994    field public static final long FEC_7_8 = 32768L; // 0x8000L
8995    field public static final long FEC_7_9 = 65536L; // 0x10000L
8996    field public static final long FEC_8_15 = 524288L; // 0x80000L
8997    field public static final long FEC_8_9 = 262144L; // 0x40000L
8998    field public static final long FEC_9_10 = 1048576L; // 0x100000L
8999    field public static final long FEC_9_20 = 2097152L; // 0x200000L
9000    field public static final long FEC_AUTO = 1L; // 0x1L
9001    field public static final long FEC_UNDEFINED = 0L; // 0x0L
9002    field public static final int FRONTEND_SPECTRAL_INVERSION_INVERTED = 2; // 0x2
9003    field public static final int FRONTEND_SPECTRAL_INVERSION_NORMAL = 1; // 0x1
9004    field public static final int FRONTEND_SPECTRAL_INVERSION_UNDEFINED = 0; // 0x0
9005    field public static final int TYPE_ANALOG = 1; // 0x1
9006    field public static final int TYPE_ATSC = 2; // 0x2
9007    field public static final int TYPE_ATSC3 = 3; // 0x3
9008    field public static final int TYPE_DTMB = 10; // 0xa
9009    field public static final int TYPE_DVBC = 4; // 0x4
9010    field public static final int TYPE_DVBS = 5; // 0x5
9011    field public static final int TYPE_DVBT = 6; // 0x6
9012    field public static final int TYPE_IPTV = 11; // 0xb
9013    field public static final int TYPE_ISDBS = 7; // 0x7
9014    field public static final int TYPE_ISDBS3 = 8; // 0x8
9015    field public static final int TYPE_ISDBT = 9; // 0x9
9016    field public static final int TYPE_UNDEFINED = 0; // 0x0
9017  }
9018
9019  public class FrontendStatus {
9020    method public int getAgc();
9021    method @NonNull public java.util.List<android.media.tv.tuner.frontend.Atsc3PlpInfo> getAllAtsc3PlpInfo();
9022    method @NonNull public android.media.tv.tuner.frontend.FrontendStatus.Atsc3PlpTuningInfo[] getAtsc3PlpTuningInfo();
9023    method public int getBandwidth();
9024    method public int getBer();
9025    method @NonNull public int[] getBers();
9026    method @NonNull public int[] getCodeRates();
9027    method @NonNull public int[] getDvbtCellIds();
9028    method @NonNull public int[] getExtendedModulations();
9029    method @Deprecated public int getFreqOffset();
9030    method public long getFreqOffsetLong();
9031    method public int getGuardInterval();
9032    method public int getHierarchy();
9033    method public long getInnerFec();
9034    method @NonNull public int[] getInterleaving();
9035    method @IntRange(from=0) public int getIptvAverageJitterMillis();
9036    method @NonNull public String getIptvContentUrl();
9037    method @IntRange(from=0) public long getIptvPacketsLost();
9038    method @IntRange(from=0) public long getIptvPacketsReceived();
9039    method @IntRange(from=0) public int getIptvWorstJitterMillis();
9040    method public int getIsdbtMode();
9041    method public int getIsdbtPartialReceptionFlag();
9042    method @IntRange(from=0, to=255) @NonNull public int[] getIsdbtSegment();
9043    method @NonNull public boolean[] getLayerErrors();
9044    method public int getLnbVoltage();
9045    method public int getMer();
9046    method public int getModulation();
9047    method public int getPer();
9048    method public int getPerBer();
9049    method public int getPlpId();
9050    method public int getRollOff();
9051    method public int getSignalQuality();
9052    method public int getSignalStrength();
9053    method public int getSnr();
9054    method public int getSpectralInversion();
9055    method @NonNull public int[] getStreamIds();
9056    method public int getSymbolRate();
9057    method @IntRange(from=0, to=65535) public int getSystemId();
9058    method public int getTransmissionMode();
9059    method @NonNull public int[] getTsDataRate();
9060    method public int getUec();
9061    method public boolean isDemodLocked();
9062    method public boolean isEwbs();
9063    method public boolean isLinear();
9064    method public boolean isLnaOn();
9065    method public boolean isMisoEnabled();
9066    method public boolean isRfLocked();
9067    method public boolean isShortFramesEnabled();
9068    field public static final int FRONTEND_STATUS_TYPE_AGC = 14; // 0xe
9069    field public static final int FRONTEND_STATUS_TYPE_ATSC3_ALL_PLP_INFO = 41; // 0x29
9070    field public static final int FRONTEND_STATUS_TYPE_ATSC3_PLP_INFO = 21; // 0x15
9071    field public static final int FRONTEND_STATUS_TYPE_BANDWIDTH = 25; // 0x19
9072    field public static final int FRONTEND_STATUS_TYPE_BER = 2; // 0x2
9073    field public static final int FRONTEND_STATUS_TYPE_BERS = 23; // 0x17
9074    field public static final int FRONTEND_STATUS_TYPE_CODERATES = 24; // 0x18
9075    field public static final int FRONTEND_STATUS_TYPE_DEMOD_LOCK = 0; // 0x0
9076    field public static final int FRONTEND_STATUS_TYPE_DVBT_CELL_IDS = 40; // 0x28
9077    field public static final int FRONTEND_STATUS_TYPE_EWBS = 13; // 0xd
9078    field public static final int FRONTEND_STATUS_TYPE_FEC = 8; // 0x8
9079    field public static final int FRONTEND_STATUS_TYPE_FREQ_OFFSET = 18; // 0x12
9080    field public static final int FRONTEND_STATUS_TYPE_GUARD_INTERVAL = 26; // 0x1a
9081    field public static final int FRONTEND_STATUS_TYPE_HIERARCHY = 19; // 0x13
9082    field public static final int FRONTEND_STATUS_TYPE_INTERLEAVINGS = 30; // 0x1e
9083    field public static final int FRONTEND_STATUS_TYPE_IPTV_AVERAGE_JITTER_MS = 46; // 0x2e
9084    field public static final int FRONTEND_STATUS_TYPE_IPTV_CONTENT_URL = 42; // 0x2a
9085    field public static final int FRONTEND_STATUS_TYPE_IPTV_PACKETS_LOST = 43; // 0x2b
9086    field public static final int FRONTEND_STATUS_TYPE_IPTV_PACKETS_RECEIVED = 44; // 0x2c
9087    field public static final int FRONTEND_STATUS_TYPE_IPTV_WORST_JITTER_MS = 45; // 0x2d
9088    field public static final int FRONTEND_STATUS_TYPE_ISDBT_MODE = 37; // 0x25
9089    field public static final int FRONTEND_STATUS_TYPE_ISDBT_PARTIAL_RECEPTION_FLAG = 38; // 0x26
9090    field public static final int FRONTEND_STATUS_TYPE_ISDBT_SEGMENTS = 31; // 0x1f
9091    field public static final int FRONTEND_STATUS_TYPE_IS_LINEAR = 35; // 0x23
9092    field public static final int FRONTEND_STATUS_TYPE_IS_MISO_ENABLED = 34; // 0x22
9093    field public static final int FRONTEND_STATUS_TYPE_IS_SHORT_FRAMES_ENABLED = 36; // 0x24
9094    field public static final int FRONTEND_STATUS_TYPE_LAYER_ERROR = 16; // 0x10
9095    field public static final int FRONTEND_STATUS_TYPE_LNA = 15; // 0xf
9096    field public static final int FRONTEND_STATUS_TYPE_LNB_VOLTAGE = 11; // 0xb
9097    field public static final int FRONTEND_STATUS_TYPE_MER = 17; // 0x11
9098    field public static final int FRONTEND_STATUS_TYPE_MODULATION = 9; // 0x9
9099    field public static final int FRONTEND_STATUS_TYPE_MODULATIONS_EXT = 22; // 0x16
9100    field public static final int FRONTEND_STATUS_TYPE_PER = 3; // 0x3
9101    field public static final int FRONTEND_STATUS_TYPE_PLP_ID = 12; // 0xc
9102    field public static final int FRONTEND_STATUS_TYPE_PRE_BER = 4; // 0x4
9103    field public static final int FRONTEND_STATUS_TYPE_RF_LOCK = 20; // 0x14
9104    field public static final int FRONTEND_STATUS_TYPE_ROLL_OFF = 33; // 0x21
9105    field public static final int FRONTEND_STATUS_TYPE_SIGNAL_QUALITY = 5; // 0x5
9106    field public static final int FRONTEND_STATUS_TYPE_SIGNAL_STRENGTH = 6; // 0x6
9107    field public static final int FRONTEND_STATUS_TYPE_SNR = 1; // 0x1
9108    field public static final int FRONTEND_STATUS_TYPE_SPECTRAL = 10; // 0xa
9109    field public static final int FRONTEND_STATUS_TYPE_STREAM_IDS = 39; // 0x27
9110    field public static final int FRONTEND_STATUS_TYPE_SYMBOL_RATE = 7; // 0x7
9111    field public static final int FRONTEND_STATUS_TYPE_T2_SYSTEM_ID = 29; // 0x1d
9112    field public static final int FRONTEND_STATUS_TYPE_TRANSMISSION_MODE = 27; // 0x1b
9113    field public static final int FRONTEND_STATUS_TYPE_TS_DATA_RATES = 32; // 0x20
9114    field public static final int FRONTEND_STATUS_TYPE_UEC = 28; // 0x1c
9115  }
9116
9117  public static class FrontendStatus.Atsc3PlpTuningInfo {
9118    method public int getPlpId();
9119    method public int getUec();
9120    method public boolean isLocked();
9121  }
9122
9123  public final class FrontendStatusReadiness {
9124    method public int getStatusReadiness();
9125    method public int getStatusType();
9126    field public static final int FRONTEND_STATUS_READINESS_STABLE = 3; // 0x3
9127    field public static final int FRONTEND_STATUS_READINESS_UNAVAILABLE = 1; // 0x1
9128    field public static final int FRONTEND_STATUS_READINESS_UNDEFINED = 0; // 0x0
9129    field public static final int FRONTEND_STATUS_READINESS_UNSTABLE = 2; // 0x2
9130    field public static final int FRONTEND_STATUS_READINESS_UNSUPPORTED = 4; // 0x4
9131  }
9132
9133  public class IptvFrontendCapabilities extends android.media.tv.tuner.frontend.FrontendCapabilities {
9134    method public int getProtocolCapability();
9135  }
9136
9137  public final class IptvFrontendSettings extends android.media.tv.tuner.frontend.FrontendSettings {
9138    method @IntRange(from=0) public long getBitrate();
9139    method @NonNull public String getContentUrl();
9140    method @NonNull @Size(min=4, max=16) public byte[] getDstIpAddress();
9141    method public int getDstPort();
9142    method @Nullable public android.media.tv.tuner.frontend.IptvFrontendSettingsFec getFec();
9143    method public int getIgmp();
9144    method public int getProtocol();
9145    method @NonNull @Size(min=4, max=16) public byte[] getSrcIpAddress();
9146    method public int getSrcPort();
9147    method public int getType();
9148    field public static final int IGMP_UNDEFINED = 0; // 0x0
9149    field public static final int IGMP_V1 = 1; // 0x1
9150    field public static final int IGMP_V2 = 2; // 0x2
9151    field public static final int IGMP_V3 = 4; // 0x4
9152    field public static final int PROTOCOL_RTP = 2; // 0x2
9153    field public static final int PROTOCOL_UDP = 1; // 0x1
9154    field public static final int PROTOCOL_UNDEFINED = 0; // 0x0
9155  }
9156
9157  public static final class IptvFrontendSettings.Builder {
9158    ctor public IptvFrontendSettings.Builder();
9159    method @NonNull public android.media.tv.tuner.frontend.IptvFrontendSettings build();
9160    method @NonNull public android.media.tv.tuner.frontend.IptvFrontendSettings.Builder setBitrate(@IntRange(from=0) long);
9161    method @NonNull public android.media.tv.tuner.frontend.IptvFrontendSettings.Builder setContentUrl(@NonNull String);
9162    method @NonNull public android.media.tv.tuner.frontend.IptvFrontendSettings.Builder setDstIpAddress(@NonNull byte[]);
9163    method @NonNull public android.media.tv.tuner.frontend.IptvFrontendSettings.Builder setDstPort(int);
9164    method @NonNull public android.media.tv.tuner.frontend.IptvFrontendSettings.Builder setFec(@Nullable android.media.tv.tuner.frontend.IptvFrontendSettingsFec);
9165    method @NonNull public android.media.tv.tuner.frontend.IptvFrontendSettings.Builder setIgmp(int);
9166    method @NonNull public android.media.tv.tuner.frontend.IptvFrontendSettings.Builder setProtocol(int);
9167    method @NonNull public android.media.tv.tuner.frontend.IptvFrontendSettings.Builder setSrcIpAddress(@NonNull byte[]);
9168    method @NonNull public android.media.tv.tuner.frontend.IptvFrontendSettings.Builder setSrcPort(int);
9169  }
9170
9171  public final class IptvFrontendSettingsFec {
9172    method @IntRange(from=0) public int getFecColNum();
9173    method @IntRange(from=0) public int getFecRowNum();
9174    method public int getFecType();
9175    field public static final int FEC_TYPE_COLUMN = 1; // 0x1
9176    field public static final int FEC_TYPE_COLUMN_ROW = 4; // 0x4
9177    field public static final int FEC_TYPE_ROW = 2; // 0x2
9178    field public static final int FEC_TYPE_UNDEFINED = 0; // 0x0
9179  }
9180
9181  public static final class IptvFrontendSettingsFec.Builder {
9182    ctor public IptvFrontendSettingsFec.Builder();
9183    method @NonNull public android.media.tv.tuner.frontend.IptvFrontendSettingsFec build();
9184    method @NonNull public android.media.tv.tuner.frontend.IptvFrontendSettingsFec.Builder setFecColNum(@IntRange(from=0) int);
9185    method @NonNull public android.media.tv.tuner.frontend.IptvFrontendSettingsFec.Builder setFecRowNum(@IntRange(from=0) int);
9186    method @NonNull public android.media.tv.tuner.frontend.IptvFrontendSettingsFec.Builder setFecType(int);
9187  }
9188
9189  public class Isdbs3FrontendCapabilities extends android.media.tv.tuner.frontend.FrontendCapabilities {
9190    method public int getCodeRateCapability();
9191    method public int getModulationCapability();
9192  }
9193
9194  public class Isdbs3FrontendSettings extends android.media.tv.tuner.frontend.FrontendSettings {
9195    method @NonNull public static android.media.tv.tuner.frontend.Isdbs3FrontendSettings.Builder builder();
9196    method public int getCodeRate();
9197    method public int getModulation();
9198    method public int getRolloff();
9199    method public int getStreamId();
9200    method public int getStreamIdType();
9201    method public int getSymbolRate();
9202    method public int getType();
9203    field public static final int CODERATE_1_2 = 8; // 0x8
9204    field public static final int CODERATE_1_3 = 2; // 0x2
9205    field public static final int CODERATE_2_3 = 32; // 0x20
9206    field public static final int CODERATE_2_5 = 4; // 0x4
9207    field public static final int CODERATE_3_4 = 64; // 0x40
9208    field public static final int CODERATE_3_5 = 16; // 0x10
9209    field public static final int CODERATE_4_5 = 256; // 0x100
9210    field public static final int CODERATE_5_6 = 512; // 0x200
9211    field public static final int CODERATE_7_8 = 1024; // 0x400
9212    field public static final int CODERATE_7_9 = 128; // 0x80
9213    field public static final int CODERATE_9_10 = 2048; // 0x800
9214    field public static final int CODERATE_AUTO = 1; // 0x1
9215    field public static final int CODERATE_UNDEFINED = 0; // 0x0
9216    field public static final int MODULATION_AUTO = 1; // 0x1
9217    field public static final int MODULATION_MOD_16APSK = 16; // 0x10
9218    field public static final int MODULATION_MOD_32APSK = 32; // 0x20
9219    field public static final int MODULATION_MOD_8PSK = 8; // 0x8
9220    field public static final int MODULATION_MOD_BPSK = 2; // 0x2
9221    field public static final int MODULATION_MOD_QPSK = 4; // 0x4
9222    field public static final int MODULATION_UNDEFINED = 0; // 0x0
9223    field public static final int ROLLOFF_0_03 = 1; // 0x1
9224    field public static final int ROLLOFF_UNDEFINED = 0; // 0x0
9225  }
9226
9227  public static class Isdbs3FrontendSettings.Builder {
9228    method @NonNull public android.media.tv.tuner.frontend.Isdbs3FrontendSettings build();
9229    method @NonNull public android.media.tv.tuner.frontend.Isdbs3FrontendSettings.Builder setCodeRate(int);
9230    method @Deprecated @IntRange(from=1) @NonNull public android.media.tv.tuner.frontend.Isdbs3FrontendSettings.Builder setFrequency(int);
9231    method @IntRange(from=1) @NonNull public android.media.tv.tuner.frontend.Isdbs3FrontendSettings.Builder setFrequencyLong(long);
9232    method @NonNull public android.media.tv.tuner.frontend.Isdbs3FrontendSettings.Builder setModulation(int);
9233    method @NonNull public android.media.tv.tuner.frontend.Isdbs3FrontendSettings.Builder setRolloff(int);
9234    method @NonNull public android.media.tv.tuner.frontend.Isdbs3FrontendSettings.Builder setStreamId(int);
9235    method @NonNull public android.media.tv.tuner.frontend.Isdbs3FrontendSettings.Builder setStreamIdType(int);
9236    method @NonNull public android.media.tv.tuner.frontend.Isdbs3FrontendSettings.Builder setSymbolRate(int);
9237  }
9238
9239  public class IsdbsFrontendCapabilities extends android.media.tv.tuner.frontend.FrontendCapabilities {
9240    method public int getCodeRateCapability();
9241    method public int getModulationCapability();
9242  }
9243
9244  public class IsdbsFrontendSettings extends android.media.tv.tuner.frontend.FrontendSettings {
9245    method @NonNull public static android.media.tv.tuner.frontend.IsdbsFrontendSettings.Builder builder();
9246    method public int getCodeRate();
9247    method public int getModulation();
9248    method public int getRolloff();
9249    method public int getStreamId();
9250    method public int getStreamIdType();
9251    method public int getSymbolRate();
9252    method public int getType();
9253    field public static final int CODERATE_1_2 = 2; // 0x2
9254    field public static final int CODERATE_2_3 = 4; // 0x4
9255    field public static final int CODERATE_3_4 = 8; // 0x8
9256    field public static final int CODERATE_5_6 = 16; // 0x10
9257    field public static final int CODERATE_7_8 = 32; // 0x20
9258    field public static final int CODERATE_AUTO = 1; // 0x1
9259    field public static final int CODERATE_UNDEFINED = 0; // 0x0
9260    field public static final int MODULATION_AUTO = 1; // 0x1
9261    field public static final int MODULATION_MOD_BPSK = 2; // 0x2
9262    field public static final int MODULATION_MOD_QPSK = 4; // 0x4
9263    field public static final int MODULATION_MOD_TC8PSK = 8; // 0x8
9264    field public static final int MODULATION_UNDEFINED = 0; // 0x0
9265    field public static final int ROLLOFF_0_35 = 1; // 0x1
9266    field public static final int ROLLOFF_UNDEFINED = 0; // 0x0
9267    field public static final int STREAM_ID_TYPE_ID = 0; // 0x0
9268    field public static final int STREAM_ID_TYPE_RELATIVE_NUMBER = 1; // 0x1
9269  }
9270
9271  public static class IsdbsFrontendSettings.Builder {
9272    method @NonNull public android.media.tv.tuner.frontend.IsdbsFrontendSettings build();
9273    method @NonNull public android.media.tv.tuner.frontend.IsdbsFrontendSettings.Builder setCodeRate(int);
9274    method @Deprecated @IntRange(from=1) @NonNull public android.media.tv.tuner.frontend.IsdbsFrontendSettings.Builder setFrequency(int);
9275    method @IntRange(from=1) @NonNull public android.media.tv.tuner.frontend.IsdbsFrontendSettings.Builder setFrequencyLong(long);
9276    method @NonNull public android.media.tv.tuner.frontend.IsdbsFrontendSettings.Builder setModulation(int);
9277    method @NonNull public android.media.tv.tuner.frontend.IsdbsFrontendSettings.Builder setRolloff(int);
9278    method @NonNull public android.media.tv.tuner.frontend.IsdbsFrontendSettings.Builder setStreamId(int);
9279    method @NonNull public android.media.tv.tuner.frontend.IsdbsFrontendSettings.Builder setStreamIdType(int);
9280    method @NonNull public android.media.tv.tuner.frontend.IsdbsFrontendSettings.Builder setSymbolRate(int);
9281  }
9282
9283  public class IsdbtFrontendCapabilities extends android.media.tv.tuner.frontend.FrontendCapabilities {
9284    method public int getBandwidthCapability();
9285    method public int getCodeRateCapability();
9286    method public int getGuardIntervalCapability();
9287    method public int getModeCapability();
9288    method public int getModulationCapability();
9289    method public int getTimeInterleaveModeCapability();
9290    method public boolean isFullSegmentSupported();
9291    method public boolean isSegmentAutoSupported();
9292  }
9293
9294  public class IsdbtFrontendSettings extends android.media.tv.tuner.frontend.FrontendSettings {
9295    method @NonNull public static android.media.tv.tuner.frontend.IsdbtFrontendSettings.Builder builder();
9296    method public int getBandwidth();
9297    method @Deprecated public int getCodeRate();
9298    method public int getGuardInterval();
9299    method @NonNull public android.media.tv.tuner.frontend.IsdbtFrontendSettings.IsdbtLayerSettings[] getLayerSettings();
9300    method public int getMode();
9301    method @Deprecated public int getModulation();
9302    method public int getPartialReceptionFlag();
9303    method public int getServiceAreaId();
9304    method public int getType();
9305    field public static final int BANDWIDTH_6MHZ = 8; // 0x8
9306    field public static final int BANDWIDTH_7MHZ = 4; // 0x4
9307    field public static final int BANDWIDTH_8MHZ = 2; // 0x2
9308    field public static final int BANDWIDTH_AUTO = 1; // 0x1
9309    field public static final int BANDWIDTH_UNDEFINED = 0; // 0x0
9310    field public static final int MODE_1 = 2; // 0x2
9311    field public static final int MODE_2 = 4; // 0x4
9312    field public static final int MODE_3 = 8; // 0x8
9313    field public static final int MODE_AUTO = 1; // 0x1
9314    field public static final int MODE_UNDEFINED = 0; // 0x0
9315    field public static final int MODULATION_AUTO = 1; // 0x1
9316    field public static final int MODULATION_MOD_16QAM = 8; // 0x8
9317    field public static final int MODULATION_MOD_64QAM = 16; // 0x10
9318    field public static final int MODULATION_MOD_DQPSK = 2; // 0x2
9319    field public static final int MODULATION_MOD_QPSK = 4; // 0x4
9320    field public static final int MODULATION_UNDEFINED = 0; // 0x0
9321    field public static final int PARTIAL_RECEPTION_FLAG_FALSE = 2; // 0x2
9322    field public static final int PARTIAL_RECEPTION_FLAG_TRUE = 4; // 0x4
9323    field public static final int PARTIAL_RECEPTION_FLAG_UNDEFINED = 0; // 0x0
9324    field public static final int TIME_INTERLEAVE_MODE_1_0 = 2; // 0x2
9325    field public static final int TIME_INTERLEAVE_MODE_1_16 = 16; // 0x10
9326    field public static final int TIME_INTERLEAVE_MODE_1_4 = 4; // 0x4
9327    field public static final int TIME_INTERLEAVE_MODE_1_8 = 8; // 0x8
9328    field public static final int TIME_INTERLEAVE_MODE_2_0 = 32; // 0x20
9329    field public static final int TIME_INTERLEAVE_MODE_2_2 = 64; // 0x40
9330    field public static final int TIME_INTERLEAVE_MODE_2_4 = 128; // 0x80
9331    field public static final int TIME_INTERLEAVE_MODE_2_8 = 256; // 0x100
9332    field public static final int TIME_INTERLEAVE_MODE_3_0 = 512; // 0x200
9333    field public static final int TIME_INTERLEAVE_MODE_3_1 = 1024; // 0x400
9334    field public static final int TIME_INTERLEAVE_MODE_3_2 = 2048; // 0x800
9335    field public static final int TIME_INTERLEAVE_MODE_3_4 = 4096; // 0x1000
9336    field public static final int TIME_INTERLEAVE_MODE_AUTO = 1; // 0x1
9337    field public static final int TIME_INTERLEAVE_MODE_UNDEFINED = 0; // 0x0
9338  }
9339
9340  public static class IsdbtFrontendSettings.Builder {
9341    method @NonNull public android.media.tv.tuner.frontend.IsdbtFrontendSettings build();
9342    method @NonNull public android.media.tv.tuner.frontend.IsdbtFrontendSettings.Builder setBandwidth(int);
9343    method @Deprecated @NonNull public android.media.tv.tuner.frontend.IsdbtFrontendSettings.Builder setCodeRate(int);
9344    method @Deprecated @IntRange(from=1) @NonNull public android.media.tv.tuner.frontend.IsdbtFrontendSettings.Builder setFrequency(int);
9345    method @IntRange(from=1) @NonNull public android.media.tv.tuner.frontend.IsdbtFrontendSettings.Builder setFrequencyLong(long);
9346    method @NonNull public android.media.tv.tuner.frontend.IsdbtFrontendSettings.Builder setGuardInterval(int);
9347    method @NonNull public android.media.tv.tuner.frontend.IsdbtFrontendSettings.Builder setLayerSettings(@NonNull android.media.tv.tuner.frontend.IsdbtFrontendSettings.IsdbtLayerSettings[]);
9348    method @NonNull public android.media.tv.tuner.frontend.IsdbtFrontendSettings.Builder setMode(int);
9349    method @Deprecated @NonNull public android.media.tv.tuner.frontend.IsdbtFrontendSettings.Builder setModulation(int);
9350    method @NonNull public android.media.tv.tuner.frontend.IsdbtFrontendSettings.Builder setPartialReceptionFlag(int);
9351    method @NonNull public android.media.tv.tuner.frontend.IsdbtFrontendSettings.Builder setServiceAreaId(int);
9352  }
9353
9354  public static final class IsdbtFrontendSettings.IsdbtLayerSettings {
9355    method @NonNull public static android.media.tv.tuner.frontend.IsdbtFrontendSettings.IsdbtLayerSettings.Builder builder();
9356    method public int getCodeRate();
9357    method public int getModulation();
9358    method @IntRange(from=0, to=255) public int getNumberOfSegments();
9359    method public int getTimeInterleaveMode();
9360  }
9361
9362  public static final class IsdbtFrontendSettings.IsdbtLayerSettings.Builder {
9363    method @NonNull public android.media.tv.tuner.frontend.IsdbtFrontendSettings.IsdbtLayerSettings build();
9364    method @NonNull public android.media.tv.tuner.frontend.IsdbtFrontendSettings.IsdbtLayerSettings.Builder setCodeRate(int);
9365    method @NonNull public android.media.tv.tuner.frontend.IsdbtFrontendSettings.IsdbtLayerSettings.Builder setModulation(int);
9366    method @IntRange(from=0, to=255) @NonNull public android.media.tv.tuner.frontend.IsdbtFrontendSettings.IsdbtLayerSettings.Builder setNumberOfSegments(int);
9367    method @NonNull public android.media.tv.tuner.frontend.IsdbtFrontendSettings.IsdbtLayerSettings.Builder setTimeInterleaveMode(int);
9368  }
9369
9370  public interface OnTuneEventListener {
9371    method public void onTuneEvent(int);
9372    field public static final int SIGNAL_LOCKED = 0; // 0x0
9373    field public static final int SIGNAL_LOST_LOCK = 2; // 0x2
9374    field public static final int SIGNAL_NO_SIGNAL = 1; // 0x1
9375  }
9376
9377  public interface ScanCallback {
9378    method public void onAnalogSifStandardReported(int);
9379    method public void onAtsc3PlpInfosReported(@NonNull android.media.tv.tuner.frontend.Atsc3PlpInfo[]);
9380    method public default void onDvbcAnnexReported(int);
9381    method public void onDvbsStandardReported(int);
9382    method public default void onDvbtCellIdsReported(@NonNull int[]);
9383    method public void onDvbtStandardReported(int);
9384    method public default void onFrequenciesLongReported(@NonNull long[]);
9385    method @Deprecated public void onFrequenciesReported(@NonNull int[]);
9386    method public void onGroupIdsReported(@NonNull int[]);
9387    method public void onHierarchyReported(int);
9388    method public void onInputStreamIdsReported(@NonNull int[]);
9389    method public void onLocked();
9390    method public default void onModulationReported(int);
9391    method public void onPlpIdsReported(@NonNull int[]);
9392    method public default void onPriorityReported(boolean);
9393    method public void onProgress(@IntRange(from=0, to=100) int);
9394    method public void onScanStopped();
9395    method public void onSignalTypeReported(int);
9396    method public void onSymbolRatesReported(@NonNull int[]);
9397    method public default void onUnlocked();
9398  }
9399
9400}
9401
9402package android.media.voice {
9403
9404  public final class KeyphraseModelManager {
9405    method @RequiresPermission("android.permission.MANAGE_VOICE_KEYPHRASES") public void deleteKeyphraseSoundModel(int, @NonNull java.util.Locale);
9406    method @Nullable @RequiresPermission("android.permission.MANAGE_VOICE_KEYPHRASES") public android.hardware.soundtrigger.SoundTrigger.KeyphraseSoundModel getKeyphraseSoundModel(int, @NonNull java.util.Locale);
9407    method @RequiresPermission("android.permission.MANAGE_VOICE_KEYPHRASES") public void updateKeyphraseSoundModel(@NonNull android.hardware.soundtrigger.SoundTrigger.KeyphraseSoundModel);
9408  }
9409
9410}
9411
9412package android.metrics {
9413
9414  public class LogMaker {
9415    ctor public LogMaker(int);
9416    ctor public LogMaker(Object[]);
9417    method public android.metrics.LogMaker addTaggedData(int, Object);
9418    method public android.metrics.LogMaker clearCategory();
9419    method public android.metrics.LogMaker clearPackageName();
9420    method public android.metrics.LogMaker clearSubtype();
9421    method public android.metrics.LogMaker clearTaggedData(int);
9422    method public android.metrics.LogMaker clearType();
9423    method public void deserialize(Object[]);
9424    method public int getCategory();
9425    method public long getCounterBucket();
9426    method public String getCounterName();
9427    method public int getCounterValue();
9428    method public String getPackageName();
9429    method public int getProcessId();
9430    method public int getSubtype();
9431    method public Object getTaggedData(int);
9432    method public long getTimestamp();
9433    method public int getType();
9434    method public int getUid();
9435    method public boolean isLongCounterBucket();
9436    method public boolean isSubsetOf(android.metrics.LogMaker);
9437    method public boolean isValidValue(Object);
9438    method public Object[] serialize();
9439    method public android.metrics.LogMaker setCategory(int);
9440    method public android.metrics.LogMaker setPackageName(String);
9441    method public android.metrics.LogMaker setSubtype(int);
9442    method public android.metrics.LogMaker setType(int);
9443  }
9444
9445  public class MetricsReader {
9446    ctor public MetricsReader();
9447    method public void checkpoint();
9448    method public boolean hasNext();
9449    method public android.metrics.LogMaker next();
9450    method public void read(long);
9451    method public void reset();
9452  }
9453
9454}
9455
9456package android.net {
9457
9458  public final class MatchAllNetworkSpecifier extends android.net.NetworkSpecifier implements android.os.Parcelable {
9459    ctor public MatchAllNetworkSpecifier();
9460    method public int describeContents();
9461    method public void writeToParcel(@NonNull android.os.Parcel, int);
9462    field @NonNull public static final android.os.Parcelable.Creator<android.net.MatchAllNetworkSpecifier> CREATOR;
9463  }
9464
9465  @Deprecated public class NetworkKey implements android.os.Parcelable {
9466    ctor @Deprecated public NetworkKey(android.net.WifiKey);
9467    method @Deprecated @Nullable public static android.net.NetworkKey createFromScanResult(@NonNull android.net.wifi.ScanResult);
9468    method @Deprecated public int describeContents();
9469    method @Deprecated public void writeToParcel(android.os.Parcel, int);
9470    field @Deprecated @NonNull public static final android.os.Parcelable.Creator<android.net.NetworkKey> CREATOR;
9471    field @Deprecated public static final int TYPE_WIFI = 1; // 0x1
9472    field @Deprecated public final int type;
9473    field @Deprecated public final android.net.WifiKey wifiKey;
9474  }
9475
9476  public abstract class NetworkRecommendationProvider {
9477    ctor public NetworkRecommendationProvider(android.content.Context, java.util.concurrent.Executor);
9478    method public final android.os.IBinder getBinder();
9479    method public abstract void onRequestScores(android.net.NetworkKey[]);
9480  }
9481
9482  @Deprecated public class NetworkScoreManager {
9483    method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.SCORE_NETWORKS, android.Manifest.permission.REQUEST_NETWORK_SCORES}) public boolean clearScores() throws java.lang.SecurityException;
9484    method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.SCORE_NETWORKS, android.Manifest.permission.REQUEST_NETWORK_SCORES}) public void disableScoring() throws java.lang.SecurityException;
9485    method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.SCORE_NETWORKS, android.Manifest.permission.REQUEST_NETWORK_SCORES}) public String getActiveScorerPackage();
9486    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;
9487    method @Deprecated @RequiresPermission(android.Manifest.permission.REQUEST_NETWORK_SCORES) public boolean requestScores(@NonNull java.util.Collection<android.net.NetworkKey>) throws java.lang.SecurityException;
9488    method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.SCORE_NETWORKS, android.Manifest.permission.REQUEST_NETWORK_SCORES}) public boolean setActiveScorer(String) throws java.lang.SecurityException;
9489    method @Deprecated @RequiresPermission(android.Manifest.permission.SCORE_NETWORKS) public boolean updateScores(@NonNull android.net.ScoredNetwork[]) throws java.lang.SecurityException;
9490    field @Deprecated public static final String ACTION_CHANGE_ACTIVE = "android.net.scoring.CHANGE_ACTIVE";
9491    field @Deprecated public static final String ACTION_CUSTOM_ENABLE = "android.net.scoring.CUSTOM_ENABLE";
9492    field @Deprecated public static final String ACTION_RECOMMEND_NETWORKS = "android.net.action.RECOMMEND_NETWORKS";
9493    field @Deprecated public static final String ACTION_SCORER_CHANGED = "android.net.scoring.SCORER_CHANGED";
9494    field @Deprecated public static final String ACTION_SCORE_NETWORKS = "android.net.scoring.SCORE_NETWORKS";
9495    field @Deprecated public static final String EXTRA_NETWORKS_TO_SCORE = "networksToScore";
9496    field @Deprecated public static final String EXTRA_NEW_SCORER = "newScorer";
9497    field @Deprecated public static final String EXTRA_PACKAGE_NAME = "packageName";
9498    field @Deprecated public static final int SCORE_FILTER_CURRENT_NETWORK = 1; // 0x1
9499    field @Deprecated public static final int SCORE_FILTER_NONE = 0; // 0x0
9500    field @Deprecated public static final int SCORE_FILTER_SCAN_RESULTS = 2; // 0x2
9501  }
9502
9503  @Deprecated public abstract static class NetworkScoreManager.NetworkScoreCallback {
9504    ctor @Deprecated public NetworkScoreManager.NetworkScoreCallback();
9505    method @Deprecated public abstract void onScoresInvalidated();
9506    method @Deprecated public abstract void onScoresUpdated(@NonNull java.util.Collection<android.net.ScoredNetwork>);
9507  }
9508
9509  public abstract class NetworkSpecifier {
9510    method public boolean canBeSatisfiedBy(@Nullable android.net.NetworkSpecifier);
9511    method @Nullable public android.net.NetworkSpecifier redact();
9512  }
9513
9514  public class NetworkStack {
9515    method @Nullable public static android.os.IBinder getService();
9516    field public static final String PERMISSION_MAINLINE_NETWORK_STACK = "android.permission.MAINLINE_NETWORK_STACK";
9517  }
9518
9519  @Deprecated public class RssiCurve implements android.os.Parcelable {
9520    ctor @Deprecated public RssiCurve(int, int, byte[]);
9521    ctor @Deprecated public RssiCurve(int, int, byte[], int);
9522    method @Deprecated public int describeContents();
9523    method @Deprecated public byte lookupScore(int);
9524    method @Deprecated public byte lookupScore(int, boolean);
9525    method @Deprecated public void writeToParcel(android.os.Parcel, int);
9526    field @Deprecated @NonNull public static final android.os.Parcelable.Creator<android.net.RssiCurve> CREATOR;
9527    field @Deprecated public final int activeNetworkRssiBoost;
9528    field @Deprecated public final int bucketWidth;
9529    field @Deprecated public final byte[] rssiBuckets;
9530    field @Deprecated public final int start;
9531  }
9532
9533  @Deprecated public class ScoredNetwork implements android.os.Parcelable {
9534    ctor @Deprecated public ScoredNetwork(android.net.NetworkKey, android.net.RssiCurve);
9535    ctor @Deprecated public ScoredNetwork(android.net.NetworkKey, android.net.RssiCurve, boolean);
9536    ctor @Deprecated public ScoredNetwork(android.net.NetworkKey, android.net.RssiCurve, boolean, @Nullable android.os.Bundle);
9537    method @Deprecated public int calculateBadge(int);
9538    method @Deprecated public int describeContents();
9539    method @Deprecated public void writeToParcel(android.os.Parcel, int);
9540    field @Deprecated public static final String ATTRIBUTES_KEY_BADGING_CURVE = "android.net.attributes.key.BADGING_CURVE";
9541    field @Deprecated public static final String ATTRIBUTES_KEY_HAS_CAPTIVE_PORTAL = "android.net.attributes.key.HAS_CAPTIVE_PORTAL";
9542    field @Deprecated public static final String ATTRIBUTES_KEY_RANKING_SCORE_OFFSET = "android.net.attributes.key.RANKING_SCORE_OFFSET";
9543    field @Deprecated @NonNull public static final android.os.Parcelable.Creator<android.net.ScoredNetwork> CREATOR;
9544    field @Deprecated @Nullable public final android.os.Bundle attributes;
9545    field @Deprecated public final boolean meteredHint;
9546    field @Deprecated public final android.net.NetworkKey networkKey;
9547    field @Deprecated public final android.net.RssiCurve rssiCurve;
9548  }
9549
9550  public abstract class Uri implements java.lang.Comparable<android.net.Uri> android.os.Parcelable {
9551    method @NonNull public String toSafeString();
9552  }
9553
9554  public class VpnService extends android.app.Service {
9555    method @RequiresPermission(android.Manifest.permission.CONTROL_VPN) public static void prepareAndAuthorize(android.content.Context);
9556  }
9557
9558  public class WebAddress {
9559    ctor public WebAddress(String) throws android.net.ParseException;
9560  }
9561
9562  @Deprecated public class WifiKey implements android.os.Parcelable {
9563    ctor @Deprecated public WifiKey(String, String);
9564    method @Deprecated public int describeContents();
9565    method @Deprecated public void writeToParcel(android.os.Parcel, int);
9566    field @Deprecated @NonNull public static final android.os.Parcelable.Creator<android.net.WifiKey> CREATOR;
9567    field @Deprecated public final String bssid;
9568    field @Deprecated public final String ssid;
9569  }
9570
9571}
9572
9573package android.net.metrics {
9574
9575  @Deprecated public final class ApfProgramEvent implements android.net.metrics.IpConnectivityLog.Event {
9576  }
9577
9578  @Deprecated public static final class ApfProgramEvent.Builder {
9579    ctor @Deprecated public ApfProgramEvent.Builder();
9580    method @Deprecated @NonNull public android.net.metrics.ApfProgramEvent build();
9581    method @Deprecated @NonNull public android.net.metrics.ApfProgramEvent.Builder setActualLifetime(long);
9582    method @Deprecated @NonNull public android.net.metrics.ApfProgramEvent.Builder setCurrentRas(int);
9583    method @Deprecated @NonNull public android.net.metrics.ApfProgramEvent.Builder setFilteredRas(int);
9584    method @Deprecated @NonNull public android.net.metrics.ApfProgramEvent.Builder setFlags(boolean, boolean);
9585    method @Deprecated @NonNull public android.net.metrics.ApfProgramEvent.Builder setLifetime(long);
9586    method @Deprecated @NonNull public android.net.metrics.ApfProgramEvent.Builder setProgramLength(int);
9587  }
9588
9589  @Deprecated public final class ApfStats implements android.net.metrics.IpConnectivityLog.Event {
9590  }
9591
9592  @Deprecated public static final class ApfStats.Builder {
9593    ctor @Deprecated public ApfStats.Builder();
9594    method @Deprecated @NonNull public android.net.metrics.ApfStats build();
9595    method @Deprecated @NonNull public android.net.metrics.ApfStats.Builder setDroppedRas(int);
9596    method @Deprecated @NonNull public android.net.metrics.ApfStats.Builder setDurationMs(long);
9597    method @Deprecated @NonNull public android.net.metrics.ApfStats.Builder setMatchingRas(int);
9598    method @Deprecated @NonNull public android.net.metrics.ApfStats.Builder setMaxProgramSize(int);
9599    method @Deprecated @NonNull public android.net.metrics.ApfStats.Builder setParseErrors(int);
9600    method @Deprecated @NonNull public android.net.metrics.ApfStats.Builder setProgramUpdates(int);
9601    method @Deprecated @NonNull public android.net.metrics.ApfStats.Builder setProgramUpdatesAll(int);
9602    method @Deprecated @NonNull public android.net.metrics.ApfStats.Builder setProgramUpdatesAllowingMulticast(int);
9603    method @Deprecated @NonNull public android.net.metrics.ApfStats.Builder setReceivedRas(int);
9604    method @Deprecated @NonNull public android.net.metrics.ApfStats.Builder setZeroLifetimeRas(int);
9605  }
9606
9607  @Deprecated public final class DhcpClientEvent implements android.net.metrics.IpConnectivityLog.Event {
9608  }
9609
9610  @Deprecated public static final class DhcpClientEvent.Builder {
9611    ctor @Deprecated public DhcpClientEvent.Builder();
9612    method @Deprecated @NonNull public android.net.metrics.DhcpClientEvent build();
9613    method @Deprecated @NonNull public android.net.metrics.DhcpClientEvent.Builder setDurationMs(int);
9614    method @Deprecated @NonNull public android.net.metrics.DhcpClientEvent.Builder setMsg(String);
9615  }
9616
9617  @Deprecated public final class DhcpErrorEvent implements android.net.metrics.IpConnectivityLog.Event {
9618    ctor @Deprecated public DhcpErrorEvent(int);
9619    method @Deprecated public static int errorCodeWithOption(int, int);
9620    field @Deprecated public static final int BOOTP_TOO_SHORT = 67174400; // 0x4010000
9621    field @Deprecated public static final int BUFFER_UNDERFLOW = 83951616; // 0x5010000
9622    field @Deprecated public static final int DHCP_BAD_MAGIC_COOKIE = 67239936; // 0x4020000
9623    field @Deprecated public static final int DHCP_ERROR = 4; // 0x4
9624    field @Deprecated public static final int DHCP_INVALID_OPTION_LENGTH = 67305472; // 0x4030000
9625    field @Deprecated public static final int DHCP_NO_COOKIE = 67502080; // 0x4060000
9626    field @Deprecated public static final int DHCP_NO_MSG_TYPE = 67371008; // 0x4040000
9627    field @Deprecated public static final int DHCP_UNKNOWN_MSG_TYPE = 67436544; // 0x4050000
9628    field @Deprecated public static final int L2_ERROR = 1; // 0x1
9629    field @Deprecated public static final int L2_TOO_SHORT = 16842752; // 0x1010000
9630    field @Deprecated public static final int L2_WRONG_ETH_TYPE = 16908288; // 0x1020000
9631    field @Deprecated public static final int L3_ERROR = 2; // 0x2
9632    field @Deprecated public static final int L3_INVALID_IP = 33751040; // 0x2030000
9633    field @Deprecated public static final int L3_NOT_IPV4 = 33685504; // 0x2020000
9634    field @Deprecated public static final int L3_TOO_SHORT = 33619968; // 0x2010000
9635    field @Deprecated public static final int L4_ERROR = 3; // 0x3
9636    field @Deprecated public static final int L4_NOT_UDP = 50397184; // 0x3010000
9637    field @Deprecated public static final int L4_WRONG_PORT = 50462720; // 0x3020000
9638    field @Deprecated public static final int MISC_ERROR = 5; // 0x5
9639    field @Deprecated public static final int PARSING_ERROR = 84082688; // 0x5030000
9640    field @Deprecated public static final int RECEIVE_ERROR = 84017152; // 0x5020000
9641  }
9642
9643  @Deprecated public class IpConnectivityLog {
9644    ctor @Deprecated public IpConnectivityLog();
9645    method @Deprecated public boolean log(long, @NonNull android.net.metrics.IpConnectivityLog.Event);
9646    method @Deprecated public boolean log(@NonNull String, @NonNull android.net.metrics.IpConnectivityLog.Event);
9647    method @Deprecated public boolean log(@NonNull android.net.Network, @NonNull int[], @NonNull android.net.metrics.IpConnectivityLog.Event);
9648    method @Deprecated public boolean log(int, @NonNull int[], @NonNull android.net.metrics.IpConnectivityLog.Event);
9649    method @Deprecated public boolean log(@NonNull android.net.metrics.IpConnectivityLog.Event);
9650  }
9651
9652  @Deprecated public static interface IpConnectivityLog.Event extends android.os.Parcelable {
9653  }
9654
9655  @Deprecated public final class IpManagerEvent implements android.net.metrics.IpConnectivityLog.Event {
9656    ctor @Deprecated public IpManagerEvent(int, long);
9657    field @Deprecated public static final int COMPLETE_LIFECYCLE = 3; // 0x3
9658    field @Deprecated public static final int ERROR_INTERFACE_NOT_FOUND = 8; // 0x8
9659    field @Deprecated public static final int ERROR_INVALID_PROVISIONING = 7; // 0x7
9660    field @Deprecated public static final int ERROR_STARTING_IPREACHABILITYMONITOR = 6; // 0x6
9661    field @Deprecated public static final int ERROR_STARTING_IPV4 = 4; // 0x4
9662    field @Deprecated public static final int ERROR_STARTING_IPV6 = 5; // 0x5
9663    field @Deprecated public static final int PROVISIONING_FAIL = 2; // 0x2
9664    field @Deprecated public static final int PROVISIONING_OK = 1; // 0x1
9665  }
9666
9667  @Deprecated public final class IpReachabilityEvent implements android.net.metrics.IpConnectivityLog.Event {
9668    ctor @Deprecated public IpReachabilityEvent(int);
9669    field @Deprecated public static final int NUD_FAILED = 512; // 0x200
9670    field @Deprecated public static final int NUD_FAILED_ORGANIC = 1024; // 0x400
9671    field @Deprecated public static final int PROBE = 256; // 0x100
9672    field @Deprecated public static final int PROVISIONING_LOST = 768; // 0x300
9673    field @Deprecated public static final int PROVISIONING_LOST_ORGANIC = 1280; // 0x500
9674  }
9675
9676  @Deprecated public final class NetworkEvent implements android.net.metrics.IpConnectivityLog.Event {
9677    ctor @Deprecated public NetworkEvent(int, long);
9678    ctor @Deprecated public NetworkEvent(int);
9679    field @Deprecated public static final int NETWORK_CAPTIVE_PORTAL_FOUND = 4; // 0x4
9680    field @Deprecated public static final int NETWORK_CONNECTED = 1; // 0x1
9681    field @Deprecated public static final int NETWORK_CONSECUTIVE_DNS_TIMEOUT_FOUND = 12; // 0xc
9682    field @Deprecated public static final int NETWORK_DISCONNECTED = 7; // 0x7
9683    field @Deprecated public static final int NETWORK_FIRST_VALIDATION_PORTAL_FOUND = 10; // 0xa
9684    field @Deprecated public static final int NETWORK_FIRST_VALIDATION_SUCCESS = 8; // 0x8
9685    field @Deprecated public static final int NETWORK_LINGER = 5; // 0x5
9686    field @Deprecated public static final int NETWORK_PARTIAL_CONNECTIVITY = 13; // 0xd
9687    field @Deprecated public static final int NETWORK_REVALIDATION_PORTAL_FOUND = 11; // 0xb
9688    field @Deprecated public static final int NETWORK_REVALIDATION_SUCCESS = 9; // 0x9
9689    field @Deprecated public static final int NETWORK_UNLINGER = 6; // 0x6
9690    field @Deprecated public static final int NETWORK_VALIDATED = 2; // 0x2
9691    field @Deprecated public static final int NETWORK_VALIDATION_FAILED = 3; // 0x3
9692  }
9693
9694  @Deprecated public final class RaEvent implements android.net.metrics.IpConnectivityLog.Event {
9695  }
9696
9697  @Deprecated public static final class RaEvent.Builder {
9698    ctor @Deprecated public RaEvent.Builder();
9699    method @Deprecated @NonNull public android.net.metrics.RaEvent build();
9700    method @Deprecated @NonNull public android.net.metrics.RaEvent.Builder updateDnsslLifetime(long);
9701    method @Deprecated @NonNull public android.net.metrics.RaEvent.Builder updatePrefixPreferredLifetime(long);
9702    method @Deprecated @NonNull public android.net.metrics.RaEvent.Builder updatePrefixValidLifetime(long);
9703    method @Deprecated @NonNull public android.net.metrics.RaEvent.Builder updateRdnssLifetime(long);
9704    method @Deprecated @NonNull public android.net.metrics.RaEvent.Builder updateRouteInfoLifetime(long);
9705    method @Deprecated @NonNull public android.net.metrics.RaEvent.Builder updateRouterLifetime(long);
9706  }
9707
9708  @Deprecated public final class ValidationProbeEvent implements android.net.metrics.IpConnectivityLog.Event {
9709    method @Deprecated @NonNull public static String getProbeName(int);
9710    field @Deprecated public static final int DNS_FAILURE = 0; // 0x0
9711    field @Deprecated public static final int DNS_SUCCESS = 1; // 0x1
9712    field @Deprecated public static final int PROBE_DNS = 0; // 0x0
9713    field @Deprecated public static final int PROBE_FALLBACK = 4; // 0x4
9714    field @Deprecated public static final int PROBE_HTTP = 1; // 0x1
9715    field @Deprecated public static final int PROBE_HTTPS = 2; // 0x2
9716    field @Deprecated public static final int PROBE_PAC = 3; // 0x3
9717    field @Deprecated public static final int PROBE_PRIVDNS = 5; // 0x5
9718  }
9719
9720  @Deprecated public static final class ValidationProbeEvent.Builder {
9721    ctor @Deprecated public ValidationProbeEvent.Builder();
9722    method @Deprecated @NonNull public android.net.metrics.ValidationProbeEvent build();
9723    method @Deprecated @NonNull public android.net.metrics.ValidationProbeEvent.Builder setDurationMs(long);
9724    method @Deprecated @NonNull public android.net.metrics.ValidationProbeEvent.Builder setProbeType(int, boolean);
9725    method @Deprecated @NonNull public android.net.metrics.ValidationProbeEvent.Builder setReturnCode(int);
9726  }
9727
9728}
9729
9730package android.net.sip {
9731
9732  @Deprecated public class SipAudioCall {
9733    method @Deprecated @Nullable public android.net.rtp.AudioGroup getAudioGroup();
9734    method @Deprecated public void setAudioGroup(@NonNull android.net.rtp.AudioGroup);
9735  }
9736
9737  @Deprecated public class SipManager {
9738    method @Deprecated @NonNull public java.util.List<android.net.sip.SipProfile> getProfiles() throws android.net.sip.SipException;
9739    field @Deprecated public static final String ACTION_SIP_CALL_OPTION_CHANGED = "android.net.sip.action.SIP_CALL_OPTION_CHANGED";
9740    field @Deprecated public static final String ACTION_SIP_INCOMING_CALL = "android.net.sip.action.SIP_INCOMING_CALL";
9741    field @Deprecated public static final String ACTION_SIP_REMOVE_PROFILE = "android.net.sip.action.SIP_REMOVE_PROFILE";
9742    field @Deprecated public static final String ACTION_SIP_SERVICE_UP = "android.net.sip.action.SIP_SERVICE_UP";
9743    field @Deprecated public static final String ACTION_START_SIP = "android.net.sip.action.START_SIP";
9744  }
9745
9746  @Deprecated public class SipProfile implements java.lang.Cloneable android.os.Parcelable java.io.Serializable {
9747    method @Deprecated public int getCallingUid();
9748  }
9749
9750}
9751
9752package android.net.util {
9753
9754  public final class SocketUtils {
9755    method public static void bindSocketToInterface(@NonNull java.io.FileDescriptor, @NonNull String) throws android.system.ErrnoException;
9756    method public static void closeSocket(@Nullable java.io.FileDescriptor) throws java.io.IOException;
9757    method @NonNull public static java.net.SocketAddress makeNetlinkSocketAddress(int, int);
9758    method @NonNull public static java.net.SocketAddress makePacketSocketAddress(int, int);
9759    method @Deprecated @NonNull public static java.net.SocketAddress makePacketSocketAddress(int, @NonNull byte[]);
9760    method @NonNull public static java.net.SocketAddress makePacketSocketAddress(int, int, @NonNull byte[]);
9761  }
9762
9763}
9764
9765package android.net.vcn {
9766
9767  public class VcnManager {
9768    method @RequiresPermission(android.Manifest.permission.NETWORK_FACTORY) public void addVcnNetworkPolicyChangeListener(@NonNull java.util.concurrent.Executor, @NonNull android.net.vcn.VcnManager.VcnNetworkPolicyChangeListener);
9769    method @NonNull @RequiresPermission(android.Manifest.permission.NETWORK_FACTORY) public android.net.vcn.VcnNetworkPolicyResult applyVcnNetworkPolicy(@NonNull android.net.NetworkCapabilities, @NonNull android.net.LinkProperties);
9770    method @RequiresPermission(android.Manifest.permission.NETWORK_FACTORY) public void removeVcnNetworkPolicyChangeListener(@NonNull android.net.vcn.VcnManager.VcnNetworkPolicyChangeListener);
9771  }
9772
9773  public static interface VcnManager.VcnNetworkPolicyChangeListener {
9774    method public void onPolicyChanged();
9775  }
9776
9777  public final class VcnNetworkPolicyResult implements android.os.Parcelable {
9778    method public int describeContents();
9779    method @NonNull public android.net.NetworkCapabilities getNetworkCapabilities();
9780    method public boolean isTeardownRequested();
9781    method public void writeToParcel(@NonNull android.os.Parcel, int);
9782    field @NonNull public static final android.os.Parcelable.Creator<android.net.vcn.VcnNetworkPolicyResult> CREATOR;
9783  }
9784
9785}
9786
9787package android.net.wifi {
9788
9789  public final class WifiMigration {
9790    method @Nullable public static java.io.InputStream convertAndRetrieveSharedConfigStoreFile(int);
9791    method @Nullable public static java.io.InputStream convertAndRetrieveUserConfigStoreFile(int, @NonNull android.os.UserHandle);
9792    method @NonNull public static android.net.wifi.WifiMigration.SettingsMigrationData loadFromSettings(@NonNull android.content.Context);
9793    method public static void removeSharedConfigStoreFile(int);
9794    method public static void removeUserConfigStoreFile(int, @NonNull android.os.UserHandle);
9795    field public static final int STORE_FILE_SHARED_GENERAL = 0; // 0x0
9796    field public static final int STORE_FILE_SHARED_SOFTAP = 1; // 0x1
9797    field public static final int STORE_FILE_USER_GENERAL = 2; // 0x2
9798    field public static final int STORE_FILE_USER_NETWORK_SUGGESTIONS = 3; // 0x3
9799  }
9800
9801  public static final class WifiMigration.SettingsMigrationData implements android.os.Parcelable {
9802    method public int describeContents();
9803    method @Nullable public String getP2pDeviceName();
9804    method public boolean isP2pFactoryResetPending();
9805    method public boolean isScanAlwaysAvailable();
9806    method public boolean isScanThrottleEnabled();
9807    method public boolean isSoftApTimeoutEnabled();
9808    method public boolean isVerboseLoggingEnabled();
9809    method public boolean isWakeUpEnabled();
9810    method public void writeToParcel(@NonNull android.os.Parcel, int);
9811    field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.WifiMigration.SettingsMigrationData> CREATOR;
9812  }
9813
9814  public static final class WifiMigration.SettingsMigrationData.Builder {
9815    ctor public WifiMigration.SettingsMigrationData.Builder();
9816    method @NonNull public android.net.wifi.WifiMigration.SettingsMigrationData build();
9817    method @NonNull public android.net.wifi.WifiMigration.SettingsMigrationData.Builder setP2pDeviceName(@Nullable String);
9818    method @NonNull public android.net.wifi.WifiMigration.SettingsMigrationData.Builder setP2pFactoryResetPending(boolean);
9819    method @NonNull public android.net.wifi.WifiMigration.SettingsMigrationData.Builder setScanAlwaysAvailable(boolean);
9820    method @NonNull public android.net.wifi.WifiMigration.SettingsMigrationData.Builder setScanThrottleEnabled(boolean);
9821    method @NonNull public android.net.wifi.WifiMigration.SettingsMigrationData.Builder setSoftApTimeoutEnabled(boolean);
9822    method @NonNull public android.net.wifi.WifiMigration.SettingsMigrationData.Builder setVerboseLoggingEnabled(boolean);
9823    method @NonNull public android.net.wifi.WifiMigration.SettingsMigrationData.Builder setWakeUpEnabled(boolean);
9824  }
9825
9826}
9827
9828package android.net.wifi.nl80211 {
9829
9830  public final class DeviceWiphyCapabilities implements android.os.Parcelable {
9831    ctor public DeviceWiphyCapabilities();
9832    method public int describeContents();
9833    method public int getMaxNumberRxSpatialStreams();
9834    method public int getMaxNumberTxSpatialStreams();
9835    method public boolean isChannelWidthSupported(int);
9836    method public boolean isWifiStandardSupported(int);
9837    method public void setWifiStandardSupport(int, boolean);
9838    method public void writeToParcel(@NonNull android.os.Parcel, int);
9839    field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.nl80211.DeviceWiphyCapabilities> CREATOR;
9840  }
9841
9842  public final class NativeScanResult implements android.os.Parcelable {
9843    ctor public NativeScanResult();
9844    method public int describeContents();
9845    method @Nullable public android.net.MacAddress getBssid();
9846    method public int getCapabilities();
9847    method public int getFrequencyMhz();
9848    method @NonNull public byte[] getInformationElements();
9849    method @NonNull public java.util.List<android.net.wifi.nl80211.RadioChainInfo> getRadioChainInfos();
9850    method public int getSignalMbm();
9851    method @NonNull public byte[] getSsid();
9852    method public long getTsf();
9853    method public boolean isAssociated();
9854    method public void writeToParcel(@NonNull android.os.Parcel, int);
9855    field public static final int BSS_CAPABILITY_APSD = 2048; // 0x800
9856    field public static final int BSS_CAPABILITY_CF_POLLABLE = 4; // 0x4
9857    field public static final int BSS_CAPABILITY_CF_POLL_REQUEST = 8; // 0x8
9858    field public static final int BSS_CAPABILITY_CHANNEL_AGILITY = 128; // 0x80
9859    field public static final int BSS_CAPABILITY_DELAYED_BLOCK_ACK = 16384; // 0x4000
9860    field public static final int BSS_CAPABILITY_DMG_ESS = 3; // 0x3
9861    field public static final int BSS_CAPABILITY_DMG_IBSS = 1; // 0x1
9862    field public static final int BSS_CAPABILITY_DSSS_OFDM = 8192; // 0x2000
9863    field public static final int BSS_CAPABILITY_ESS = 1; // 0x1
9864    field public static final int BSS_CAPABILITY_IBSS = 2; // 0x2
9865    field public static final int BSS_CAPABILITY_IMMEDIATE_BLOCK_ACK = 32768; // 0x8000
9866    field public static final int BSS_CAPABILITY_PBCC = 64; // 0x40
9867    field public static final int BSS_CAPABILITY_PRIVACY = 16; // 0x10
9868    field public static final int BSS_CAPABILITY_QOS = 512; // 0x200
9869    field public static final int BSS_CAPABILITY_RADIO_MANAGEMENT = 4096; // 0x1000
9870    field public static final int BSS_CAPABILITY_SHORT_PREAMBLE = 32; // 0x20
9871    field public static final int BSS_CAPABILITY_SHORT_SLOT_TIME = 1024; // 0x400
9872    field public static final int BSS_CAPABILITY_SPECTRUM_MANAGEMENT = 256; // 0x100
9873    field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.nl80211.NativeScanResult> CREATOR;
9874  }
9875
9876  public final class NativeWifiClient implements android.os.Parcelable {
9877    ctor public NativeWifiClient(@Nullable android.net.MacAddress);
9878    method public int describeContents();
9879    method @Nullable public android.net.MacAddress getMacAddress();
9880    method public void writeToParcel(@NonNull android.os.Parcel, int);
9881    field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.nl80211.NativeWifiClient> CREATOR;
9882  }
9883
9884  public final class PnoNetwork implements android.os.Parcelable {
9885    ctor public PnoNetwork();
9886    method public int describeContents();
9887    method @NonNull public int[] getFrequenciesMhz();
9888    method @NonNull public byte[] getSsid();
9889    method public boolean isHidden();
9890    method public void setFrequenciesMhz(@NonNull int[]);
9891    method public void setHidden(boolean);
9892    method public void setSsid(@NonNull byte[]);
9893    method public void writeToParcel(@NonNull android.os.Parcel, int);
9894    field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.nl80211.PnoNetwork> CREATOR;
9895  }
9896
9897  public final class PnoSettings implements android.os.Parcelable {
9898    ctor public PnoSettings();
9899    method public int describeContents();
9900    method public long getIntervalMillis();
9901    method public int getMin2gRssiDbm();
9902    method public int getMin5gRssiDbm();
9903    method public int getMin6gRssiDbm();
9904    method @NonNull public java.util.List<android.net.wifi.nl80211.PnoNetwork> getPnoNetworks();
9905    method public int getScanIntervalMultiplier();
9906    method public int getScanIterations();
9907    method public void setIntervalMillis(long);
9908    method public void setMin2gRssiDbm(int);
9909    method public void setMin5gRssiDbm(int);
9910    method public void setMin6gRssiDbm(int);
9911    method public void setPnoNetworks(@NonNull java.util.List<android.net.wifi.nl80211.PnoNetwork>);
9912    method public void setScanIntervalMultiplier(int);
9913    method public void setScanIterations(int);
9914    method public void writeToParcel(@NonNull android.os.Parcel, int);
9915    field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.nl80211.PnoSettings> CREATOR;
9916  }
9917
9918  public final class RadioChainInfo implements android.os.Parcelable {
9919    ctor public RadioChainInfo(int, int);
9920    method public int describeContents();
9921    method public int getChainId();
9922    method public int getLevelDbm();
9923    method public void writeToParcel(@NonNull android.os.Parcel, int);
9924    field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.nl80211.RadioChainInfo> CREATOR;
9925  }
9926
9927  public class WifiNl80211Manager {
9928    ctor public WifiNl80211Manager(@NonNull android.content.Context, @NonNull android.os.IBinder);
9929    method public void abortScan(@NonNull String);
9930    method public void enableVerboseLogging(boolean);
9931    method @NonNull public int[] getChannelsMhzForBand(int);
9932    method @Nullable public android.net.wifi.nl80211.DeviceWiphyCapabilities getDeviceWiphyCapabilities(@NonNull String);
9933    method public int getMaxSsidsPerScan(@NonNull String);
9934    method @NonNull public java.util.List<android.net.wifi.nl80211.NativeScanResult> getScanResults(@NonNull String, int);
9935    method @Nullable public android.net.wifi.nl80211.WifiNl80211Manager.TxPacketCounters getTxPacketCounters(@NonNull String);
9936    method public void notifyCountryCodeChanged(@Nullable String);
9937    method @Nullable public static android.net.wifi.nl80211.WifiNl80211Manager.OemSecurityType parseOemSecurityTypeElement(int, int, @NonNull byte[]);
9938    method @Deprecated public boolean registerApCallback(@NonNull String, @NonNull java.util.concurrent.Executor, @NonNull android.net.wifi.nl80211.WifiNl80211Manager.SoftApCallback);
9939    method public boolean registerCountryCodeChangedListener(@NonNull java.util.concurrent.Executor, @NonNull android.net.wifi.nl80211.WifiNl80211Manager.CountryCodeChangedListener);
9940    method public void sendMgmtFrame(@NonNull String, @NonNull byte[], int, @NonNull java.util.concurrent.Executor, @NonNull android.net.wifi.nl80211.WifiNl80211Manager.SendMgmtFrameCallback);
9941    method public void setOnServiceDeadCallback(@NonNull Runnable);
9942    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);
9943    method public boolean setupInterfaceForSoftApMode(@NonNull String);
9944    method @Deprecated @Nullable public android.net.wifi.nl80211.WifiNl80211Manager.SignalPollResult signalPoll(@NonNull String);
9945    method public boolean startPnoScan(@NonNull String, @NonNull android.net.wifi.nl80211.PnoSettings, @NonNull java.util.concurrent.Executor, @NonNull android.net.wifi.nl80211.WifiNl80211Manager.PnoScanRequestCallback);
9946    method @Deprecated public boolean startScan(@NonNull String, int, @Nullable java.util.Set<java.lang.Integer>, @Nullable java.util.List<byte[]>);
9947    method @Deprecated public boolean startScan(@NonNull String, int, @Nullable java.util.Set<java.lang.Integer>, @Nullable java.util.List<byte[]>, @Nullable android.os.Bundle);
9948    method public int startScan2(@NonNull String, int, @Nullable java.util.Set<java.lang.Integer>, @Nullable java.util.List<byte[]>, @Nullable android.os.Bundle);
9949    method public boolean stopPnoScan(@NonNull String);
9950    method public boolean tearDownClientInterface(@NonNull String);
9951    method public boolean tearDownInterfaces();
9952    method public boolean tearDownSoftApInterface(@NonNull String);
9953    method public void unregisterCountryCodeChangedListener(@NonNull android.net.wifi.nl80211.WifiNl80211Manager.CountryCodeChangedListener);
9954    field public static final String EXTRA_SCANNING_PARAM_VENDOR_IES = "android.net.wifi.nl80211.extra.SCANNING_PARAM_VENDOR_IES";
9955    field public static final String SCANNING_PARAM_ENABLE_6GHZ_RNR = "android.net.wifi.nl80211.SCANNING_PARAM_ENABLE_6GHZ_RNR";
9956    field public static final int SCAN_TYPE_PNO_SCAN = 1; // 0x1
9957    field public static final int SCAN_TYPE_SINGLE_SCAN = 0; // 0x0
9958    field public static final int SEND_MGMT_FRAME_ERROR_ALREADY_STARTED = 5; // 0x5
9959    field public static final int SEND_MGMT_FRAME_ERROR_MCS_UNSUPPORTED = 2; // 0x2
9960    field public static final int SEND_MGMT_FRAME_ERROR_NO_ACK = 3; // 0x3
9961    field public static final int SEND_MGMT_FRAME_ERROR_TIMEOUT = 4; // 0x4
9962    field public static final int SEND_MGMT_FRAME_ERROR_UNKNOWN = 1; // 0x1
9963  }
9964
9965  public static interface WifiNl80211Manager.CountryCodeChangedListener {
9966    method public void onCountryCodeChanged(@NonNull String);
9967  }
9968
9969  public static class WifiNl80211Manager.OemSecurityType {
9970    ctor public WifiNl80211Manager.OemSecurityType(int, @NonNull java.util.List<java.lang.Integer>, @NonNull java.util.List<java.lang.Integer>, int);
9971    field public final int groupCipher;
9972    field @NonNull public final java.util.List<java.lang.Integer> keyManagement;
9973    field @NonNull public final java.util.List<java.lang.Integer> pairwiseCipher;
9974    field public final int protocol;
9975  }
9976
9977  public static interface WifiNl80211Manager.PnoScanRequestCallback {
9978    method public void onPnoRequestFailed();
9979    method public void onPnoRequestSucceeded();
9980  }
9981
9982  public static interface WifiNl80211Manager.ScanEventCallback {
9983    method @Deprecated public void onScanFailed();
9984    method public default void onScanFailed(int);
9985    method public void onScanResultReady();
9986  }
9987
9988  public static interface WifiNl80211Manager.SendMgmtFrameCallback {
9989    method public void onAck(int);
9990    method public void onFailure(int);
9991  }
9992
9993  @Deprecated public static class WifiNl80211Manager.SignalPollResult {
9994    field @Deprecated public final int associationFrequencyMHz;
9995    field @Deprecated public final int currentRssiDbm;
9996    field @Deprecated public final int rxBitrateMbps;
9997    field @Deprecated public final int txBitrateMbps;
9998  }
9999
10000  @Deprecated public static interface WifiNl80211Manager.SoftApCallback {
10001    method @Deprecated public void onConnectedClientsChanged(@NonNull android.net.wifi.nl80211.NativeWifiClient, boolean);
10002    method @Deprecated public void onFailure();
10003    method @Deprecated public void onSoftApChannelSwitched(int, int);
10004  }
10005
10006  public static class WifiNl80211Manager.TxPacketCounters {
10007    field public final int txPacketFailed;
10008    field public final int txPacketSucceeded;
10009  }
10010
10011}
10012
10013package android.net.wifi.sharedconnectivity.app {
10014
10015  public final class HotspotNetwork implements android.os.Parcelable {
10016    method public int describeContents();
10017    method public long getDeviceId();
10018    method @NonNull public android.os.Bundle getExtras();
10019    method public int getHostNetworkType();
10020    method @Nullable public String getHotspotBssid();
10021    method @NonNull public java.util.Set<java.lang.Integer> getHotspotSecurityTypes();
10022    method @Nullable public String getHotspotSsid();
10023    method @NonNull public String getNetworkName();
10024    method @NonNull public android.net.wifi.sharedconnectivity.app.NetworkProviderInfo getNetworkProviderInfo();
10025    method public void writeToParcel(@NonNull android.os.Parcel, int);
10026    field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.sharedconnectivity.app.HotspotNetwork> CREATOR;
10027    field public static final int NETWORK_TYPE_CELLULAR = 1; // 0x1
10028    field public static final int NETWORK_TYPE_ETHERNET = 3; // 0x3
10029    field public static final int NETWORK_TYPE_UNKNOWN = 0; // 0x0
10030    field public static final int NETWORK_TYPE_WIFI = 2; // 0x2
10031  }
10032
10033  public static final class HotspotNetwork.Builder {
10034    ctor public HotspotNetwork.Builder();
10035    method @NonNull public android.net.wifi.sharedconnectivity.app.HotspotNetwork.Builder addHotspotSecurityType(int);
10036    method @NonNull public android.net.wifi.sharedconnectivity.app.HotspotNetwork build();
10037    method @NonNull public android.net.wifi.sharedconnectivity.app.HotspotNetwork.Builder setDeviceId(long);
10038    method @NonNull public android.net.wifi.sharedconnectivity.app.HotspotNetwork.Builder setExtras(@NonNull android.os.Bundle);
10039    method @NonNull public android.net.wifi.sharedconnectivity.app.HotspotNetwork.Builder setHostNetworkType(int);
10040    method @NonNull public android.net.wifi.sharedconnectivity.app.HotspotNetwork.Builder setHotspotBssid(@NonNull String);
10041    method @NonNull public android.net.wifi.sharedconnectivity.app.HotspotNetwork.Builder setHotspotSsid(@NonNull String);
10042    method @NonNull public android.net.wifi.sharedconnectivity.app.HotspotNetwork.Builder setNetworkName(@NonNull String);
10043    method @NonNull public android.net.wifi.sharedconnectivity.app.HotspotNetwork.Builder setNetworkProviderInfo(@NonNull android.net.wifi.sharedconnectivity.app.NetworkProviderInfo);
10044  }
10045
10046  public final class HotspotNetworkConnectionStatus implements android.os.Parcelable {
10047    method public int describeContents();
10048    method @NonNull public android.os.Bundle getExtras();
10049    method @NonNull public android.net.wifi.sharedconnectivity.app.HotspotNetwork getHotspotNetwork();
10050    method public int getStatus();
10051    method public void writeToParcel(@NonNull android.os.Parcel, int);
10052    field public static final int CONNECTION_STATUS_CONNECT_TO_HOTSPOT_FAILED = 9; // 0x9
10053    field public static final int CONNECTION_STATUS_ENABLING_HOTSPOT = 1; // 0x1
10054    field public static final int CONNECTION_STATUS_ENABLING_HOTSPOT_FAILED = 7; // 0x7
10055    field public static final int CONNECTION_STATUS_ENABLING_HOTSPOT_TIMEOUT = 8; // 0x8
10056    field public static final int CONNECTION_STATUS_NO_CELL_DATA = 6; // 0x6
10057    field public static final int CONNECTION_STATUS_PROVISIONING_FAILED = 3; // 0x3
10058    field public static final int CONNECTION_STATUS_TETHERING_TIMEOUT = 4; // 0x4
10059    field public static final int CONNECTION_STATUS_TETHERING_UNSUPPORTED = 5; // 0x5
10060    field public static final int CONNECTION_STATUS_UNKNOWN = 0; // 0x0
10061    field public static final int CONNECTION_STATUS_UNKNOWN_ERROR = 2; // 0x2
10062    field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.sharedconnectivity.app.HotspotNetworkConnectionStatus> CREATOR;
10063  }
10064
10065  public static final class HotspotNetworkConnectionStatus.Builder {
10066    ctor public HotspotNetworkConnectionStatus.Builder();
10067    method @NonNull public android.net.wifi.sharedconnectivity.app.HotspotNetworkConnectionStatus build();
10068    method @NonNull public android.net.wifi.sharedconnectivity.app.HotspotNetworkConnectionStatus.Builder setExtras(@NonNull android.os.Bundle);
10069    method @NonNull public android.net.wifi.sharedconnectivity.app.HotspotNetworkConnectionStatus.Builder setHotspotNetwork(@NonNull android.net.wifi.sharedconnectivity.app.HotspotNetwork);
10070    method @NonNull public android.net.wifi.sharedconnectivity.app.HotspotNetworkConnectionStatus.Builder setStatus(int);
10071  }
10072
10073  public final class KnownNetwork implements android.os.Parcelable {
10074    method public int describeContents();
10075    method @NonNull public android.os.Bundle getExtras();
10076    method @Nullable public android.net.wifi.sharedconnectivity.app.NetworkProviderInfo getNetworkProviderInfo();
10077    method public int getNetworkSource();
10078    method @NonNull public java.util.Set<java.lang.Integer> getSecurityTypes();
10079    method @NonNull public String getSsid();
10080    method public void writeToParcel(@NonNull android.os.Parcel, int);
10081    field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.sharedconnectivity.app.KnownNetwork> CREATOR;
10082    field public static final int NETWORK_SOURCE_CLOUD_SELF = 2; // 0x2
10083    field public static final int NETWORK_SOURCE_NEARBY_SELF = 1; // 0x1
10084    field public static final int NETWORK_SOURCE_UNKNOWN = 0; // 0x0
10085  }
10086
10087  public static final class KnownNetwork.Builder {
10088    ctor public KnownNetwork.Builder();
10089    method @NonNull public android.net.wifi.sharedconnectivity.app.KnownNetwork.Builder addSecurityType(int);
10090    method @NonNull public android.net.wifi.sharedconnectivity.app.KnownNetwork build();
10091    method @NonNull public android.net.wifi.sharedconnectivity.app.KnownNetwork.Builder setExtras(@NonNull android.os.Bundle);
10092    method @NonNull public android.net.wifi.sharedconnectivity.app.KnownNetwork.Builder setNetworkProviderInfo(@Nullable android.net.wifi.sharedconnectivity.app.NetworkProviderInfo);
10093    method @NonNull public android.net.wifi.sharedconnectivity.app.KnownNetwork.Builder setNetworkSource(int);
10094    method @NonNull public android.net.wifi.sharedconnectivity.app.KnownNetwork.Builder setSsid(@NonNull String);
10095  }
10096
10097  public final class KnownNetworkConnectionStatus implements android.os.Parcelable {
10098    method public int describeContents();
10099    method @NonNull public android.os.Bundle getExtras();
10100    method @NonNull public android.net.wifi.sharedconnectivity.app.KnownNetwork getKnownNetwork();
10101    method public int getStatus();
10102    method public void writeToParcel(@NonNull android.os.Parcel, int);
10103    field public static final int CONNECTION_STATUS_SAVED = 1; // 0x1
10104    field public static final int CONNECTION_STATUS_SAVE_FAILED = 2; // 0x2
10105    field public static final int CONNECTION_STATUS_UNKNOWN = 0; // 0x0
10106    field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.sharedconnectivity.app.KnownNetworkConnectionStatus> CREATOR;
10107  }
10108
10109  public static final class KnownNetworkConnectionStatus.Builder {
10110    ctor public KnownNetworkConnectionStatus.Builder();
10111    method @NonNull public android.net.wifi.sharedconnectivity.app.KnownNetworkConnectionStatus build();
10112    method @NonNull public android.net.wifi.sharedconnectivity.app.KnownNetworkConnectionStatus.Builder setExtras(@NonNull android.os.Bundle);
10113    method @NonNull public android.net.wifi.sharedconnectivity.app.KnownNetworkConnectionStatus.Builder setKnownNetwork(@NonNull android.net.wifi.sharedconnectivity.app.KnownNetwork);
10114    method @NonNull public android.net.wifi.sharedconnectivity.app.KnownNetworkConnectionStatus.Builder setStatus(int);
10115  }
10116
10117  public final class NetworkProviderInfo implements android.os.Parcelable {
10118    method public int describeContents();
10119    method @IntRange(from=0, to=100) public int getBatteryPercentage();
10120    method @IntRange(from=0, to=4) public int getConnectionStrength();
10121    method @NonNull public String getDeviceName();
10122    method public int getDeviceType();
10123    method @NonNull public android.os.Bundle getExtras();
10124    method @NonNull public String getModelName();
10125    method public void writeToParcel(@NonNull android.os.Parcel, int);
10126    field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.sharedconnectivity.app.NetworkProviderInfo> CREATOR;
10127    field public static final int DEVICE_TYPE_AUTO = 5; // 0x5
10128    field public static final int DEVICE_TYPE_LAPTOP = 3; // 0x3
10129    field public static final int DEVICE_TYPE_PHONE = 1; // 0x1
10130    field public static final int DEVICE_TYPE_TABLET = 2; // 0x2
10131    field public static final int DEVICE_TYPE_UNKNOWN = 0; // 0x0
10132    field public static final int DEVICE_TYPE_WATCH = 4; // 0x4
10133  }
10134
10135  public static final class NetworkProviderInfo.Builder {
10136    ctor public NetworkProviderInfo.Builder(@NonNull String, @NonNull String);
10137    method @NonNull public android.net.wifi.sharedconnectivity.app.NetworkProviderInfo build();
10138    method @NonNull public android.net.wifi.sharedconnectivity.app.NetworkProviderInfo.Builder setBatteryPercentage(@IntRange(from=0, to=100) int);
10139    method @NonNull public android.net.wifi.sharedconnectivity.app.NetworkProviderInfo.Builder setConnectionStrength(@IntRange(from=0, to=4) int);
10140    method @NonNull public android.net.wifi.sharedconnectivity.app.NetworkProviderInfo.Builder setDeviceName(@NonNull String);
10141    method @NonNull public android.net.wifi.sharedconnectivity.app.NetworkProviderInfo.Builder setDeviceType(int);
10142    method @NonNull public android.net.wifi.sharedconnectivity.app.NetworkProviderInfo.Builder setExtras(@NonNull android.os.Bundle);
10143    method @NonNull public android.net.wifi.sharedconnectivity.app.NetworkProviderInfo.Builder setModelName(@NonNull String);
10144  }
10145
10146  public interface SharedConnectivityClientCallback {
10147    method public void onHotspotNetworkConnectionStatusChanged(@NonNull android.net.wifi.sharedconnectivity.app.HotspotNetworkConnectionStatus);
10148    method public void onHotspotNetworksUpdated(@NonNull java.util.List<android.net.wifi.sharedconnectivity.app.HotspotNetwork>);
10149    method public void onKnownNetworkConnectionStatusChanged(@NonNull android.net.wifi.sharedconnectivity.app.KnownNetworkConnectionStatus);
10150    method public void onKnownNetworksUpdated(@NonNull java.util.List<android.net.wifi.sharedconnectivity.app.KnownNetwork>);
10151    method public void onRegisterCallbackFailed(@NonNull Exception);
10152    method public void onServiceConnected();
10153    method public void onServiceDisconnected();
10154    method public void onSharedConnectivitySettingsChanged(@NonNull android.net.wifi.sharedconnectivity.app.SharedConnectivitySettingsState);
10155  }
10156
10157  public class SharedConnectivityManager {
10158    method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD}) public boolean connectHotspotNetwork(@NonNull android.net.wifi.sharedconnectivity.app.HotspotNetwork);
10159    method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD}) public boolean connectKnownNetwork(@NonNull android.net.wifi.sharedconnectivity.app.KnownNetwork);
10160    method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD}) public boolean disconnectHotspotNetwork(@NonNull android.net.wifi.sharedconnectivity.app.HotspotNetwork);
10161    method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD}) public boolean forgetKnownNetwork(@NonNull android.net.wifi.sharedconnectivity.app.KnownNetwork);
10162    method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD}) public android.net.wifi.sharedconnectivity.app.HotspotNetworkConnectionStatus getHotspotNetworkConnectionStatus();
10163    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();
10164    method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD}) public android.net.wifi.sharedconnectivity.app.KnownNetworkConnectionStatus getKnownNetworkConnectionStatus();
10165    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();
10166    method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD}) public android.net.wifi.sharedconnectivity.app.SharedConnectivitySettingsState getSettingsState();
10167    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);
10168    method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD}) public boolean unregisterCallback(@NonNull android.net.wifi.sharedconnectivity.app.SharedConnectivityClientCallback);
10169  }
10170
10171  public final class SharedConnectivitySettingsState implements android.os.Parcelable {
10172    method public int describeContents();
10173    method @NonNull public android.os.Bundle getExtras();
10174    method @Nullable public android.app.PendingIntent getInstantTetherSettingsPendingIntent();
10175    method public boolean isInstantTetherEnabled();
10176    method public void writeToParcel(@NonNull android.os.Parcel, int);
10177    field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.sharedconnectivity.app.SharedConnectivitySettingsState> CREATOR;
10178  }
10179
10180  public static final class SharedConnectivitySettingsState.Builder {
10181    ctor public SharedConnectivitySettingsState.Builder();
10182    method @NonNull public android.net.wifi.sharedconnectivity.app.SharedConnectivitySettingsState build();
10183    method @NonNull public android.net.wifi.sharedconnectivity.app.SharedConnectivitySettingsState.Builder setExtras(@NonNull android.os.Bundle);
10184    method @NonNull public android.net.wifi.sharedconnectivity.app.SharedConnectivitySettingsState.Builder setInstantTetherEnabled(boolean);
10185    method @NonNull public android.net.wifi.sharedconnectivity.app.SharedConnectivitySettingsState.Builder setInstantTetherSettingsPendingIntent(@NonNull android.app.PendingIntent);
10186  }
10187
10188}
10189
10190package android.net.wifi.sharedconnectivity.service {
10191
10192  public abstract class SharedConnectivityService extends android.app.Service {
10193    ctor public SharedConnectivityService();
10194    method public static boolean areHotspotNetworksEnabledForService(@NonNull android.content.Context);
10195    method public static boolean areKnownNetworksEnabledForService(@NonNull android.content.Context);
10196    method @Nullable public final android.os.IBinder onBind(@NonNull android.content.Intent);
10197    method public abstract void onConnectHotspotNetwork(@NonNull android.net.wifi.sharedconnectivity.app.HotspotNetwork);
10198    method public abstract void onConnectKnownNetwork(@NonNull android.net.wifi.sharedconnectivity.app.KnownNetwork);
10199    method public abstract void onDisconnectHotspotNetwork(@NonNull android.net.wifi.sharedconnectivity.app.HotspotNetwork);
10200    method public abstract void onForgetKnownNetwork(@NonNull android.net.wifi.sharedconnectivity.app.KnownNetwork);
10201    method public final void setHotspotNetworks(@NonNull java.util.List<android.net.wifi.sharedconnectivity.app.HotspotNetwork>);
10202    method public final void setKnownNetworks(@NonNull java.util.List<android.net.wifi.sharedconnectivity.app.KnownNetwork>);
10203    method public final void setSettingsState(@NonNull android.net.wifi.sharedconnectivity.app.SharedConnectivitySettingsState);
10204    method public final void updateHotspotNetworkConnectionStatus(@NonNull android.net.wifi.sharedconnectivity.app.HotspotNetworkConnectionStatus);
10205    method public final void updateKnownNetworkConnectionStatus(@NonNull android.net.wifi.sharedconnectivity.app.KnownNetworkConnectionStatus);
10206  }
10207
10208}
10209
10210package android.nfc {
10211
10212  public final class NfcAdapter {
10213    method @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public boolean addNfcUnlockHandler(android.nfc.NfcAdapter.NfcUnlockHandler, String[]);
10214    method @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public boolean disable();
10215    method @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public boolean disable(boolean);
10216    method @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public boolean enable();
10217    method @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public boolean enableSecureNfc(boolean);
10218    method @NonNull @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public java.util.Map<java.lang.String,java.lang.Boolean> getTagIntentAppPreferenceForUser(int);
10219    method @RequiresPermission(android.Manifest.permission.NFC_SET_CONTROLLER_ALWAYS_ON) public boolean isControllerAlwaysOn();
10220    method @RequiresPermission(android.Manifest.permission.NFC_SET_CONTROLLER_ALWAYS_ON) public boolean isControllerAlwaysOnSupported();
10221    method @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public boolean isTagIntentAppPreferenceSupported();
10222    method @RequiresPermission(android.Manifest.permission.NFC_SET_CONTROLLER_ALWAYS_ON) public void registerControllerAlwaysOnListener(@NonNull java.util.concurrent.Executor, @NonNull android.nfc.NfcAdapter.ControllerAlwaysOnListener);
10223    method @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public boolean removeNfcUnlockHandler(android.nfc.NfcAdapter.NfcUnlockHandler);
10224    method @RequiresPermission(android.Manifest.permission.NFC_SET_CONTROLLER_ALWAYS_ON) public boolean setControllerAlwaysOn(boolean);
10225    method @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public int setTagIntentAppPreferenceForUser(int, @NonNull String, boolean);
10226    method @RequiresPermission(android.Manifest.permission.NFC_SET_CONTROLLER_ALWAYS_ON) public void unregisterControllerAlwaysOnListener(@NonNull android.nfc.NfcAdapter.ControllerAlwaysOnListener);
10227    field public static final int TAG_INTENT_APP_PREF_RESULT_PACKAGE_NOT_FOUND = -1; // 0xffffffff
10228    field public static final int TAG_INTENT_APP_PREF_RESULT_SUCCESS = 0; // 0x0
10229    field public static final int TAG_INTENT_APP_PREF_RESULT_UNAVAILABLE = -2; // 0xfffffffe
10230  }
10231
10232  public static interface NfcAdapter.ControllerAlwaysOnListener {
10233    method public void onControllerAlwaysOnChanged(boolean);
10234  }
10235
10236  public static interface NfcAdapter.NfcUnlockHandler {
10237    method public boolean onUnlockAttempted(android.nfc.Tag);
10238  }
10239
10240}
10241
10242package android.os {
10243
10244  public class BatteryManager {
10245    method @RequiresPermission(android.Manifest.permission.POWER_SAVER) public boolean setChargingStateUpdateDelayMillis(int);
10246    field @RequiresPermission(android.Manifest.permission.BATTERY_STATS) public static final int BATTERY_PROPERTY_CHARGING_POLICY = 9; // 0x9
10247    field @RequiresPermission(android.Manifest.permission.BATTERY_STATS) public static final int BATTERY_PROPERTY_FIRST_USAGE_DATE = 8; // 0x8
10248    field @RequiresPermission(android.Manifest.permission.BATTERY_STATS) public static final int BATTERY_PROPERTY_MANUFACTURING_DATE = 7; // 0x7
10249    field @RequiresPermission(android.Manifest.permission.BATTERY_STATS) public static final int BATTERY_PROPERTY_STATE_OF_HEALTH = 10; // 0xa
10250    field public static final int CHARGING_POLICY_ADAPTIVE_AC = 3; // 0x3
10251    field public static final int CHARGING_POLICY_ADAPTIVE_AON = 2; // 0x2
10252    field public static final int CHARGING_POLICY_ADAPTIVE_LONGLIFE = 4; // 0x4
10253    field public static final int CHARGING_POLICY_DEFAULT = 1; // 0x1
10254    field public static final String EXTRA_EVENTS = "android.os.extra.EVENTS";
10255    field public static final String EXTRA_EVENT_TIMESTAMP = "android.os.extra.EVENT_TIMESTAMP";
10256  }
10257
10258  public final class BatterySaverPolicyConfig implements android.os.Parcelable {
10259    method public int describeContents();
10260    method public float getAdjustBrightnessFactor();
10261    method public boolean getAdvertiseIsEnabled();
10262    method public boolean getDeferFullBackup();
10263    method public boolean getDeferKeyValueBackup();
10264    method @NonNull public java.util.Map<java.lang.String,java.lang.String> getDeviceSpecificSettings();
10265    method public boolean getDisableAnimation();
10266    method public boolean getDisableAod();
10267    method public boolean getDisableLaunchBoost();
10268    method public boolean getDisableOptionalSensors();
10269    method @Deprecated public boolean getDisableSoundTrigger();
10270    method public boolean getDisableVibration();
10271    method public boolean getEnableAdjustBrightness();
10272    method public boolean getEnableDataSaver();
10273    method public boolean getEnableFirewall();
10274    method public boolean getEnableNightMode();
10275    method public boolean getEnableQuickDoze();
10276    method public boolean getForceAllAppsStandby();
10277    method public boolean getForceBackgroundCheck();
10278    method public int getLocationMode();
10279    method public int getSoundTriggerMode();
10280    method public void writeToParcel(android.os.Parcel, int);
10281    field @NonNull public static final android.os.Parcelable.Creator<android.os.BatterySaverPolicyConfig> CREATOR;
10282  }
10283
10284  public static final class BatterySaverPolicyConfig.Builder {
10285    ctor public BatterySaverPolicyConfig.Builder();
10286    ctor public BatterySaverPolicyConfig.Builder(@NonNull android.os.BatterySaverPolicyConfig);
10287    method @NonNull public android.os.BatterySaverPolicyConfig.Builder addDeviceSpecificSetting(@NonNull String, @NonNull String);
10288    method @NonNull public android.os.BatterySaverPolicyConfig build();
10289    method @NonNull public android.os.BatterySaverPolicyConfig.Builder setAdjustBrightnessFactor(float);
10290    method @NonNull public android.os.BatterySaverPolicyConfig.Builder setAdvertiseIsEnabled(boolean);
10291    method @NonNull public android.os.BatterySaverPolicyConfig.Builder setDeferFullBackup(boolean);
10292    method @NonNull public android.os.BatterySaverPolicyConfig.Builder setDeferKeyValueBackup(boolean);
10293    method @NonNull public android.os.BatterySaverPolicyConfig.Builder setDisableAnimation(boolean);
10294    method @NonNull public android.os.BatterySaverPolicyConfig.Builder setDisableAod(boolean);
10295    method @NonNull public android.os.BatterySaverPolicyConfig.Builder setDisableLaunchBoost(boolean);
10296    method @NonNull public android.os.BatterySaverPolicyConfig.Builder setDisableOptionalSensors(boolean);
10297    method @Deprecated @NonNull public android.os.BatterySaverPolicyConfig.Builder setDisableSoundTrigger(boolean);
10298    method @NonNull public android.os.BatterySaverPolicyConfig.Builder setDisableVibration(boolean);
10299    method @NonNull public android.os.BatterySaverPolicyConfig.Builder setEnableAdjustBrightness(boolean);
10300    method @NonNull public android.os.BatterySaverPolicyConfig.Builder setEnableDataSaver(boolean);
10301    method @NonNull public android.os.BatterySaverPolicyConfig.Builder setEnableFirewall(boolean);
10302    method @NonNull public android.os.BatterySaverPolicyConfig.Builder setEnableNightMode(boolean);
10303    method @NonNull public android.os.BatterySaverPolicyConfig.Builder setEnableQuickDoze(boolean);
10304    method @NonNull public android.os.BatterySaverPolicyConfig.Builder setForceAllAppsStandby(boolean);
10305    method @NonNull public android.os.BatterySaverPolicyConfig.Builder setForceBackgroundCheck(boolean);
10306    method @NonNull public android.os.BatterySaverPolicyConfig.Builder setLocationMode(int);
10307    method @NonNull public android.os.BatterySaverPolicyConfig.Builder setSoundTriggerMode(int);
10308  }
10309
10310  public final class BatteryStatsManager {
10311    method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.BATTERY_STATS, android.Manifest.permission.UPDATE_DEVICE_STATS}) public android.os.connectivity.CellularBatteryStats getCellularBatteryStats();
10312    method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.BATTERY_STATS, android.Manifest.permission.UPDATE_DEVICE_STATS}) public android.os.connectivity.WifiBatteryStats getWifiBatteryStats();
10313    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportBleScanReset();
10314    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportBleScanResults(@NonNull android.os.WorkSource, int);
10315    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportBleScanStarted(@NonNull android.os.WorkSource, boolean);
10316    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportBleScanStopped(@NonNull android.os.WorkSource, boolean);
10317    method @RequiresPermission(android.Manifest.permission.BLUETOOTH_CONNECT) public void reportBluetoothOff(int, int, @NonNull String);
10318    method @RequiresPermission(android.Manifest.permission.BLUETOOTH_CONNECT) public void reportBluetoothOn(int, int, @NonNull String);
10319    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportFullWifiLockAcquiredFromSource(@NonNull android.os.WorkSource);
10320    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportFullWifiLockReleasedFromSource(@NonNull android.os.WorkSource);
10321    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportMobileRadioPowerState(boolean, int);
10322    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportWifiBatchedScanStartedFromSource(@NonNull android.os.WorkSource, @IntRange(from=0) int);
10323    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportWifiBatchedScanStoppedFromSource(@NonNull android.os.WorkSource);
10324    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportWifiMulticastDisabled(@NonNull android.os.WorkSource);
10325    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportWifiMulticastEnabled(@NonNull android.os.WorkSource);
10326    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportWifiOff();
10327    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportWifiOn();
10328    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportWifiRadioPowerState(boolean, int);
10329    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportWifiRssiChanged(@IntRange(from=0xffffff81, to=0) int);
10330    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportWifiScanStartedFromSource(@NonNull android.os.WorkSource);
10331    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportWifiScanStoppedFromSource(@NonNull android.os.WorkSource);
10332    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportWifiState(int, @Nullable String);
10333    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportWifiSupplicantStateChanged(int, boolean);
10334    field public static final int WIFI_STATE_OFF = 0; // 0x0
10335    field public static final int WIFI_STATE_OFF_SCANNING = 1; // 0x1
10336    field public static final int WIFI_STATE_ON_CONNECTED_P2P = 5; // 0x5
10337    field public static final int WIFI_STATE_ON_CONNECTED_STA = 4; // 0x4
10338    field public static final int WIFI_STATE_ON_CONNECTED_STA_P2P = 6; // 0x6
10339    field public static final int WIFI_STATE_ON_DISCONNECTED = 3; // 0x3
10340    field public static final int WIFI_STATE_ON_NO_NETWORKS = 2; // 0x2
10341    field public static final int WIFI_STATE_SOFT_AP = 7; // 0x7
10342    field public static final int WIFI_SUPPL_STATE_ASSOCIATED = 7; // 0x7
10343    field public static final int WIFI_SUPPL_STATE_ASSOCIATING = 6; // 0x6
10344    field public static final int WIFI_SUPPL_STATE_AUTHENTICATING = 5; // 0x5
10345    field public static final int WIFI_SUPPL_STATE_COMPLETED = 10; // 0xa
10346    field public static final int WIFI_SUPPL_STATE_DISCONNECTED = 1; // 0x1
10347    field public static final int WIFI_SUPPL_STATE_DORMANT = 11; // 0xb
10348    field public static final int WIFI_SUPPL_STATE_FOUR_WAY_HANDSHAKE = 8; // 0x8
10349    field public static final int WIFI_SUPPL_STATE_GROUP_HANDSHAKE = 9; // 0x9
10350    field public static final int WIFI_SUPPL_STATE_INACTIVE = 3; // 0x3
10351    field public static final int WIFI_SUPPL_STATE_INTERFACE_DISABLED = 2; // 0x2
10352    field public static final int WIFI_SUPPL_STATE_INVALID = 0; // 0x0
10353    field public static final int WIFI_SUPPL_STATE_SCANNING = 4; // 0x4
10354    field public static final int WIFI_SUPPL_STATE_UNINITIALIZED = 12; // 0xc
10355  }
10356
10357  public class Binder implements android.os.IBinder {
10358    method public int handleShellCommand(@NonNull android.os.ParcelFileDescriptor, @NonNull android.os.ParcelFileDescriptor, @NonNull android.os.ParcelFileDescriptor, @NonNull String[]);
10359    method public final void markVintfStability();
10360    method public static void setProxyTransactListener(@Nullable android.os.Binder.ProxyTransactListener);
10361  }
10362
10363  public static interface Binder.ProxyTransactListener {
10364    method public void onTransactEnded(@Nullable Object);
10365    method @Nullable public Object onTransactStarted(@NonNull android.os.IBinder, int);
10366  }
10367
10368  public final class BugreportManager {
10369    method @RequiresPermission(android.Manifest.permission.DUMP) @WorkerThread public void preDumpUiData();
10370    method @RequiresPermission(android.Manifest.permission.DUMP) public void requestBugreport(@NonNull android.os.BugreportParams, @Nullable CharSequence, @Nullable CharSequence);
10371    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);
10372    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);
10373  }
10374
10375  public abstract static class BugreportManager.BugreportCallback {
10376    method public void onFinished(@NonNull String);
10377  }
10378
10379  public final class BugreportParams {
10380    ctor public BugreportParams(int);
10381    ctor public BugreportParams(int, int);
10382    method public int getFlags();
10383    method public int getMode();
10384    field public static final int BUGREPORT_FLAG_DEFER_CONSENT = 2; // 0x2
10385    field public static final int BUGREPORT_FLAG_USE_PREDUMPED_UI_DATA = 1; // 0x1
10386    field public static final int BUGREPORT_MODE_FULL = 0; // 0x0
10387    field public static final int BUGREPORT_MODE_INTERACTIVE = 1; // 0x1
10388    field public static final int BUGREPORT_MODE_REMOTE = 2; // 0x2
10389    field public static final int BUGREPORT_MODE_TELEPHONY = 4; // 0x4
10390    field public static final int BUGREPORT_MODE_WEAR = 3; // 0x3
10391    field public static final int BUGREPORT_MODE_WIFI = 5; // 0x5
10392  }
10393
10394  public static class Build.VERSION {
10395    field @NonNull public static final java.util.Set<java.lang.String> KNOWN_CODENAMES;
10396    field @NonNull public static final String PREVIEW_SDK_FINGERPRINT;
10397  }
10398
10399  public final class ConfigUpdate {
10400    field public static final String ACTION_UPDATE_CARRIER_ID_DB = "android.os.action.UPDATE_CARRIER_ID_DB";
10401    field public static final String ACTION_UPDATE_CARRIER_PROVISIONING_URLS = "android.intent.action.UPDATE_CARRIER_PROVISIONING_URLS";
10402    field public static final String ACTION_UPDATE_CONVERSATION_ACTIONS = "android.intent.action.UPDATE_CONVERSATION_ACTIONS";
10403    field public static final String ACTION_UPDATE_CT_LOGS = "android.intent.action.UPDATE_CT_LOGS";
10404    field public static final String ACTION_UPDATE_EMERGENCY_NUMBER_DB = "android.os.action.UPDATE_EMERGENCY_NUMBER_DB";
10405    field public static final String ACTION_UPDATE_INTENT_FIREWALL = "android.intent.action.UPDATE_INTENT_FIREWALL";
10406    field public static final String ACTION_UPDATE_LANG_ID = "android.intent.action.UPDATE_LANG_ID";
10407    field public static final String ACTION_UPDATE_NETWORK_WATCHLIST = "android.intent.action.UPDATE_NETWORK_WATCHLIST";
10408    field public static final String ACTION_UPDATE_PINS = "android.intent.action.UPDATE_PINS";
10409    field public static final String ACTION_UPDATE_SMART_SELECTION = "android.intent.action.UPDATE_SMART_SELECTION";
10410    field public static final String ACTION_UPDATE_SMS_SHORT_CODES = "android.intent.action.UPDATE_SMS_SHORT_CODES";
10411    field public static final String EXTRA_REQUIRED_HASH = "android.os.extra.REQUIRED_HASH";
10412    field public static final String EXTRA_VERSION = "android.os.extra.VERSION";
10413  }
10414
10415  public class DeviceIdleManager {
10416    method @RequiresPermission(android.Manifest.permission.DEVICE_POWER) public void endIdle(@NonNull String);
10417  }
10418
10419  public class Environment {
10420    method @NonNull public static java.io.File getDataCePackageDirectoryForUser(@NonNull java.util.UUID, @NonNull android.os.UserHandle, @NonNull String);
10421    method @NonNull public static java.io.File getDataDePackageDirectoryForUser(@NonNull java.util.UUID, @NonNull android.os.UserHandle, @NonNull String);
10422    method @NonNull public static java.util.Collection<java.io.File> getInternalMediaDirectories();
10423    method @NonNull public static java.io.File getOdmDirectory();
10424    method @NonNull public static java.io.File getOemDirectory();
10425    method @NonNull public static java.io.File getProductDirectory();
10426    method @Deprecated @NonNull public static java.io.File getProductServicesDirectory();
10427    method @NonNull public static java.io.File getSystemExtDirectory();
10428    method @NonNull public static java.io.File getVendorDirectory();
10429  }
10430
10431  public class HidlMemory implements java.io.Closeable {
10432    ctor public HidlMemory(@NonNull String, @IntRange(from=0) long, @Nullable android.os.NativeHandle);
10433    method public void close() throws java.io.IOException;
10434    method @NonNull public android.os.HidlMemory dup() throws java.io.IOException;
10435    method protected void finalize();
10436    method @Nullable public android.os.NativeHandle getHandle();
10437    method @NonNull public String getName();
10438    method public long getSize();
10439    method @Nullable public android.os.NativeHandle releaseHandle();
10440  }
10441
10442  public class HidlSupport {
10443    method public static boolean deepEquals(Object, Object);
10444    method public static int deepHashCode(Object);
10445    method public static int getPidIfSharable();
10446    method public static boolean interfacesEqual(android.os.IHwInterface, Object);
10447  }
10448
10449  public abstract class HwBinder implements android.os.IHwBinder {
10450    ctor public HwBinder();
10451    method public static final void configureRpcThreadpool(long, boolean);
10452    method public static void enableInstrumentation();
10453    method public static final android.os.IHwBinder getService(String, String) throws java.util.NoSuchElementException, android.os.RemoteException;
10454    method public static final android.os.IHwBinder getService(String, String, boolean) throws java.util.NoSuchElementException, android.os.RemoteException;
10455    method public static final void joinRpcThreadpool();
10456    method public abstract void onTransact(int, android.os.HwParcel, android.os.HwParcel, int) throws android.os.RemoteException;
10457    method public final void registerService(String) throws android.os.RemoteException;
10458    method public final void transact(int, android.os.HwParcel, android.os.HwParcel, int) throws android.os.RemoteException;
10459  }
10460
10461  public class HwBlob {
10462    ctor public HwBlob(int);
10463    method public final void copyToBoolArray(long, boolean[], int);
10464    method public final void copyToDoubleArray(long, double[], int);
10465    method public final void copyToFloatArray(long, float[], int);
10466    method public final void copyToInt16Array(long, short[], int);
10467    method public final void copyToInt32Array(long, int[], int);
10468    method public final void copyToInt64Array(long, long[], int);
10469    method public final void copyToInt8Array(long, byte[], int);
10470    method public final boolean getBool(long);
10471    method public final double getDouble(long);
10472    method public final long getFieldHandle(long);
10473    method public final float getFloat(long);
10474    method public final short getInt16(long);
10475    method public final int getInt32(long);
10476    method public final long getInt64(long);
10477    method public final byte getInt8(long);
10478    method public final String getString(long);
10479    method public final long handle();
10480    method public final void putBlob(long, android.os.HwBlob);
10481    method public final void putBool(long, boolean);
10482    method public final void putBoolArray(long, boolean[]);
10483    method public final void putDouble(long, double);
10484    method public final void putDoubleArray(long, double[]);
10485    method public final void putFloat(long, float);
10486    method public final void putFloatArray(long, float[]);
10487    method public final void putHidlMemory(long, @NonNull android.os.HidlMemory);
10488    method public final void putInt16(long, short);
10489    method public final void putInt16Array(long, short[]);
10490    method public final void putInt32(long, int);
10491    method public final void putInt32Array(long, int[]);
10492    method public final void putInt64(long, long);
10493    method public final void putInt64Array(long, long[]);
10494    method public final void putInt8(long, byte);
10495    method public final void putInt8Array(long, byte[]);
10496    method public final void putNativeHandle(long, @Nullable android.os.NativeHandle);
10497    method public final void putString(long, String);
10498    method public static Boolean[] wrapArray(@NonNull boolean[]);
10499    method public static Long[] wrapArray(@NonNull long[]);
10500    method public static Byte[] wrapArray(@NonNull byte[]);
10501    method public static Short[] wrapArray(@NonNull short[]);
10502    method public static Integer[] wrapArray(@NonNull int[]);
10503    method public static Float[] wrapArray(@NonNull float[]);
10504    method public static Double[] wrapArray(@NonNull double[]);
10505  }
10506
10507  public class HwParcel {
10508    ctor public HwParcel();
10509    method public final void enforceInterface(String);
10510    method public final boolean readBool();
10511    method public final java.util.ArrayList<java.lang.Boolean> readBoolVector();
10512    method public final android.os.HwBlob readBuffer(long);
10513    method public final double readDouble();
10514    method public final java.util.ArrayList<java.lang.Double> readDoubleVector();
10515    method public final android.os.HwBlob readEmbeddedBuffer(long, long, long, boolean);
10516    method @NonNull @Nullable public final android.os.HidlMemory readEmbeddedHidlMemory(long, long, long);
10517    method @Nullable public final android.os.NativeHandle readEmbeddedNativeHandle(long, long);
10518    method public final float readFloat();
10519    method public final java.util.ArrayList<java.lang.Float> readFloatVector();
10520    method @NonNull public final android.os.HidlMemory readHidlMemory();
10521    method public final short readInt16();
10522    method public final java.util.ArrayList<java.lang.Short> readInt16Vector();
10523    method public final int readInt32();
10524    method public final java.util.ArrayList<java.lang.Integer> readInt32Vector();
10525    method public final long readInt64();
10526    method public final java.util.ArrayList<java.lang.Long> readInt64Vector();
10527    method public final byte readInt8();
10528    method public final java.util.ArrayList<java.lang.Byte> readInt8Vector();
10529    method @Nullable public final android.os.NativeHandle readNativeHandle();
10530    method @NonNull public final java.util.ArrayList<android.os.NativeHandle> readNativeHandleVector();
10531    method public final String readString();
10532    method public final java.util.ArrayList<java.lang.String> readStringVector();
10533    method public final android.os.IHwBinder readStrongBinder();
10534    method public final void release();
10535    method public final void releaseTemporaryStorage();
10536    method public final void send();
10537    method public final void verifySuccess();
10538    method public final void writeBool(boolean);
10539    method public final void writeBoolVector(java.util.ArrayList<java.lang.Boolean>);
10540    method public final void writeBuffer(android.os.HwBlob);
10541    method public final void writeDouble(double);
10542    method public final void writeDoubleVector(java.util.ArrayList<java.lang.Double>);
10543    method public final void writeFloat(float);
10544    method public final void writeFloatVector(java.util.ArrayList<java.lang.Float>);
10545    method public final void writeHidlMemory(@NonNull android.os.HidlMemory);
10546    method public final void writeInt16(short);
10547    method public final void writeInt16Vector(java.util.ArrayList<java.lang.Short>);
10548    method public final void writeInt32(int);
10549    method public final void writeInt32Vector(java.util.ArrayList<java.lang.Integer>);
10550    method public final void writeInt64(long);
10551    method public final void writeInt64Vector(java.util.ArrayList<java.lang.Long>);
10552    method public final void writeInt8(byte);
10553    method public final void writeInt8Vector(java.util.ArrayList<java.lang.Byte>);
10554    method public final void writeInterfaceToken(String);
10555    method public final void writeNativeHandle(@Nullable android.os.NativeHandle);
10556    method public final void writeNativeHandleVector(@NonNull java.util.ArrayList<android.os.NativeHandle>);
10557    method public final void writeStatus(int);
10558    method public final void writeString(String);
10559    method public final void writeStringVector(java.util.ArrayList<java.lang.String>);
10560    method public final void writeStrongBinder(android.os.IHwBinder);
10561    field public static final int STATUS_SUCCESS = 0; // 0x0
10562  }
10563
10564  public interface IHwBinder {
10565    method public boolean linkToDeath(android.os.IHwBinder.DeathRecipient, long);
10566    method public android.os.IHwInterface queryLocalInterface(String);
10567    method public void transact(int, android.os.HwParcel, android.os.HwParcel, int) throws android.os.RemoteException;
10568    method public boolean unlinkToDeath(android.os.IHwBinder.DeathRecipient);
10569  }
10570
10571  public static interface IHwBinder.DeathRecipient {
10572    method public void serviceDied(long);
10573  }
10574
10575  public interface IHwInterface {
10576    method public android.os.IHwBinder asBinder();
10577  }
10578
10579  public class IncidentManager {
10580    method @RequiresPermission(android.Manifest.permission.APPROVE_INCIDENT_REPORTS) public void approveReport(android.net.Uri);
10581    method @RequiresPermission("android.permission.REQUEST_INCIDENT_REPORT_APPROVAL") public void cancelAuthorization(android.os.IncidentManager.AuthListener);
10582    method @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public void deleteIncidentReports(android.net.Uri);
10583    method @RequiresPermission(android.Manifest.permission.APPROVE_INCIDENT_REPORTS) public void denyReport(android.net.Uri);
10584    method @Nullable @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public android.os.IncidentManager.IncidentReport getIncidentReport(android.net.Uri);
10585    method @NonNull @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public java.util.List<android.net.Uri> getIncidentReportList(String);
10586    method @RequiresPermission(android.Manifest.permission.APPROVE_INCIDENT_REPORTS) public java.util.List<android.os.IncidentManager.PendingReport> getPendingReports();
10587    method public void registerSection(int, @NonNull String, @NonNull java.util.concurrent.Executor, @NonNull android.os.IncidentManager.DumpCallback);
10588    method @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public void reportIncident(android.os.IncidentReportArgs);
10589    method @RequiresPermission("android.permission.REQUEST_INCIDENT_REPORT_APPROVAL") public void requestAuthorization(int, String, int, android.os.IncidentManager.AuthListener);
10590    method public void unregisterSection(int);
10591    field public static final int FLAG_ALLOW_CONSENTLESS_BUGREPORT = 2; // 0x2
10592    field public static final int FLAG_CONFIRMATION_DIALOG = 1; // 0x1
10593    field public static final int PRIVACY_POLICY_AUTO = 200; // 0xc8
10594    field public static final int PRIVACY_POLICY_EXPLICIT = 100; // 0x64
10595    field public static final int PRIVACY_POLICY_LOCAL = 0; // 0x0
10596  }
10597
10598  public static class IncidentManager.AuthListener {
10599    ctor public IncidentManager.AuthListener();
10600    method public void onReportApproved();
10601    method public void onReportDenied();
10602  }
10603
10604  public static class IncidentManager.DumpCallback {
10605    ctor public IncidentManager.DumpCallback();
10606    method public void onDumpSection(int, @NonNull java.io.OutputStream);
10607  }
10608
10609  public static class IncidentManager.IncidentReport implements java.io.Closeable android.os.Parcelable {
10610    ctor public IncidentManager.IncidentReport(android.os.Parcel);
10611    method public void close();
10612    method public int describeContents();
10613    method public java.io.InputStream getInputStream() throws java.io.IOException;
10614    method public long getPrivacyPolicy();
10615    method public long getTimestamp();
10616    method public void writeToParcel(android.os.Parcel, int);
10617    field @NonNull public static final android.os.Parcelable.Creator<android.os.IncidentManager.IncidentReport> CREATOR;
10618  }
10619
10620  public static class IncidentManager.PendingReport {
10621    ctor public IncidentManager.PendingReport(@NonNull android.net.Uri);
10622    method public int getFlags();
10623    method @NonNull public String getRequestingPackage();
10624    method public long getTimestamp();
10625    method @NonNull public android.net.Uri getUri();
10626  }
10627
10628  public final class IncidentReportArgs implements android.os.Parcelable {
10629    ctor public IncidentReportArgs();
10630    ctor public IncidentReportArgs(android.os.Parcel);
10631    method public void addHeader(byte[]);
10632    method public void addSection(int);
10633    method public boolean containsSection(int);
10634    method public int describeContents();
10635    method public boolean isAll();
10636    method public void readFromParcel(android.os.Parcel);
10637    method public int sectionCount();
10638    method public void setAll(boolean);
10639    method public void setPrivacyPolicy(int);
10640    method public void writeToParcel(android.os.Parcel, int);
10641    field @NonNull public static final android.os.Parcelable.Creator<android.os.IncidentReportArgs> CREATOR;
10642  }
10643
10644  public final class NativeHandle implements java.io.Closeable {
10645    ctor public NativeHandle();
10646    ctor public NativeHandle(@NonNull java.io.FileDescriptor, boolean);
10647    ctor public NativeHandle(@NonNull java.io.FileDescriptor[], @NonNull int[], boolean);
10648    method public void close() throws java.io.IOException;
10649    method @NonNull public android.os.NativeHandle dup() throws java.io.IOException;
10650    method @NonNull public java.io.FileDescriptor getFileDescriptor();
10651    method @NonNull public java.io.FileDescriptor[] getFileDescriptors();
10652    method @NonNull public int[] getInts();
10653    method public boolean hasSingleFileDescriptor();
10654  }
10655
10656  public final class NewUserRequest {
10657    method @Nullable public String getAccountName();
10658    method @Nullable public android.os.PersistableBundle getAccountOptions();
10659    method @Nullable public String getAccountType();
10660    method @Nullable public String getName();
10661    method @Nullable public android.graphics.Bitmap getUserIcon();
10662    method @NonNull public String getUserType();
10663    method public boolean isAdmin();
10664    method public boolean isEphemeral();
10665  }
10666
10667  public static final class NewUserRequest.Builder {
10668    ctor public NewUserRequest.Builder();
10669    method @NonNull public android.os.NewUserRequest build();
10670    method @NonNull public android.os.NewUserRequest.Builder setAccountName(@Nullable String);
10671    method @NonNull public android.os.NewUserRequest.Builder setAccountOptions(@Nullable android.os.PersistableBundle);
10672    method @NonNull public android.os.NewUserRequest.Builder setAccountType(@Nullable String);
10673    method @NonNull public android.os.NewUserRequest.Builder setAdmin();
10674    method @NonNull public android.os.NewUserRequest.Builder setEphemeral();
10675    method @NonNull public android.os.NewUserRequest.Builder setName(@Nullable String);
10676    method @NonNull public android.os.NewUserRequest.Builder setUserIcon(@Nullable android.graphics.Bitmap);
10677    method @NonNull public android.os.NewUserRequest.Builder setUserType(@NonNull String);
10678  }
10679
10680  public final class NewUserResponse {
10681    method public int getOperationResult();
10682    method @Nullable public android.os.UserHandle getUser();
10683    method public boolean isSuccessful();
10684  }
10685
10686  public interface Parcelable {
10687    method public default int getStability();
10688    field public static final int PARCELABLE_STABILITY_LOCAL = 0; // 0x0
10689    field public static final int PARCELABLE_STABILITY_VINTF = 1; // 0x1
10690  }
10691
10692  public final class ParcelableHolder implements android.os.Parcelable {
10693    ctor public ParcelableHolder(int);
10694    method public int describeContents();
10695    method @Nullable public <T extends android.os.Parcelable> T getParcelable(@NonNull Class<T>);
10696    method public void readFromParcel(@NonNull android.os.Parcel);
10697    method public void setParcelable(@Nullable android.os.Parcelable);
10698    method public void writeToParcel(@NonNull android.os.Parcel, int);
10699    field @NonNull public static final android.os.Parcelable.Creator<android.os.ParcelableHolder> CREATOR;
10700  }
10701
10702  public class PowerExemptionManager {
10703    method @RequiresPermission(android.Manifest.permission.CHANGE_DEVICE_IDLE_TEMP_WHITELIST) public void addToTemporaryAllowList(@NonNull String, int, @Nullable String, long);
10704    method @RequiresPermission(android.Manifest.permission.CHANGE_DEVICE_IDLE_TEMP_WHITELIST) public long addToTemporaryAllowListForEvent(@NonNull String, int, @Nullable String, int);
10705    field public static final int EVENT_MMS = 2; // 0x2
10706    field public static final int EVENT_SMS = 1; // 0x1
10707    field public static final int EVENT_UNSPECIFIED = 0; // 0x0
10708    field public static final int REASON_ACCOUNT_TRANSFER = 104; // 0x68
10709    field public static final int REASON_ACTIVITY_RECOGNITION = 103; // 0x67
10710    field public static final int REASON_BLUETOOTH_BROADCAST = 203; // 0xcb
10711    field public static final int REASON_GEOFENCING = 100; // 0x64
10712    field public static final int REASON_LOCATION_PROVIDER = 312; // 0x138
10713    field public static final int REASON_OTHER = 1; // 0x1
10714    field public static final int REASON_PUSH_MESSAGING = 101; // 0x65
10715    field public static final int REASON_PUSH_MESSAGING_OVER_QUOTA = 102; // 0x66
10716    field public static final int REASON_REFRESH_SAFETY_SOURCES = 208; // 0xd0
10717    field public static final int REASON_UNKNOWN = 0; // 0x0
10718    field public static final int TEMPORARY_ALLOW_LIST_TYPE_FOREGROUND_SERVICE_ALLOWED = 0; // 0x0
10719    field public static final int TEMPORARY_ALLOW_LIST_TYPE_FOREGROUND_SERVICE_NOT_ALLOWED = 1; // 0x1
10720    field public static final int TEMPORARY_ALLOW_LIST_TYPE_NONE = -1; // 0xffffffff
10721  }
10722
10723  public final class PowerManager {
10724    method @RequiresPermission(allOf={android.Manifest.permission.READ_DREAM_STATE, android.Manifest.permission.WRITE_DREAM_STATE}) public void dream(long);
10725    method @RequiresPermission(android.Manifest.permission.DEVICE_POWER) public boolean forceSuspend();
10726    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();
10727    method @NonNull public android.os.BatterySaverPolicyConfig getFullPowerSavePolicy();
10728    method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_LOW_POWER_STANDBY, android.Manifest.permission.DEVICE_POWER}) public android.os.PowerManager.LowPowerStandbyPolicy getLowPowerStandbyPolicy();
10729    method public int getPowerSaveModeTrigger();
10730    method @RequiresPermission(android.Manifest.permission.READ_DREAM_STATE) public boolean isAmbientDisplayAvailable();
10731    method @RequiresPermission(android.Manifest.permission.READ_DREAM_STATE) public boolean isAmbientDisplaySuppressed();
10732    method @RequiresPermission(android.Manifest.permission.READ_DREAM_STATE) public boolean isAmbientDisplaySuppressedForToken(@NonNull String);
10733    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_LOW_POWER_STANDBY, android.Manifest.permission.DEVICE_POWER}) public boolean isLowPowerStandbySupported();
10734    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>);
10735    method @RequiresPermission(anyOf={android.Manifest.permission.DEVICE_POWER, android.Manifest.permission.POWER_SAVER}) public boolean setAdaptivePowerSaveEnabled(boolean);
10736    method @RequiresPermission(anyOf={android.Manifest.permission.DEVICE_POWER, android.Manifest.permission.POWER_SAVER}) public boolean setAdaptivePowerSavePolicy(@NonNull android.os.BatterySaverPolicyConfig);
10737    method @RequiresPermission(anyOf={android.Manifest.permission.BATTERY_PREDICTION, android.Manifest.permission.DEVICE_POWER}) public void setBatteryDischargePrediction(@NonNull java.time.Duration, boolean);
10738    method @RequiresPermission(android.Manifest.permission.POWER_SAVER) public boolean setDynamicPowerSaveHint(boolean, int);
10739    method @RequiresPermission(anyOf={android.Manifest.permission.DEVICE_POWER, android.Manifest.permission.POWER_SAVER}) public boolean setFullPowerSavePolicy(@NonNull android.os.BatterySaverPolicyConfig);
10740    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_LOW_POWER_STANDBY, android.Manifest.permission.DEVICE_POWER}) public void setLowPowerStandbyActiveDuringMaintenance(boolean);
10741    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_LOW_POWER_STANDBY, android.Manifest.permission.DEVICE_POWER}) public void setLowPowerStandbyEnabled(boolean);
10742    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_LOW_POWER_STANDBY, android.Manifest.permission.DEVICE_POWER}) public void setLowPowerStandbyPolicy(@Nullable android.os.PowerManager.LowPowerStandbyPolicy);
10743    method @RequiresPermission(anyOf={android.Manifest.permission.DEVICE_POWER, android.Manifest.permission.POWER_SAVER}) public boolean setPowerSaveModeEnabled(boolean);
10744    method @RequiresPermission(android.Manifest.permission.WRITE_DREAM_STATE) public void suppressAmbientDisplay(@NonNull String, boolean);
10745    method @RequiresPermission(anyOf={android.Manifest.permission.DEVICE_POWER, android.Manifest.permission.USER_ACTIVITY}) public void userActivity(long, int, int);
10746    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";
10747    field public static final int POWER_SAVE_MODE_TRIGGER_DYNAMIC = 1; // 0x1
10748    field public static final int POWER_SAVE_MODE_TRIGGER_PERCENTAGE = 0; // 0x0
10749    field public static final String REBOOT_USERSPACE = "userspace";
10750    field public static final int SOUND_TRIGGER_MODE_ALL_DISABLED = 2; // 0x2
10751    field public static final int SOUND_TRIGGER_MODE_ALL_ENABLED = 0; // 0x0
10752    field public static final int SOUND_TRIGGER_MODE_CRITICAL_ONLY = 1; // 0x1
10753    field public static final int USER_ACTIVITY_EVENT_ACCESSIBILITY = 3; // 0x3
10754    field public static final int USER_ACTIVITY_EVENT_BUTTON = 1; // 0x1
10755    field public static final int USER_ACTIVITY_EVENT_OTHER = 0; // 0x0
10756    field public static final int USER_ACTIVITY_EVENT_TOUCH = 2; // 0x2
10757    field public static final int USER_ACTIVITY_FLAG_INDIRECT = 2; // 0x2
10758    field public static final int USER_ACTIVITY_FLAG_NO_CHANGE_LIGHTS = 1; // 0x1
10759  }
10760
10761  public static final class PowerManager.LowPowerStandbyPolicy {
10762    ctor public PowerManager.LowPowerStandbyPolicy(@NonNull String, @NonNull java.util.Set<java.lang.String>, int, @NonNull java.util.Set<java.lang.String>);
10763    method @NonNull public java.util.Set<java.lang.String> getAllowedFeatures();
10764    method public int getAllowedReasons();
10765    method @NonNull public java.util.Set<java.lang.String> getExemptPackages();
10766    method @NonNull public String getIdentifier();
10767  }
10768
10769  public static final class PowerManager.LowPowerStandbyPortDescription {
10770    ctor public PowerManager.LowPowerStandbyPortDescription(int, int, int);
10771    ctor public PowerManager.LowPowerStandbyPortDescription(int, int, int, @Nullable java.net.InetAddress);
10772    method @Nullable public java.net.InetAddress getLocalAddress();
10773    method public int getPortMatcher();
10774    method public int getPortNumber();
10775    method public int getProtocol();
10776    field public static final int MATCH_PORT_LOCAL = 1; // 0x1
10777    field public static final int MATCH_PORT_REMOTE = 2; // 0x2
10778    field public static final int PROTOCOL_TCP = 6; // 0x6
10779    field public static final int PROTOCOL_UDP = 17; // 0x11
10780  }
10781
10782  public final class PowerManager.LowPowerStandbyPortsLock {
10783    method @RequiresPermission(android.Manifest.permission.SET_LOW_POWER_STANDBY_PORTS) public void acquire();
10784    method protected void finalize();
10785    method @RequiresPermission(android.Manifest.permission.SET_LOW_POWER_STANDBY_PORTS) public void release();
10786  }
10787
10788  @Deprecated public class PowerWhitelistManager {
10789    method @Deprecated @RequiresPermission(android.Manifest.permission.DEVICE_POWER) public void addToWhitelist(@NonNull String);
10790    method @Deprecated @RequiresPermission(android.Manifest.permission.DEVICE_POWER) public void addToWhitelist(@NonNull java.util.List<java.lang.String>);
10791    method @Deprecated @RequiresPermission(android.Manifest.permission.DEVICE_POWER) public void removeFromWhitelist(@NonNull String);
10792    method @Deprecated @RequiresPermission(android.Manifest.permission.CHANGE_DEVICE_IDLE_TEMP_WHITELIST) public void whitelistAppTemporarily(@NonNull String, long, int, @Nullable String);
10793    method @Deprecated @RequiresPermission(android.Manifest.permission.CHANGE_DEVICE_IDLE_TEMP_WHITELIST) public void whitelistAppTemporarily(@NonNull String, long);
10794    method @Deprecated @RequiresPermission(android.Manifest.permission.CHANGE_DEVICE_IDLE_TEMP_WHITELIST) public long whitelistAppTemporarilyForEvent(@NonNull String, int, @Nullable String);
10795    method @Deprecated @RequiresPermission(android.Manifest.permission.CHANGE_DEVICE_IDLE_TEMP_WHITELIST) public long whitelistAppTemporarilyForEvent(@NonNull String, int, int, @Nullable String);
10796    field @Deprecated public static final int EVENT_MMS = 2; // 0x2
10797    field @Deprecated public static final int EVENT_SMS = 1; // 0x1
10798    field @Deprecated public static final int EVENT_UNSPECIFIED = 0; // 0x0
10799    field @Deprecated public static final int REASON_ACTIVITY_RECOGNITION = 103; // 0x67
10800    field @Deprecated public static final int REASON_GEOFENCING = 100; // 0x64
10801    field @Deprecated public static final int REASON_LOCATION_PROVIDER = 312; // 0x138
10802    field @Deprecated public static final int REASON_OTHER = 1; // 0x1
10803    field @Deprecated public static final int REASON_PUSH_MESSAGING = 101; // 0x65
10804    field @Deprecated public static final int REASON_PUSH_MESSAGING_OVER_QUOTA = 102; // 0x66
10805    field @Deprecated public static final int REASON_UNKNOWN = 0; // 0x0
10806    field @Deprecated public static final int TEMPORARY_ALLOWLIST_TYPE_FOREGROUND_SERVICE_ALLOWED = 0; // 0x0
10807    field @Deprecated public static final int TEMPORARY_ALLOWLIST_TYPE_FOREGROUND_SERVICE_NOT_ALLOWED = 1; // 0x1
10808  }
10809
10810  public class RecoverySystem {
10811    method @RequiresPermission(android.Manifest.permission.RECOVERY) public static void cancelScheduledUpdate(android.content.Context) throws java.io.IOException;
10812    method @RequiresPermission(anyOf={android.Manifest.permission.RECOVERY, android.Manifest.permission.REBOOT}) public static void clearPrepareForUnattendedUpdate(@NonNull android.content.Context) throws java.io.IOException;
10813    method @RequiresPermission(android.Manifest.permission.RECOVERY) public static void installPackage(android.content.Context, java.io.File, boolean) throws java.io.IOException;
10814    method @RequiresPermission(anyOf={android.Manifest.permission.RECOVERY, android.Manifest.permission.REBOOT}) public static boolean isPreparedForUnattendedUpdate(@NonNull android.content.Context) throws java.io.IOException;
10815    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;
10816    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;
10817    method @RequiresPermission(android.Manifest.permission.RECOVERY) public static void processPackage(android.content.Context, java.io.File, android.os.RecoverySystem.ProgressListener) throws java.io.IOException;
10818    method @Deprecated @RequiresPermission(android.Manifest.permission.RECOVERY) public static void rebootAndApply(@NonNull android.content.Context, @NonNull String, @NonNull String) throws java.io.IOException;
10819    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;
10820    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;
10821    method @RequiresPermission(android.Manifest.permission.RECOVERY) public static void scheduleUpdateOnBoot(android.content.Context, java.io.File) throws java.io.IOException;
10822    method public static boolean verifyPackageCompatibility(java.io.File) throws java.io.IOException;
10823    field public static final int RESUME_ON_REBOOT_REBOOT_ERROR_INVALID_PACKAGE_NAME = 2000; // 0x7d0
10824    field public static final int RESUME_ON_REBOOT_REBOOT_ERROR_LSKF_NOT_CAPTURED = 3000; // 0xbb8
10825    field public static final int RESUME_ON_REBOOT_REBOOT_ERROR_PROVIDER_PREPARATION_FAILURE = 5000; // 0x1388
10826    field public static final int RESUME_ON_REBOOT_REBOOT_ERROR_SLOT_MISMATCH = 4000; // 0xfa0
10827    field public static final int RESUME_ON_REBOOT_REBOOT_ERROR_UNSPECIFIED = 1000; // 0x3e8
10828  }
10829
10830  public final class RemoteCallback implements android.os.Parcelable {
10831    ctor public RemoteCallback(android.os.RemoteCallback.OnResultListener);
10832    ctor public RemoteCallback(@NonNull android.os.RemoteCallback.OnResultListener, @Nullable android.os.Handler);
10833    method public int describeContents();
10834    method public void sendResult(@Nullable android.os.Bundle);
10835    method public void writeToParcel(android.os.Parcel, int);
10836    field @NonNull public static final android.os.Parcelable.Creator<android.os.RemoteCallback> CREATOR;
10837  }
10838
10839  public static interface RemoteCallback.OnResultListener {
10840    method public void onResult(@Nullable android.os.Bundle);
10841  }
10842
10843  public class ServiceSpecificException extends java.lang.RuntimeException {
10844    ctor public ServiceSpecificException(int, @Nullable String);
10845    ctor public ServiceSpecificException(int);
10846    field public final int errorCode;
10847  }
10848
10849  public class SystemConfigManager {
10850    method @NonNull @RequiresPermission(android.Manifest.permission.READ_CARRIER_APP_INFO) public java.util.Set<java.lang.String> getDisabledUntilUsedPreinstalledCarrierApps();
10851    method @NonNull @RequiresPermission(android.Manifest.permission.READ_CARRIER_APP_INFO) public java.util.Map<java.lang.String,java.util.List<java.lang.String>> getDisabledUntilUsedPreinstalledCarrierAssociatedApps();
10852    method @NonNull @RequiresPermission(android.Manifest.permission.GET_RUNTIME_PERMISSIONS) public int[] getSystemPermissionUids(@NonNull String);
10853  }
10854
10855  public class SystemProperties {
10856    method @NonNull public static String get(@NonNull String);
10857    method @NonNull public static String get(@NonNull String, @Nullable String);
10858    method public static boolean getBoolean(@NonNull String, boolean);
10859    method public static int getInt(@NonNull String, int);
10860    method public static long getLong(@NonNull String, long);
10861  }
10862
10863  public class SystemUpdateManager {
10864    method @RequiresPermission(anyOf={android.Manifest.permission.READ_SYSTEM_UPDATE_INFO, android.Manifest.permission.RECOVERY}) public android.os.Bundle retrieveSystemUpdateInfo();
10865    method @RequiresPermission(android.Manifest.permission.RECOVERY) public void updateSystemUpdateInfo(android.os.PersistableBundle);
10866    field public static final String KEY_IS_SECURITY_UPDATE = "is_security_update";
10867    field public static final String KEY_STATUS = "status";
10868    field public static final String KEY_TARGET_BUILD_FINGERPRINT = "target_build_fingerprint";
10869    field public static final String KEY_TARGET_SECURITY_PATCH_LEVEL = "target_security_patch_level";
10870    field public static final String KEY_TITLE = "title";
10871    field public static final int STATUS_IDLE = 1; // 0x1
10872    field public static final int STATUS_IN_PROGRESS = 3; // 0x3
10873    field public static final int STATUS_UNKNOWN = 0; // 0x0
10874    field public static final int STATUS_WAITING_DOWNLOAD = 2; // 0x2
10875    field public static final int STATUS_WAITING_INSTALL = 4; // 0x4
10876    field public static final int STATUS_WAITING_REBOOT = 5; // 0x5
10877  }
10878
10879  public final class Trace {
10880    field public static final long TRACE_TAG_AIDL = 16777216L; // 0x1000000L
10881  }
10882
10883  public class UpdateEngine {
10884    ctor public UpdateEngine();
10885    method @NonNull @WorkerThread public android.os.UpdateEngine.AllocateSpaceResult allocateSpace(@NonNull String, @NonNull String[]);
10886    method public void applyPayload(String, long, long, String[]);
10887    method public void applyPayload(@NonNull android.content.res.AssetFileDescriptor, @NonNull String[]);
10888    method public boolean bind(android.os.UpdateEngineCallback, android.os.Handler);
10889    method public boolean bind(android.os.UpdateEngineCallback);
10890    method public void cancel();
10891    method @WorkerThread public int cleanupAppliedPayload();
10892    method public void resetShouldSwitchSlotOnReboot();
10893    method public void resetStatus();
10894    method public void resume();
10895    method public void setShouldSwitchSlotOnReboot(@NonNull String);
10896    method public void suspend();
10897    method public boolean unbind();
10898    method public boolean verifyPayloadMetadata(String);
10899  }
10900
10901  public static final class UpdateEngine.AllocateSpaceResult {
10902    method public int getErrorCode();
10903    method public long getFreeSpaceRequired();
10904  }
10905
10906  public static final class UpdateEngine.ErrorCodeConstants {
10907    ctor public UpdateEngine.ErrorCodeConstants();
10908    field public static final int DEVICE_CORRUPTED = 61; // 0x3d
10909    field public static final int DOWNLOAD_PAYLOAD_VERIFICATION_ERROR = 12; // 0xc
10910    field public static final int DOWNLOAD_TRANSFER_ERROR = 9; // 0x9
10911    field public static final int ERROR = 1; // 0x1
10912    field public static final int FILESYSTEM_COPIER_ERROR = 4; // 0x4
10913    field public static final int INSTALL_DEVICE_OPEN_ERROR = 7; // 0x7
10914    field public static final int KERNEL_DEVICE_OPEN_ERROR = 8; // 0x8
10915    field public static final int NOT_ENOUGH_SPACE = 60; // 0x3c
10916    field public static final int PAYLOAD_HASH_MISMATCH_ERROR = 10; // 0xa
10917    field public static final int PAYLOAD_MISMATCHED_TYPE_ERROR = 6; // 0x6
10918    field public static final int PAYLOAD_SIZE_MISMATCH_ERROR = 11; // 0xb
10919    field public static final int PAYLOAD_TIMESTAMP_ERROR = 51; // 0x33
10920    field public static final int POST_INSTALL_RUNNER_ERROR = 5; // 0x5
10921    field public static final int SUCCESS = 0; // 0x0
10922    field public static final int UPDATED_BUT_NOT_ACTIVE = 52; // 0x34
10923  }
10924
10925  public static final class UpdateEngine.UpdateStatusConstants {
10926    ctor public UpdateEngine.UpdateStatusConstants();
10927    field public static final int ATTEMPTING_ROLLBACK = 8; // 0x8
10928    field public static final int CHECKING_FOR_UPDATE = 1; // 0x1
10929    field public static final int DISABLED = 9; // 0x9
10930    field public static final int DOWNLOADING = 3; // 0x3
10931    field public static final int FINALIZING = 5; // 0x5
10932    field public static final int IDLE = 0; // 0x0
10933    field public static final int REPORTING_ERROR_EVENT = 7; // 0x7
10934    field public static final int UPDATED_NEED_REBOOT = 6; // 0x6
10935    field public static final int UPDATE_AVAILABLE = 2; // 0x2
10936    field public static final int VERIFYING = 4; // 0x4
10937  }
10938
10939  public abstract class UpdateEngineCallback {
10940    ctor public UpdateEngineCallback();
10941    method public abstract void onPayloadApplicationComplete(int);
10942    method public abstract void onStatusUpdate(int, float);
10943  }
10944
10945  public final class UserHandle implements android.os.Parcelable {
10946    method @NonNull public static String formatUid(int);
10947    method public static int getAppId(int);
10948    method public int getIdentifier();
10949    method public static int getSharedAppGid(int);
10950    method public int getUid(int);
10951    method @Deprecated public boolean isOwner();
10952    method public boolean isSystem();
10953    method public static int myUserId();
10954    method public static android.os.UserHandle of(int);
10955    field @NonNull public static final android.os.UserHandle ALL;
10956    field @NonNull public static final android.os.UserHandle CURRENT;
10957    field @NonNull public static final android.os.UserHandle SYSTEM;
10958  }
10959
10960  public class UserManager {
10961    method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public boolean canHaveRestrictedProfile();
10962    method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public void clearSeedAccountData();
10963    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;
10964    method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS}) public android.os.NewUserResponse createUser(@NonNull android.os.NewUserRequest);
10965    method @NonNull public java.util.List<android.os.UserHandle> getAllProfiles();
10966    method @NonNull public java.util.List<android.os.UserHandle> getEnabledProfiles();
10967    method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS, android.Manifest.permission.QUERY_USERS}) public android.os.UserHandle getMainUser();
10968    method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS, android.Manifest.permission.QUERY_USERS}) public android.os.UserHandle getPreviousForegroundUser();
10969    method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.INTERACT_ACROSS_USERS}) public android.os.UserHandle getProfileParent(@NonNull android.os.UserHandle);
10970    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS, android.Manifest.permission.QUERY_USERS}) public int getRemainingCreatableProfileCount(@NonNull String);
10971    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS, android.Manifest.permission.QUERY_USERS}) public int getRemainingCreatableUserCount(@NonNull String);
10972    method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS, android.Manifest.permission.QUERY_USERS}) public android.os.UserHandle getRestrictedProfileParent();
10973    method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public String getSeedAccountName();
10974    method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public android.os.PersistableBundle getSeedAccountOptions();
10975    method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public String getSeedAccountType();
10976    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS}) public long[] getSerialNumbersOfUsers(boolean);
10977    method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS}) public java.util.List<android.os.UserHandle> getUserHandles(boolean);
10978    method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.GET_ACCOUNTS_PRIVILEGED}) public android.graphics.Bitmap getUserIcon();
10979    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);
10980    method @Deprecated @android.os.UserManager.UserRestrictionSource @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.QUERY_USERS}) public int getUserRestrictionSource(String, android.os.UserHandle);
10981    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);
10982    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.INTERACT_ACROSS_USERS}) public int getUserSwitchability();
10983    method @NonNull @RequiresPermission(anyOf={"android.permission.INTERACT_ACROSS_USERS", "android.permission.MANAGE_USERS"}) public java.util.Set<android.os.UserHandle> getVisibleUsers();
10984    method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public boolean hasRestrictedProfiles();
10985    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);
10986    method public boolean isCloneProfile();
10987    method @Deprecated public boolean isCredentialSharableWithParent();
10988    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS, android.Manifest.permission.QUERY_USERS}) public boolean isGuestUser();
10989    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS, android.Manifest.permission.QUERY_USERS}) public boolean isMainUser();
10990    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);
10991    method @Deprecated public boolean isMediaSharedWithParent();
10992    method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS, android.Manifest.permission.QUERY_USERS}) public boolean isPrimaryUser();
10993    method public static boolean isRemoveResultSuccessful(int);
10994    method public boolean isRestrictedProfile();
10995    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS}, conditional=true) public boolean isRestrictedProfile(@NonNull android.os.UserHandle);
10996    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.QUERY_USERS}) public boolean isSameProfileGroup(@NonNull android.os.UserHandle, @NonNull android.os.UserHandle);
10997    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();
10998    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS, android.Manifest.permission.QUERY_USERS}) public boolean isUserOfType(@NonNull String);
10999    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.INTERACT_ACROSS_USERS}, conditional=true) public boolean isUserUnlockingOrUnlocked(@NonNull android.os.UserHandle);
11000    method @RequiresPermission(anyOf={"android.permission.INTERACT_ACROSS_USERS", "android.permission.MANAGE_USERS"}) public boolean isUserVisible();
11001    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS}) public boolean removeUser(@NonNull android.os.UserHandle);
11002    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS}) public int removeUserWhenPossible(@NonNull android.os.UserHandle, boolean);
11003    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS}) public void setBootUser(@NonNull android.os.UserHandle);
11004    method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public void setUserIcon(@NonNull android.graphics.Bitmap) throws android.os.UserManager.UserOperationException;
11005    method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public void setUserName(@Nullable String);
11006    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS}) public boolean someUserHasAccount(@NonNull String, @NonNull String);
11007    field @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public static final String ACTION_CREATE_SUPERVISED_USER = "android.os.action.CREATE_SUPERVISED_USER";
11008    field public static final String ACTION_USER_RESTRICTIONS_CHANGED = "android.os.action.USER_RESTRICTIONS_CHANGED";
11009    field @Deprecated public static final String DISALLOW_OEM_UNLOCK = "no_oem_unlock";
11010    field public static final String DISALLOW_RUN_IN_BACKGROUND = "no_run_in_background";
11011    field public static final int REMOVE_RESULT_ALREADY_BEING_REMOVED = 2; // 0x2
11012    field public static final int REMOVE_RESULT_DEFERRED = 1; // 0x1
11013    field public static final int REMOVE_RESULT_ERROR_MAIN_USER_PERMANENT_ADMIN = -5; // 0xfffffffb
11014    field public static final int REMOVE_RESULT_ERROR_SYSTEM_USER = -4; // 0xfffffffc
11015    field public static final int REMOVE_RESULT_ERROR_UNKNOWN = -1; // 0xffffffff
11016    field public static final int REMOVE_RESULT_ERROR_USER_NOT_FOUND = -3; // 0xfffffffd
11017    field public static final int REMOVE_RESULT_ERROR_USER_RESTRICTION = -2; // 0xfffffffe
11018    field public static final int REMOVE_RESULT_REMOVED = 0; // 0x0
11019    field public static final int RESTRICTION_NOT_SET = 0; // 0x0
11020    field public static final int RESTRICTION_SOURCE_DEVICE_OWNER = 2; // 0x2
11021    field public static final int RESTRICTION_SOURCE_PROFILE_OWNER = 4; // 0x4
11022    field public static final int RESTRICTION_SOURCE_SYSTEM = 1; // 0x1
11023    field public static final int SWITCHABILITY_STATUS_OK = 0; // 0x0
11024    field public static final int SWITCHABILITY_STATUS_SYSTEM_USER_LOCKED = 4; // 0x4
11025    field public static final int SWITCHABILITY_STATUS_USER_IN_CALL = 1; // 0x1
11026    field public static final int SWITCHABILITY_STATUS_USER_SWITCH_DISALLOWED = 2; // 0x2
11027    field public static final int USER_OPERATION_ERROR_USER_ACCOUNT_ALREADY_EXISTS = 7; // 0x7
11028    field public static final String USER_TYPE_FULL_GUEST = "android.os.usertype.full.GUEST";
11029    field public static final String USER_TYPE_FULL_SECONDARY = "android.os.usertype.full.SECONDARY";
11030    field public static final String USER_TYPE_FULL_SYSTEM = "android.os.usertype.full.SYSTEM";
11031    field public static final String USER_TYPE_PROFILE_CLONE = "android.os.usertype.profile.CLONE";
11032    field public static final String USER_TYPE_PROFILE_MANAGED = "android.os.usertype.profile.MANAGED";
11033    field public static final String USER_TYPE_SYSTEM_HEADLESS = "android.os.usertype.system.HEADLESS";
11034  }
11035
11036  public static final class UserManager.EnforcingUser implements android.os.Parcelable {
11037    method public int describeContents();
11038    method public android.os.UserHandle getUserHandle();
11039    method @android.os.UserManager.UserRestrictionSource public int getUserRestrictionSource();
11040    method public void writeToParcel(android.os.Parcel, int);
11041    field @NonNull public static final android.os.Parcelable.Creator<android.os.UserManager.EnforcingUser> CREATOR;
11042  }
11043
11044  @IntDef(flag=true, prefix={"RESTRICTION_"}, value={android.os.UserManager.RESTRICTION_NOT_SET, android.os.UserManager.RESTRICTION_SOURCE_SYSTEM, android.os.UserManager.RESTRICTION_SOURCE_DEVICE_OWNER, android.os.UserManager.RESTRICTION_SOURCE_PROFILE_OWNER}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface UserManager.UserRestrictionSource {
11045  }
11046
11047  public abstract class Vibrator {
11048    method @RequiresPermission(android.Manifest.permission.ACCESS_VIBRATOR_STATE) public void addVibratorStateListener(@NonNull android.os.Vibrator.OnVibratorStateChangedListener);
11049    method @RequiresPermission(android.Manifest.permission.ACCESS_VIBRATOR_STATE) public void addVibratorStateListener(@NonNull java.util.concurrent.Executor, @NonNull android.os.Vibrator.OnVibratorStateChangedListener);
11050    method @RequiresPermission(android.Manifest.permission.ACCESS_VIBRATOR_STATE) public boolean isVibrating();
11051    method @RequiresPermission(android.Manifest.permission.ACCESS_VIBRATOR_STATE) public void removeVibratorStateListener(@NonNull android.os.Vibrator.OnVibratorStateChangedListener);
11052  }
11053
11054  public static interface Vibrator.OnVibratorStateChangedListener {
11055    method public void onVibratorStateChanged(boolean);
11056  }
11057
11058  public class WorkSource implements android.os.Parcelable {
11059    ctor public WorkSource(int);
11060    ctor public WorkSource(int, @NonNull String);
11061    method public android.os.WorkSource.WorkChain createWorkChain();
11062    method @Nullable public String getPackageName(int);
11063    method public int getUid(int);
11064    method @Nullable public java.util.List<android.os.WorkSource.WorkChain> getWorkChains();
11065    method public boolean isEmpty();
11066    method public int size();
11067    method @NonNull public android.os.WorkSource withoutNames();
11068  }
11069
11070  public static final class WorkSource.WorkChain implements android.os.Parcelable {
11071    ctor public WorkSource.WorkChain();
11072    method public android.os.WorkSource.WorkChain addNode(int, @Nullable String);
11073    method public int describeContents();
11074    method public String getAttributionTag();
11075    method public int getAttributionUid();
11076    method public void writeToParcel(android.os.Parcel, int);
11077    field @NonNull public static final android.os.Parcelable.Creator<android.os.WorkSource.WorkChain> CREATOR;
11078  }
11079
11080}
11081
11082package android.os.connectivity {
11083
11084  public final class CellularBatteryStats implements android.os.Parcelable {
11085    method public int describeContents();
11086    method public long getEnergyConsumedMaMillis();
11087    method public long getIdleTimeMillis();
11088    method public long getKernelActiveTimeMillis();
11089    method public long getLoggingDurationMillis();
11090    method public long getMonitoredRailChargeConsumedMaMillis();
11091    method public long getNumBytesRx();
11092    method public long getNumBytesTx();
11093    method public long getNumPacketsRx();
11094    method public long getNumPacketsTx();
11095    method public long getRxTimeMillis();
11096    method public long getSleepTimeMillis();
11097    method @NonNull public long getTimeInRatMicros(int);
11098    method @NonNull public long getTimeInRxSignalStrengthLevelMicros(@IntRange(from=android.telephony.CellSignalStrength.SIGNAL_STRENGTH_NONE_OR_UNKNOWN, to=android.telephony.CellSignalStrength.SIGNAL_STRENGTH_GREAT) int);
11099    method public void writeToParcel(@NonNull android.os.Parcel, int);
11100    field @NonNull public static final android.os.Parcelable.Creator<android.os.connectivity.CellularBatteryStats> CREATOR;
11101  }
11102
11103  public final class WifiActivityEnergyInfo implements android.os.Parcelable {
11104    ctor public WifiActivityEnergyInfo(long, int, @IntRange(from=0) long, @IntRange(from=0) long, @IntRange(from=0) long, @IntRange(from=0) long);
11105    method public int describeContents();
11106    method @IntRange(from=0) public long getControllerEnergyUsedMicroJoules();
11107    method @IntRange(from=0) public long getControllerIdleDurationMillis();
11108    method @IntRange(from=0) public long getControllerRxDurationMillis();
11109    method @IntRange(from=0) public long getControllerScanDurationMillis();
11110    method @IntRange(from=0) public long getControllerTxDurationMillis();
11111    method public int getStackState();
11112    method public long getTimeSinceBootMillis();
11113    method public void writeToParcel(@NonNull android.os.Parcel, int);
11114    field @NonNull public static final android.os.Parcelable.Creator<android.os.connectivity.WifiActivityEnergyInfo> CREATOR;
11115    field public static final int STACK_STATE_INVALID = 0; // 0x0
11116    field public static final int STACK_STATE_STATE_ACTIVE = 1; // 0x1
11117    field public static final int STACK_STATE_STATE_IDLE = 3; // 0x3
11118    field public static final int STACK_STATE_STATE_SCANNING = 2; // 0x2
11119  }
11120
11121  public final class WifiBatteryStats implements android.os.Parcelable {
11122    method public int describeContents();
11123    method public long getAppScanRequestCount();
11124    method public long getEnergyConsumedMaMillis();
11125    method public long getIdleTimeMillis();
11126    method public long getKernelActiveTimeMillis();
11127    method public long getLoggingDurationMillis();
11128    method public long getMonitoredRailChargeConsumedMaMillis();
11129    method public long getNumBytesRx();
11130    method public long getNumBytesTx();
11131    method public long getNumPacketsRx();
11132    method public long getNumPacketsTx();
11133    method public long getRxTimeMillis();
11134    method public long getScanTimeMillis();
11135    method public long getSleepTimeMillis();
11136    method public long getTxTimeMillis();
11137    method public void writeToParcel(@NonNull android.os.Parcel, int);
11138    field @NonNull public static final android.os.Parcelable.Creator<android.os.connectivity.WifiBatteryStats> CREATOR;
11139  }
11140
11141}
11142
11143package android.os.image {
11144
11145  public class DynamicSystemClient {
11146    ctor public DynamicSystemClient(@NonNull android.content.Context);
11147    method @RequiresPermission(android.Manifest.permission.INSTALL_DYNAMIC_SYSTEM) public void bind();
11148    method public void setOnStatusChangedListener(@NonNull java.util.concurrent.Executor, @NonNull android.os.image.DynamicSystemClient.OnStatusChangedListener);
11149    method public void setOnStatusChangedListener(@NonNull android.os.image.DynamicSystemClient.OnStatusChangedListener);
11150    method @RequiresPermission(android.Manifest.permission.INSTALL_DYNAMIC_SYSTEM) public void start(@NonNull android.net.Uri, long);
11151    method @RequiresPermission(android.Manifest.permission.INSTALL_DYNAMIC_SYSTEM) public void start(@NonNull android.net.Uri, long, long);
11152    method @RequiresPermission(android.Manifest.permission.INSTALL_DYNAMIC_SYSTEM) public void unbind();
11153    field public static final int CAUSE_ERROR_EXCEPTION = 6; // 0x6
11154    field public static final int CAUSE_ERROR_INVALID_URL = 4; // 0x4
11155    field public static final int CAUSE_ERROR_IO = 3; // 0x3
11156    field public static final int CAUSE_ERROR_IPC = 5; // 0x5
11157    field public static final int CAUSE_INSTALL_CANCELLED = 2; // 0x2
11158    field public static final int CAUSE_INSTALL_COMPLETED = 1; // 0x1
11159    field public static final int CAUSE_NOT_SPECIFIED = 0; // 0x0
11160    field public static final int STATUS_IN_PROGRESS = 2; // 0x2
11161    field public static final int STATUS_IN_USE = 4; // 0x4
11162    field public static final int STATUS_NOT_STARTED = 1; // 0x1
11163    field public static final int STATUS_READY = 3; // 0x3
11164    field public static final int STATUS_UNKNOWN = 0; // 0x0
11165  }
11166
11167  public static interface DynamicSystemClient.OnStatusChangedListener {
11168    method public void onStatusChanged(int, int, long, @Nullable Throwable);
11169  }
11170
11171}
11172
11173package android.os.storage {
11174
11175  public class StorageManager {
11176    method @WorkerThread public void allocateBytes(@NonNull java.util.UUID, long, @RequiresPermission int) throws java.io.IOException;
11177    method @WorkerThread public void allocateBytes(java.io.FileDescriptor, long, @RequiresPermission int) throws java.io.IOException;
11178    method @WorkerThread public long getAllocatableBytes(@NonNull java.util.UUID, @RequiresPermission int) throws java.io.IOException;
11179    method @RequiresPermission(android.Manifest.permission.WRITE_MEDIA_STORAGE) public int getExternalStorageMountMode(int, @NonNull String);
11180    method public static boolean hasIsolatedStorage();
11181    method public void updateExternalStorageFileQuotaType(@NonNull java.io.File, int) throws java.io.IOException;
11182    field @RequiresPermission(android.Manifest.permission.ALLOCATE_AGGRESSIVE) public static final int FLAG_ALLOCATE_AGGRESSIVE = 1; // 0x1
11183    field public static final int MOUNT_MODE_EXTERNAL_ANDROID_WRITABLE = 4; // 0x4
11184    field public static final int MOUNT_MODE_EXTERNAL_DEFAULT = 1; // 0x1
11185    field public static final int MOUNT_MODE_EXTERNAL_INSTALLER = 2; // 0x2
11186    field public static final int MOUNT_MODE_EXTERNAL_NONE = 0; // 0x0
11187    field public static final int MOUNT_MODE_EXTERNAL_PASS_THROUGH = 3; // 0x3
11188    field public static final int QUOTA_TYPE_MEDIA_AUDIO = 2; // 0x2
11189    field public static final int QUOTA_TYPE_MEDIA_IMAGE = 1; // 0x1
11190    field public static final int QUOTA_TYPE_MEDIA_NONE = 0; // 0x0
11191    field public static final int QUOTA_TYPE_MEDIA_VIDEO = 3; // 0x3
11192  }
11193
11194  public final class StorageVolume implements android.os.Parcelable {
11195    method @NonNull public String getId();
11196    method public boolean isExternallyManaged();
11197  }
11198
11199}
11200
11201package android.permission {
11202
11203  public final class AdminPermissionControlParams implements android.os.Parcelable {
11204    method public boolean canAdminGrantSensorsPermissions();
11205    method public int describeContents();
11206    method public int getGrantState();
11207    method @NonNull public String getGranteePackageName();
11208    method @NonNull public String getPermission();
11209    method public void writeToParcel(@NonNull android.os.Parcel, int);
11210    field @NonNull public static final android.os.Parcelable.Creator<android.permission.AdminPermissionControlParams> CREATOR;
11211  }
11212
11213  public final class PermissionControllerManager {
11214    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>);
11215    method @RequiresPermission(android.Manifest.permission.MANAGE_APP_HIBERNATION) public void getHibernationEligibility(@NonNull String, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.IntConsumer);
11216    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[]>);
11217    method public void getUnusedAppCount(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.IntConsumer);
11218    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);
11219    method @RequiresPermission(anyOf={android.Manifest.permission.GRANT_RUNTIME_PERMISSIONS, android.Manifest.permission.RESTORE_RUNTIME_PERMISSIONS}) public void stageAndApplyRuntimePermissionsBackup(@NonNull byte[], @NonNull android.os.UserHandle);
11220    field public static final int COUNT_ONLY_WHEN_GRANTED = 1; // 0x1
11221    field public static final int COUNT_WHEN_SYSTEM = 2; // 0x2
11222    field public static final int HIBERNATION_ELIGIBILITY_ELIGIBLE = 0; // 0x0
11223    field public static final int HIBERNATION_ELIGIBILITY_EXEMPT_BY_SYSTEM = 1; // 0x1
11224    field public static final int HIBERNATION_ELIGIBILITY_EXEMPT_BY_USER = 2; // 0x2
11225    field public static final int HIBERNATION_ELIGIBILITY_UNKNOWN = -1; // 0xffffffff
11226    field public static final int REASON_INSTALLER_POLICY_VIOLATION = 2; // 0x2
11227    field public static final int REASON_MALWARE = 1; // 0x1
11228  }
11229
11230  public abstract static class PermissionControllerManager.OnRevokeRuntimePermissionsCallback {
11231    ctor public PermissionControllerManager.OnRevokeRuntimePermissionsCallback();
11232    method public abstract void onRevokeRuntimePermissions(@NonNull java.util.Map<java.lang.String,java.util.List<java.lang.String>>);
11233  }
11234
11235  public abstract class PermissionControllerService extends android.app.Service {
11236    ctor public PermissionControllerService();
11237    method @NonNull @RequiresPermission("android.permission.MANAGE_COMPANION_DEVICES") public String getPrivilegesDescriptionStringForProfile(@NonNull String);
11238    method @BinderThread public void onApplyStagedRuntimePermissionBackup(@NonNull String, @NonNull android.os.UserHandle, @NonNull java.util.function.Consumer<java.lang.Boolean>);
11239    method @NonNull public final android.os.IBinder onBind(android.content.Intent);
11240    method @BinderThread public abstract void onCountPermissionApps(@NonNull java.util.List<java.lang.String>, int, @NonNull java.util.function.IntConsumer);
11241    method @BinderThread public abstract void onGetAppPermissions(@NonNull String, @NonNull java.util.function.Consumer<java.util.List<android.permission.RuntimePermissionPresentationInfo>>);
11242    method @BinderThread public void onGetGroupOfPlatformPermission(@NonNull String, @NonNull java.util.function.Consumer<java.lang.String>);
11243    method @RequiresPermission(android.Manifest.permission.MANAGE_APP_HIBERNATION) public void onGetHibernationEligibility(@NonNull String, @NonNull java.util.function.IntConsumer);
11244    method @BinderThread public abstract void onGetPermissionUsages(boolean, long, @NonNull java.util.function.Consumer<java.util.List<android.permission.RuntimePermissionUsageInfo>>);
11245    method @BinderThread public void onGetPlatformPermissionsForGroup(@NonNull String, @NonNull java.util.function.Consumer<java.util.List<java.lang.String>>);
11246    method @BinderThread public abstract void onGetRuntimePermissionsBackup(@NonNull android.os.UserHandle, @NonNull java.io.OutputStream, @NonNull Runnable);
11247    method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_APP_HIBERNATION) public void onGetUnusedAppCount(@NonNull java.util.function.IntConsumer);
11248    method @BinderThread public abstract void onGrantOrUpgradeDefaultRuntimePermissions(@NonNull Runnable);
11249    method @BinderThread public void onOneTimePermissionSessionTimeout(@NonNull String);
11250    method @Deprecated @BinderThread public void onRestoreDelayedRuntimePermissionsBackup(@NonNull String, @NonNull android.os.UserHandle, @NonNull java.util.function.Consumer<java.lang.Boolean>);
11251    method @Deprecated @BinderThread public void onRestoreRuntimePermissionsBackup(@NonNull android.os.UserHandle, @NonNull java.io.InputStream, @NonNull Runnable);
11252    method @BinderThread public abstract void onRevokeRuntimePermission(@NonNull String, @NonNull String, @NonNull Runnable);
11253    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>>>);
11254    method @BinderThread public void onRevokeSelfPermissionsOnKill(@NonNull String, @NonNull java.util.List<java.lang.String>, @NonNull Runnable);
11255    method @Deprecated @BinderThread public abstract void onSetRuntimePermissionGrantStateByDeviceAdmin(@NonNull String, @NonNull String, @NonNull String, int, @NonNull java.util.function.Consumer<java.lang.Boolean>);
11256    method @BinderThread public void onSetRuntimePermissionGrantStateByDeviceAdmin(@NonNull String, @NonNull android.permission.AdminPermissionControlParams, @NonNull java.util.function.Consumer<java.lang.Boolean>);
11257    method @BinderThread public void onStageAndApplyRuntimePermissionsBackup(@NonNull android.os.UserHandle, @NonNull java.io.InputStream, @NonNull Runnable);
11258    method @BinderThread public void onUpdateUserSensitivePermissionFlags(int, @NonNull java.util.concurrent.Executor, @NonNull Runnable);
11259    method @BinderThread public void onUpdateUserSensitivePermissionFlags(int, @NonNull Runnable);
11260    field public static final String SERVICE_INTERFACE = "android.permission.PermissionControllerService";
11261  }
11262
11263  public final class PermissionGroupUsage implements android.os.Parcelable {
11264    method public int describeContents();
11265    method @Nullable public CharSequence getAttributionLabel();
11266    method @Nullable public CharSequence getAttributionTag();
11267    method public long getLastAccessTimeMillis();
11268    method @NonNull public String getPackageName();
11269    method @NonNull public String getPermissionGroupName();
11270    method @Nullable public CharSequence getProxyLabel();
11271    method public int getUid();
11272    method public boolean isActive();
11273    method public boolean isPhoneCall();
11274    method public void writeToParcel(@NonNull android.os.Parcel, int);
11275    field @NonNull public static final android.os.Parcelable.Creator<android.permission.PermissionGroupUsage> CREATOR;
11276  }
11277
11278  public final class PermissionManager {
11279    method public int checkDeviceIdentifierAccess(@Nullable String, @Nullable String, @Nullable String, int, int);
11280    method @RequiresPermission(value=android.Manifest.permission.UPDATE_APP_OPS_STATS, conditional=true) public int checkPermissionForDataDelivery(@NonNull String, @NonNull android.content.AttributionSource, @Nullable String);
11281    method @RequiresPermission(value=android.Manifest.permission.UPDATE_APP_OPS_STATS, conditional=true) public int checkPermissionForDataDeliveryFromDataSource(@NonNull String, @NonNull android.content.AttributionSource, @Nullable String);
11282    method public int checkPermissionForPreflight(@NonNull String, @NonNull android.content.AttributionSource);
11283    method @RequiresPermission(value=android.Manifest.permission.UPDATE_APP_OPS_STATS, conditional=true) public int checkPermissionForStartDataDelivery(@NonNull String, @NonNull android.content.AttributionSource, @Nullable String);
11284    method public void finishDataDelivery(@NonNull String, @NonNull android.content.AttributionSource);
11285    method @NonNull @RequiresPermission(android.Manifest.permission.ADJUST_RUNTIME_PERMISSIONS_POLICY) public java.util.Set<java.lang.String> getAutoRevokeExemptionGrantedPackages();
11286    method @NonNull @RequiresPermission(android.Manifest.permission.ADJUST_RUNTIME_PERMISSIONS_POLICY) public java.util.Set<java.lang.String> getAutoRevokeExemptionRequestedPackages();
11287    method @IntRange(from=0) @RequiresPermission(anyOf={android.Manifest.permission.ADJUST_RUNTIME_PERMISSIONS_POLICY, android.Manifest.permission.UPGRADE_RUNTIME_PERMISSIONS}) public int getRuntimePermissionsVersion();
11288    method @NonNull public java.util.List<android.permission.PermissionManager.SplitPermissionInfo> getSplitPermissions();
11289    method @RequiresPermission(anyOf={android.Manifest.permission.ADJUST_RUNTIME_PERMISSIONS_POLICY, android.Manifest.permission.UPGRADE_RUNTIME_PERMISSIONS}) public void setRuntimePermissionsVersion(@IntRange(from=0) int);
11290    method @Deprecated @RequiresPermission(android.Manifest.permission.MANAGE_ONE_TIME_PERMISSION_SESSIONS) public void startOneTimePermissionSession(@NonNull String, long, int, int);
11291    method @RequiresPermission(android.Manifest.permission.MANAGE_ONE_TIME_PERMISSION_SESSIONS) public void startOneTimePermissionSession(@NonNull String, long, long, int, int);
11292    method @RequiresPermission(android.Manifest.permission.MANAGE_ONE_TIME_PERMISSION_SESSIONS) public void stopOneTimePermissionSession(@NonNull String);
11293    field @RequiresPermission(android.Manifest.permission.START_REVIEW_PERMISSION_DECISIONS) public static final String ACTION_REVIEW_PERMISSION_DECISIONS = "android.permission.action.REVIEW_PERMISSION_DECISIONS";
11294    field public static final String EXTRA_PERMISSION_USAGES = "android.permission.extra.PERMISSION_USAGES";
11295    field public static final int PERMISSION_GRANTED = 0; // 0x0
11296    field public static final int PERMISSION_HARD_DENIED = 2; // 0x2
11297    field public static final int PERMISSION_SOFT_DENIED = 1; // 0x1
11298  }
11299
11300  public static final class PermissionManager.SplitPermissionInfo {
11301    method @NonNull public java.util.List<java.lang.String> getNewPermissions();
11302    method @NonNull public String getSplitPermission();
11303    method public int getTargetSdk();
11304  }
11305
11306  public final class RuntimePermissionPresentationInfo implements android.os.Parcelable {
11307    ctor public RuntimePermissionPresentationInfo(@NonNull CharSequence, boolean, boolean);
11308    method public int describeContents();
11309    method @NonNull public CharSequence getLabel();
11310    method public boolean isGranted();
11311    method public boolean isStandard();
11312    method public void writeToParcel(android.os.Parcel, int);
11313    field @NonNull public static final android.os.Parcelable.Creator<android.permission.RuntimePermissionPresentationInfo> CREATOR;
11314  }
11315
11316  public final class RuntimePermissionUsageInfo implements android.os.Parcelable {
11317    ctor public RuntimePermissionUsageInfo(@NonNull String, int);
11318    method public int describeContents();
11319    method public int getAppAccessCount();
11320    method @NonNull public String getName();
11321    method public void writeToParcel(android.os.Parcel, int);
11322    field @NonNull public static final android.os.Parcelable.Creator<android.permission.RuntimePermissionUsageInfo> CREATOR;
11323  }
11324
11325}
11326
11327package android.permissionpresenterservice {
11328
11329  @Deprecated public abstract class RuntimePermissionPresenterService extends android.app.Service {
11330    ctor @Deprecated public RuntimePermissionPresenterService();
11331    method @Deprecated public final void attachBaseContext(android.content.Context);
11332    method @Deprecated public final android.os.IBinder onBind(android.content.Intent);
11333    method @Deprecated public abstract java.util.List<android.content.pm.permission.RuntimePermissionPresentationInfo> onGetAppPermissions(@NonNull String);
11334    field @Deprecated public static final String SERVICE_INTERFACE = "android.permissionpresenterservice.RuntimePermissionPresenterService";
11335  }
11336
11337}
11338
11339package android.preference {
11340
11341  @Deprecated public class PreferenceManager {
11342    method @Deprecated public boolean isStorageCredentialProtected();
11343    method @Deprecated public void setStorageCredentialProtected();
11344  }
11345
11346}
11347
11348package android.print {
11349
11350  public final class PrintManager {
11351    method @RequiresPermission(android.Manifest.permission.READ_PRINT_SERVICE_RECOMMENDATIONS) public void addPrintServiceRecommendationsChangeListener(@NonNull android.print.PrintManager.PrintServiceRecommendationsChangeListener, @Nullable android.os.Handler);
11352    method @RequiresPermission(android.Manifest.permission.READ_PRINT_SERVICES) public void addPrintServicesChangeListener(@NonNull android.print.PrintManager.PrintServicesChangeListener, @Nullable android.os.Handler);
11353    method @NonNull @RequiresPermission(android.Manifest.permission.READ_PRINT_SERVICE_RECOMMENDATIONS) public java.util.List<android.printservice.recommendation.RecommendationInfo> getPrintServiceRecommendations();
11354    method @NonNull @RequiresPermission(android.Manifest.permission.READ_PRINT_SERVICES) public java.util.List<android.printservice.PrintServiceInfo> getPrintServices(int);
11355    method @RequiresPermission(android.Manifest.permission.READ_PRINT_SERVICE_RECOMMENDATIONS) public void removePrintServiceRecommendationsChangeListener(@NonNull android.print.PrintManager.PrintServiceRecommendationsChangeListener);
11356    method @RequiresPermission(android.Manifest.permission.READ_PRINT_SERVICES) public void removePrintServicesChangeListener(@NonNull android.print.PrintManager.PrintServicesChangeListener);
11357    field public static final int ENABLED_SERVICES = 1; // 0x1
11358  }
11359
11360  public static interface PrintManager.PrintServiceRecommendationsChangeListener {
11361    method public void onPrintServiceRecommendationsChanged();
11362  }
11363
11364  public static interface PrintManager.PrintServicesChangeListener {
11365    method public void onPrintServicesChanged();
11366  }
11367
11368}
11369
11370package android.printservice {
11371
11372  public final class PrintServiceInfo implements android.os.Parcelable {
11373    method public int describeContents();
11374    method @NonNull public android.content.ComponentName getComponentName();
11375    method public void writeToParcel(android.os.Parcel, int);
11376    field @NonNull public static final android.os.Parcelable.Creator<android.printservice.PrintServiceInfo> CREATOR;
11377  }
11378
11379}
11380
11381package android.printservice.recommendation {
11382
11383  public final class RecommendationInfo implements android.os.Parcelable {
11384    ctor public RecommendationInfo(@NonNull CharSequence, @NonNull CharSequence, @NonNull java.util.List<java.net.InetAddress>, boolean);
11385    ctor @Deprecated public RecommendationInfo(@NonNull CharSequence, @NonNull CharSequence, @IntRange(from=0) int, boolean);
11386    method public int describeContents();
11387    method @NonNull public java.util.List<java.net.InetAddress> getDiscoveredPrinters();
11388    method public CharSequence getName();
11389    method public int getNumDiscoveredPrinters();
11390    method public CharSequence getPackageName();
11391    method public boolean recommendsMultiVendorService();
11392    method public void writeToParcel(android.os.Parcel, int);
11393    field @NonNull public static final android.os.Parcelable.Creator<android.printservice.recommendation.RecommendationInfo> CREATOR;
11394  }
11395
11396  public abstract class RecommendationService extends android.app.Service {
11397    ctor public RecommendationService();
11398    method public final android.os.IBinder onBind(android.content.Intent);
11399    method public abstract void onConnected();
11400    method public abstract void onDisconnected();
11401    method public final void updateRecommendations(@Nullable java.util.List<android.printservice.recommendation.RecommendationInfo>);
11402    field public static final String SERVICE_INTERFACE = "android.printservice.recommendation.RecommendationService";
11403  }
11404
11405}
11406
11407package android.provider {
11408
11409  public class CallLog {
11410    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>);
11411  }
11412
11413  public static class CallLog.CallComposerLoggingException extends java.lang.Throwable {
11414    ctor public CallLog.CallComposerLoggingException(int);
11415    method public int getErrorCode();
11416    field public static final int ERROR_INPUT_CLOSED = 3; // 0x3
11417    field public static final int ERROR_REMOTE_END_CLOSED = 1; // 0x1
11418    field public static final int ERROR_STORAGE_FULL = 2; // 0x2
11419    field public static final int ERROR_UNKNOWN = 0; // 0x0
11420  }
11421
11422  @Deprecated public static final class ContactsContract.MetadataSync implements android.provider.BaseColumns android.provider.ContactsContract.MetadataSyncColumns {
11423    field @Deprecated public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/contact_metadata";
11424    field @Deprecated public static final String CONTENT_TYPE = "vnd.android.cursor.dir/contact_metadata";
11425    field @Deprecated public static final android.net.Uri CONTENT_URI;
11426    field @Deprecated public static final String METADATA_AUTHORITY = "com.android.contacts.metadata";
11427    field @Deprecated public static final android.net.Uri METADATA_AUTHORITY_URI;
11428  }
11429
11430  @Deprecated protected static interface ContactsContract.MetadataSyncColumns {
11431    field @Deprecated public static final String ACCOUNT_NAME = "account_name";
11432    field @Deprecated public static final String ACCOUNT_TYPE = "account_type";
11433    field @Deprecated public static final String DATA = "data";
11434    field @Deprecated public static final String DATA_SET = "data_set";
11435    field @Deprecated public static final String DELETED = "deleted";
11436    field @Deprecated public static final String RAW_CONTACT_BACKUP_ID = "raw_contact_backup_id";
11437  }
11438
11439  @Deprecated public static final class ContactsContract.MetadataSyncState implements android.provider.BaseColumns android.provider.ContactsContract.MetadataSyncStateColumns {
11440    field @Deprecated public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/contact_metadata_sync_state";
11441    field @Deprecated public static final String CONTENT_TYPE = "vnd.android.cursor.dir/contact_metadata_sync_state";
11442    field @Deprecated public static final android.net.Uri CONTENT_URI;
11443  }
11444
11445  @Deprecated protected static interface ContactsContract.MetadataSyncStateColumns {
11446    field @Deprecated public static final String ACCOUNT_NAME = "account_name";
11447    field @Deprecated public static final String ACCOUNT_TYPE = "account_type";
11448    field @Deprecated public static final String DATA_SET = "data_set";
11449    field @Deprecated public static final String STATE = "state";
11450  }
11451
11452  public static final class ContactsContract.Settings implements android.provider.ContactsContract.SettingsColumns {
11453    method @RequiresPermission(android.Manifest.permission.SET_DEFAULT_ACCOUNT_FOR_CONTACTS) public static void setDefaultAccount(@NonNull android.content.ContentResolver, @Nullable android.accounts.Account);
11454  }
11455
11456  public static final class ContactsContract.SimContacts {
11457    method @RequiresPermission("android.contacts.permission.MANAGE_SIM_ACCOUNTS") public static void addSimAccount(@NonNull android.content.ContentResolver, @NonNull String, @NonNull String, int, int);
11458    method @RequiresPermission("android.contacts.permission.MANAGE_SIM_ACCOUNTS") public static void removeSimAccounts(@NonNull android.content.ContentResolver, int);
11459  }
11460
11461  public final class DocumentsContract {
11462    method @NonNull public static android.net.Uri buildDocumentUriAsUser(@NonNull String, @NonNull String, @NonNull android.os.UserHandle);
11463    method public static boolean isManageMode(@NonNull android.net.Uri);
11464    method @NonNull public static android.net.Uri setManageMode(@NonNull android.net.Uri);
11465    field public static final String ACTION_DOCUMENT_ROOT_SETTINGS = "android.provider.action.DOCUMENT_ROOT_SETTINGS";
11466    field public static final String ACTION_MANAGE_DOCUMENT = "android.provider.action.MANAGE_DOCUMENT";
11467    field public static final String DOWNLOADS_PROVIDER_AUTHORITY = "downloads";
11468    field public static final String EXTERNAL_STORAGE_PROVIDER_AUTHORITY = "com.android.externalstorage.documents";
11469    field public static final String EXTRA_SHOW_ADVANCED = "android.provider.extra.SHOW_ADVANCED";
11470  }
11471
11472  public static final class DocumentsContract.Root {
11473    field public static final int FLAG_ADVANCED = 65536; // 0x10000
11474    field public static final int FLAG_HAS_SETTINGS = 131072; // 0x20000
11475    field public static final int FLAG_REMOVABLE_SD = 262144; // 0x40000
11476    field public static final int FLAG_REMOVABLE_USB = 524288; // 0x80000
11477  }
11478
11479  public abstract class SearchIndexableData {
11480    ctor public SearchIndexableData();
11481    ctor public SearchIndexableData(android.content.Context);
11482    field public String className;
11483    field public android.content.Context context;
11484    field public boolean enabled;
11485    field public int iconResId;
11486    field public String intentAction;
11487    field public String intentTargetClass;
11488    field public String intentTargetPackage;
11489    field public String key;
11490    field public java.util.Locale locale;
11491    field public String packageName;
11492    field public int rank;
11493    field public int userId;
11494  }
11495
11496  public class SearchIndexableResource extends android.provider.SearchIndexableData {
11497    ctor public SearchIndexableResource(int, int, String, int);
11498    ctor public SearchIndexableResource(android.content.Context);
11499    field public int xmlResId;
11500  }
11501
11502  public class SearchIndexablesContract {
11503    ctor public SearchIndexablesContract();
11504    field public static final int COLUMN_INDEX_NON_INDEXABLE_KEYS_KEY_VALUE = 0; // 0x0
11505    field public static final int COLUMN_INDEX_RAW_CLASS_NAME = 7; // 0x7
11506    field public static final int COLUMN_INDEX_RAW_ENTRIES = 4; // 0x4
11507    field public static final int COLUMN_INDEX_RAW_ICON_RESID = 8; // 0x8
11508    field public static final int COLUMN_INDEX_RAW_INTENT_ACTION = 9; // 0x9
11509    field public static final int COLUMN_INDEX_RAW_INTENT_TARGET_CLASS = 11; // 0xb
11510    field public static final int COLUMN_INDEX_RAW_INTENT_TARGET_PACKAGE = 10; // 0xa
11511    field public static final int COLUMN_INDEX_RAW_KEY = 12; // 0xc
11512    field public static final int COLUMN_INDEX_RAW_KEYWORDS = 5; // 0x5
11513    field public static final int COLUMN_INDEX_RAW_RANK = 0; // 0x0
11514    field public static final int COLUMN_INDEX_RAW_SCREEN_TITLE = 6; // 0x6
11515    field public static final int COLUMN_INDEX_RAW_SUMMARY_OFF = 3; // 0x3
11516    field public static final int COLUMN_INDEX_RAW_SUMMARY_ON = 2; // 0x2
11517    field public static final int COLUMN_INDEX_RAW_TITLE = 1; // 0x1
11518    field public static final int COLUMN_INDEX_RAW_USER_ID = 13; // 0xd
11519    field public static final int COLUMN_INDEX_XML_RES_CLASS_NAME = 2; // 0x2
11520    field public static final int COLUMN_INDEX_XML_RES_ICON_RESID = 3; // 0x3
11521    field public static final int COLUMN_INDEX_XML_RES_INTENT_ACTION = 4; // 0x4
11522    field public static final int COLUMN_INDEX_XML_RES_INTENT_TARGET_CLASS = 6; // 0x6
11523    field public static final int COLUMN_INDEX_XML_RES_INTENT_TARGET_PACKAGE = 5; // 0x5
11524    field public static final int COLUMN_INDEX_XML_RES_RANK = 0; // 0x0
11525    field public static final int COLUMN_INDEX_XML_RES_RESID = 1; // 0x1
11526    field public static final String DYNAMIC_INDEXABLES_RAW = "dynamic_indexables_raw";
11527    field public static final String DYNAMIC_INDEXABLES_RAW_PATH = "settings/dynamic_indexables_raw";
11528    field public static final String INDEXABLES_RAW = "indexables_raw";
11529    field public static final String[] INDEXABLES_RAW_COLUMNS;
11530    field public static final String INDEXABLES_RAW_PATH = "settings/indexables_raw";
11531    field public static final String INDEXABLES_XML_RES = "indexables_xml_res";
11532    field public static final String[] INDEXABLES_XML_RES_COLUMNS;
11533    field public static final String INDEXABLES_XML_RES_PATH = "settings/indexables_xml_res";
11534    field public static final String NON_INDEXABLES_KEYS = "non_indexables_key";
11535    field public static final String[] NON_INDEXABLES_KEYS_COLUMNS;
11536    field public static final String NON_INDEXABLES_KEYS_PATH = "settings/non_indexables_key";
11537    field public static final String PROVIDER_INTERFACE = "android.content.action.SEARCH_INDEXABLES_PROVIDER";
11538    field public static final String SLICE_URI_PAIRS = "slice_uri_pairs";
11539    field @NonNull public static final String[] SLICE_URI_PAIRS_COLUMNS;
11540    field public static final String SLICE_URI_PAIRS_PATH = "settings/slice_uri_pairs";
11541  }
11542
11543  public static class SearchIndexablesContract.BaseColumns {
11544    field public static final String COLUMN_CLASS_NAME = "className";
11545    field public static final String COLUMN_ICON_RESID = "iconResId";
11546    field public static final String COLUMN_INTENT_ACTION = "intentAction";
11547    field public static final String COLUMN_INTENT_TARGET_CLASS = "intentTargetClass";
11548    field public static final String COLUMN_INTENT_TARGET_PACKAGE = "intentTargetPackage";
11549    field public static final String COLUMN_RANK = "rank";
11550  }
11551
11552  public static final class SearchIndexablesContract.NonIndexableKey extends android.provider.SearchIndexablesContract.BaseColumns {
11553    field public static final String COLUMN_KEY_VALUE = "key";
11554    field public static final String MIME_TYPE = "vnd.android.cursor.dir/non_indexables_key";
11555  }
11556
11557  public static final class SearchIndexablesContract.RawData extends android.provider.SearchIndexablesContract.BaseColumns {
11558    field public static final String COLUMN_ENTRIES = "entries";
11559    field public static final String COLUMN_KEY = "key";
11560    field public static final String COLUMN_KEYWORDS = "keywords";
11561    field public static final String COLUMN_SCREEN_TITLE = "screenTitle";
11562    field public static final String COLUMN_SUMMARY_OFF = "summaryOff";
11563    field public static final String COLUMN_SUMMARY_ON = "summaryOn";
11564    field public static final String COLUMN_TITLE = "title";
11565    field public static final String COLUMN_USER_ID = "user_id";
11566    field public static final String MIME_TYPE = "vnd.android.cursor.dir/indexables_raw";
11567  }
11568
11569  public static final class SearchIndexablesContract.SliceUriPairColumns {
11570    field public static final String KEY = "key";
11571    field public static final String SLICE_URI = "slice_uri";
11572  }
11573
11574  public static final class SearchIndexablesContract.XmlResource extends android.provider.SearchIndexablesContract.BaseColumns {
11575    field public static final String COLUMN_XML_RESID = "xmlResId";
11576    field public static final String MIME_TYPE = "vnd.android.cursor.dir/indexables_xml_res";
11577  }
11578
11579  public abstract class SearchIndexablesProvider extends android.content.ContentProvider {
11580    ctor public SearchIndexablesProvider();
11581    method public final int delete(android.net.Uri, String, String[]);
11582    method public String getType(android.net.Uri);
11583    method public final android.net.Uri insert(android.net.Uri, android.content.ContentValues);
11584    method public android.database.Cursor query(android.net.Uri, String[], String, String[], String);
11585    method @Nullable public android.database.Cursor queryDynamicRawData(@Nullable String[]);
11586    method public abstract android.database.Cursor queryNonIndexableKeys(String[]);
11587    method public abstract android.database.Cursor queryRawData(String[]);
11588    method @Nullable public android.database.Cursor querySliceUriPairs();
11589    method public abstract android.database.Cursor queryXmlResources(String[]);
11590    method public final int update(android.net.Uri, android.content.ContentValues, String, String[]);
11591  }
11592
11593  public final class Settings {
11594    method @Deprecated public static boolean checkAndNoteWriteSettingsOperation(@NonNull android.content.Context, int, @NonNull String, boolean);
11595    method public static boolean checkAndNoteWriteSettingsOperation(@NonNull android.content.Context, int, @NonNull String, @Nullable String, boolean);
11596    field public static final String ACTION_ACCESSIBILITY_DETAILS_SETTINGS = "android.settings.ACCESSIBILITY_DETAILS_SETTINGS";
11597    field public static final String ACTION_BEDTIME_SETTINGS = "android.settings.BEDTIME_SETTINGS";
11598    field public static final String ACTION_BUGREPORT_HANDLER_SETTINGS = "android.settings.BUGREPORT_HANDLER_SETTINGS";
11599    field public static final String ACTION_ENTERPRISE_PRIVACY_SETTINGS = "android.settings.ENTERPRISE_PRIVACY_SETTINGS";
11600    field public static final String ACTION_LOCATION_CONTROLLER_EXTRA_PACKAGE_SETTINGS = "android.settings.LOCATION_CONTROLLER_EXTRA_PACKAGE_SETTINGS";
11601    field public static final String ACTION_MANAGE_APP_OVERLAY_PERMISSION = "android.settings.MANAGE_APP_OVERLAY_PERMISSION";
11602    field public static final String ACTION_MANAGE_DOMAIN_URLS = "android.settings.MANAGE_DOMAIN_URLS";
11603    field public static final String ACTION_MANAGE_MORE_DEFAULT_APPS_SETTINGS = "android.settings.MANAGE_MORE_DEFAULT_APPS_SETTINGS";
11604    field public static final String ACTION_NOTIFICATION_POLICY_ACCESS_DETAIL_SETTINGS = "android.settings.NOTIFICATION_POLICY_ACCESS_DETAIL_SETTINGS";
11605    field public static final String ACTION_REQUEST_ENABLE_CONTENT_CAPTURE = "android.settings.REQUEST_ENABLE_CONTENT_CAPTURE";
11606    field public static final String ACTION_SHOW_ADMIN_SUPPORT_DETAILS = "android.settings.SHOW_ADMIN_SUPPORT_DETAILS";
11607    field public static final String ACTION_SHOW_RESTRICTED_SETTING_DIALOG = "android.settings.SHOW_RESTRICTED_SETTING_DIALOG";
11608    field public static final String ACTION_TETHER_PROVISIONING_UI = "android.settings.TETHER_PROVISIONING_UI";
11609    field public static final String ACTION_TETHER_SETTINGS = "android.settings.TETHER_SETTINGS";
11610    field public static final String ACTION_TETHER_UNSUPPORTED_CARRIER_UI = "android.settings.TETHER_UNSUPPORTED_CARRIER_UI";
11611    field public static final String ACTION_USER_SETTINGS = "android.settings.USER_SETTINGS";
11612  }
11613
11614  public static final class Settings.Global extends android.provider.Settings.NameValueTable {
11615    method @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public static boolean putString(@NonNull android.content.ContentResolver, @NonNull String, @Nullable String, @Nullable String, boolean);
11616    method @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public static void resetToDefaults(@NonNull android.content.ContentResolver, @Nullable String);
11617    field public static final String AIRPLANE_MODE_TOGGLEABLE_RADIOS = "airplane_mode_toggleable_radios";
11618    field public static final String APP_STANDBY_ENABLED = "app_standby_enabled";
11619    field @Deprecated public static final String AUTOFILL_COMPAT_MODE_ALLOWED_PACKAGES = "autofill_compat_mode_allowed_packages";
11620    field public static final String CARRIER_APP_NAMES = "carrier_app_names";
11621    field public static final String CARRIER_APP_WHITELIST = "carrier_app_whitelist";
11622    field public static final String DEFAULT_SM_DP_PLUS = "default_sm_dp_plus";
11623    field public static final String DEVICE_DEMO_MODE = "device_demo_mode";
11624    field public static final String DEVICE_PROVISIONING_MOBILE_DATA_ENABLED = "device_provisioning_mobile_data";
11625    field public static final String EUICC_PROVISIONED = "euicc_provisioned";
11626    field public static final String EUICC_SUPPORTED_COUNTRIES = "euicc_supported_countries";
11627    field public static final String EUICC_UNSUPPORTED_COUNTRIES = "euicc_unsupported_countries";
11628    field public static final String INSTALL_CARRIER_APP_NOTIFICATION_PERSISTENT = "install_carrier_app_notification_persistent";
11629    field public static final String INSTALL_CARRIER_APP_NOTIFICATION_SLEEP_MILLIS = "install_carrier_app_notification_sleep_millis";
11630    field public static final String OTA_DISABLE_AUTOMATIC_UPDATE = "ota_disable_automatic_update";
11631    field public static final String REQUIRE_PASSWORD_TO_DECRYPT = "require_password_to_decrypt";
11632    field public static final String TETHER_OFFLOAD_DISABLED = "tether_offload_disabled";
11633    field public static final String TETHER_SUPPORTED = "tether_supported";
11634    field public static final String THEATER_MODE_ON = "theater_mode_on";
11635    field public static final String WEBVIEW_MULTIPROCESS = "webview_multiprocess";
11636    field public static final String WIFI_BADGING_THRESHOLDS = "wifi_badging_thresholds";
11637    field @Deprecated public static final String WIFI_WAKEUP_ENABLED = "wifi_wakeup_enabled";
11638  }
11639
11640  public static final class Settings.Secure extends android.provider.Settings.NameValueTable {
11641    method @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public static boolean putString(@NonNull android.content.ContentResolver, @NonNull String, @Nullable String, @Nullable String, boolean);
11642    method @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public static void resetToDefaults(@NonNull android.content.ContentResolver, @Nullable String);
11643    field @Deprecated public static final String ACCESSIBILITY_DISPLAY_MAGNIFICATION_NAVBAR_ENABLED = "accessibility_display_magnification_navbar_enabled";
11644    field public static final String ASSIST_GESTURE_SETUP_COMPLETE = "assist_gesture_setup_complete";
11645    field public static final String AUTOFILL_FEATURE_FIELD_CLASSIFICATION = "autofill_field_classification";
11646    field public static final String AUTOFILL_USER_DATA_MAX_CATEGORY_COUNT = "autofill_user_data_max_category_count";
11647    field public static final String AUTOFILL_USER_DATA_MAX_FIELD_CLASSIFICATION_IDS_SIZE = "autofill_user_data_max_field_classification_size";
11648    field public static final String AUTOFILL_USER_DATA_MAX_USER_DATA_SIZE = "autofill_user_data_max_user_data_size";
11649    field public static final String AUTOFILL_USER_DATA_MAX_VALUE_LENGTH = "autofill_user_data_max_value_length";
11650    field public static final String AUTOFILL_USER_DATA_MIN_VALUE_LENGTH = "autofill_user_data_min_value_length";
11651    field public static final String AUTO_REVOKE_DISABLED = "auto_revoke_disabled";
11652    field public static final String COMPLETED_CATEGORY_PREFIX = "suggested.completed_category.";
11653    field public static final String DOZE_ALWAYS_ON = "doze_always_on";
11654    field public static final String HUSH_GESTURE_USED = "hush_gesture_used";
11655    field public static final String INSTANT_APPS_ENABLED = "instant_apps_enabled";
11656    field public static final String LAST_SETUP_SHOWN = "last_setup_shown";
11657    field @Deprecated public static final String LOCATION_ACCESS_CHECK_DELAY_MILLIS = "location_access_check_delay_millis";
11658    field @Deprecated public static final String LOCATION_ACCESS_CHECK_INTERVAL_MILLIS = "location_access_check_interval_millis";
11659    field public static final int LOCATION_MODE_ON = 3; // 0x3
11660    field @Deprecated public static final String LOCATION_PERMISSIONS_UPGRADE_TO_Q_MODE = "location_permissions_upgrade_to_q_mode";
11661    field public static final String LOCK_SCREEN_ALLOW_PRIVATE_NOTIFICATIONS = "lock_screen_allow_private_notifications";
11662    field public static final String LOCK_SCREEN_SHOW_NOTIFICATIONS = "lock_screen_show_notifications";
11663    field public static final String ODI_CAPTIONS_ENABLED = "odi_captions_enabled";
11664    field public static final String THEME_CUSTOMIZATION_OVERLAY_PACKAGES = "theme_customization_overlay_packages";
11665    field public static final String UI_TRANSLATION_ENABLED = "ui_translation_enabled";
11666    field public static final String USER_SETUP_COMPLETE = "user_setup_complete";
11667    field public static final int USER_SETUP_PERSONALIZATION_COMPLETE = 10; // 0xa
11668    field public static final int USER_SETUP_PERSONALIZATION_NOT_STARTED = 0; // 0x0
11669    field public static final int USER_SETUP_PERSONALIZATION_PAUSED = 2; // 0x2
11670    field public static final int USER_SETUP_PERSONALIZATION_STARTED = 1; // 0x1
11671    field public static final String USER_SETUP_PERSONALIZATION_STATE = "user_setup_personalization_state";
11672    field public static final String VOLUME_HUSH_GESTURE = "volume_hush_gesture";
11673    field public static final int VOLUME_HUSH_MUTE = 2; // 0x2
11674    field public static final int VOLUME_HUSH_OFF = 0; // 0x0
11675    field public static final int VOLUME_HUSH_VIBRATE = 1; // 0x1
11676  }
11677
11678  public static final class Settings.System extends android.provider.Settings.NameValueTable {
11679    method @RequiresPermission(android.Manifest.permission.MODIFY_SETTINGS_OVERRIDEABLE_BY_RESTORE) public static boolean putString(@NonNull android.content.ContentResolver, @NonNull String, @Nullable String, boolean);
11680  }
11681
11682  public static final class SimPhonebookContract.SimRecords {
11683    field public static final String QUERY_ARG_PIN2 = "android:query-arg-pin2";
11684  }
11685
11686  public static final class Telephony.Carriers implements android.provider.BaseColumns {
11687    field public static final String APN_SET_ID = "apn_set_id";
11688    field public static final int CARRIER_EDITED = 4; // 0x4
11689    field public static final String EDITED_STATUS = "edited";
11690    field public static final int MATCH_ALL_APN_SET_ID = -1; // 0xffffffff
11691    field public static final String MAX_CONNECTIONS = "max_conns";
11692    field public static final String MODEM_PERSIST = "modem_cognitive";
11693    field @Deprecated public static final String MTU = "mtu";
11694    field public static final String MTU_V4 = "mtu_v4";
11695    field public static final String MTU_V6 = "mtu_v6";
11696    field public static final int NO_APN_SET_ID = 0; // 0x0
11697    field public static final String TIME_LIMIT_FOR_MAX_CONNECTIONS = "max_conns_time";
11698    field public static final int UNEDITED = 0; // 0x0
11699    field public static final int USER_DELETED = 2; // 0x2
11700    field public static final String USER_EDITABLE = "user_editable";
11701    field public static final int USER_EDITED = 1; // 0x1
11702    field public static final String USER_VISIBLE = "user_visible";
11703    field public static final String WAIT_TIME_RETRY = "wait_time";
11704  }
11705
11706  public static final class Telephony.CellBroadcasts implements android.provider.BaseColumns {
11707    field @NonNull public static final String AUTHORITY_LEGACY = "cellbroadcast-legacy";
11708    field @NonNull public static final android.net.Uri AUTHORITY_LEGACY_URI;
11709    field @NonNull public static final String CALL_METHOD_GET_PREFERENCE = "get_preference";
11710    field public static final String CID = "cid";
11711    field public static final String CMAS_CATEGORY = "cmas_category";
11712    field public static final String CMAS_CERTAINTY = "cmas_certainty";
11713    field public static final String CMAS_MESSAGE_CLASS = "cmas_message_class";
11714    field public static final String CMAS_RESPONSE_TYPE = "cmas_response_type";
11715    field public static final String CMAS_SEVERITY = "cmas_severity";
11716    field public static final String CMAS_URGENCY = "cmas_urgency";
11717    field @NonNull public static final android.net.Uri CONTENT_URI;
11718    field public static final String DATA_CODING_SCHEME = "dcs";
11719    field public static final String DEFAULT_SORT_ORDER = "date DESC";
11720    field public static final String DELIVERY_TIME = "date";
11721    field public static final String ETWS_IS_PRIMARY = "etws_is_primary";
11722    field public static final String ETWS_WARNING_TYPE = "etws_warning_type";
11723    field public static final String GEOGRAPHICAL_SCOPE = "geo_scope";
11724    field public static final String GEOMETRIES = "geometries";
11725    field public static final String LAC = "lac";
11726    field public static final String LANGUAGE_CODE = "language";
11727    field public static final String LOCATION_CHECK_TIME = "location_check_time";
11728    field public static final String MAXIMUM_WAIT_TIME = "maximum_wait_time";
11729    field public static final String MESSAGE_BODY = "body";
11730    field public static final String MESSAGE_BROADCASTED = "message_broadcasted";
11731    field public static final String MESSAGE_DISPLAYED = "message_displayed";
11732    field public static final String MESSAGE_FORMAT = "format";
11733    field @NonNull @RequiresPermission(android.Manifest.permission.READ_CELL_BROADCASTS) public static final android.net.Uri MESSAGE_HISTORY_URI;
11734    field public static final String MESSAGE_PRIORITY = "priority";
11735    field public static final String MESSAGE_READ = "read";
11736    field public static final String PLMN = "plmn";
11737    field public static final String RECEIVED_TIME = "received_time";
11738    field public static final String SERIAL_NUMBER = "serial_number";
11739    field public static final String SERVICE_CATEGORY = "service_category";
11740    field public static final String SLOT_INDEX = "slot_index";
11741    field public static final String SUBSCRIPTION_ID = "sub_id";
11742  }
11743
11744  public static final class Telephony.CellBroadcasts.Preference {
11745    field @NonNull public static final String ENABLE_ALERT_VIBRATION_PREF = "enable_alert_vibrate";
11746    field @NonNull public static final String ENABLE_AREA_UPDATE_INFO_PREF = "enable_area_update_info_alerts";
11747    field @NonNull public static final String ENABLE_CMAS_AMBER_PREF = "enable_cmas_amber_alerts";
11748    field @NonNull public static final String ENABLE_CMAS_EXTREME_THREAT_PREF = "enable_cmas_extreme_threat_alerts";
11749    field @NonNull public static final String ENABLE_CMAS_IN_SECOND_LANGUAGE_PREF = "receive_cmas_in_second_language";
11750    field @NonNull public static final String ENABLE_CMAS_PRESIDENTIAL_PREF = "enable_cmas_presidential_alerts";
11751    field @NonNull public static final String ENABLE_CMAS_SEVERE_THREAT_PREF = "enable_cmas_severe_threat_alerts";
11752    field @NonNull public static final String ENABLE_EMERGENCY_PERF = "enable_emergency_alerts";
11753    field @NonNull public static final String ENABLE_PUBLIC_SAFETY_PREF = "enable_public_safety_messages";
11754    field @NonNull public static final String ENABLE_STATE_LOCAL_TEST_PREF = "enable_state_local_test_alerts";
11755    field @NonNull public static final String ENABLE_TEST_ALERT_PREF = "enable_test_alerts";
11756  }
11757
11758  public static final class Telephony.Sms.Intents {
11759    field public static final String ACTION_SMS_EMERGENCY_CB_RECEIVED = "android.provider.action.SMS_EMERGENCY_CB_RECEIVED";
11760  }
11761
11762  public final class TimeZoneRulesDataContract {
11763    field public static final String AUTHORITY = "com.android.timezone";
11764  }
11765
11766  public static final class TimeZoneRulesDataContract.Operation {
11767    field public static final String COLUMN_DISTRO_MAJOR_VERSION = "distro_major_version";
11768    field public static final String COLUMN_DISTRO_MINOR_VERSION = "distro_minor_version";
11769    field public static final String COLUMN_REVISION = "revision";
11770    field public static final String COLUMN_RULES_VERSION = "rules_version";
11771    field public static final String COLUMN_TYPE = "type";
11772    field public static final android.net.Uri CONTENT_URI;
11773    field public static final String TYPE_INSTALL = "INSTALL";
11774    field public static final String TYPE_NO_OP = "NOOP";
11775    field public static final String TYPE_UNINSTALL = "UNINSTALL";
11776  }
11777
11778}
11779
11780package android.se.omapi {
11781
11782  public final class Reader {
11783    method @RequiresPermission(android.Manifest.permission.SECURE_ELEMENT_PRIVILEGED_OPERATION) public boolean reset();
11784  }
11785
11786}
11787
11788package android.security {
11789
11790  public final class KeyChain {
11791    method @Nullable @WorkerThread public static String getWifiKeyGrantAsUser(@NonNull android.content.Context, @NonNull android.os.UserHandle, @NonNull String);
11792    method @WorkerThread public static boolean hasWifiKeyGrantAsUser(@NonNull android.content.Context, @NonNull android.os.UserHandle, @NonNull String);
11793  }
11794
11795}
11796
11797package android.security.keystore {
11798
11799  public class AndroidKeyStoreProvider extends java.security.Provider {
11800    method @NonNull public static java.security.KeyStore getKeyStoreForUid(int) throws java.security.KeyStoreException, java.security.NoSuchProviderException;
11801  }
11802
11803  public abstract class AttestationUtils {
11804    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;
11805    field public static final int ID_TYPE_IMEI = 2; // 0x2
11806    field public static final int ID_TYPE_MEID = 3; // 0x3
11807    field public static final int ID_TYPE_SERIAL = 1; // 0x1
11808    field public static final int USE_INDIVIDUAL_ATTESTATION = 4; // 0x4
11809  }
11810
11811  public class DeviceIdAttestationException extends java.lang.Exception {
11812    ctor public DeviceIdAttestationException(@Nullable String);
11813    ctor public DeviceIdAttestationException(@Nullable String, @Nullable Throwable);
11814  }
11815
11816  public final class KeyGenParameterSpec implements java.security.spec.AlgorithmParameterSpec {
11817    method @NonNull public int[] getAttestationIds();
11818    method public int getNamespace();
11819  }
11820
11821  public static final class KeyGenParameterSpec.Builder {
11822    method @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setAttestationIds(@NonNull int[]);
11823    method @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setNamespace(int);
11824    method @Deprecated @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setUid(int);
11825  }
11826
11827  public abstract class KeyProperties {
11828    field public static final int NAMESPACE_APPLICATION = -1; // 0xffffffff
11829    field public static final int NAMESPACE_WIFI = 102; // 0x66
11830  }
11831
11832}
11833
11834package android.security.keystore.recovery {
11835
11836  public class DecryptionFailedException extends java.security.GeneralSecurityException {
11837    ctor public DecryptionFailedException(String);
11838  }
11839
11840  public class InternalRecoveryServiceException extends java.security.GeneralSecurityException {
11841    ctor public InternalRecoveryServiceException(String);
11842    ctor public InternalRecoveryServiceException(String, Throwable);
11843  }
11844
11845  public final class KeyChainProtectionParams implements android.os.Parcelable {
11846    method public void clearSecret();
11847    method public int describeContents();
11848    method @NonNull public android.security.keystore.recovery.KeyDerivationParams getKeyDerivationParams();
11849    method public int getLockScreenUiFormat();
11850    method @NonNull public byte[] getSecret();
11851    method public int getUserSecretType();
11852    method public void writeToParcel(android.os.Parcel, int);
11853    field @NonNull public static final android.os.Parcelable.Creator<android.security.keystore.recovery.KeyChainProtectionParams> CREATOR;
11854    field public static final int TYPE_LOCKSCREEN = 100; // 0x64
11855    field public static final int UI_FORMAT_PASSWORD = 2; // 0x2
11856    field public static final int UI_FORMAT_PATTERN = 3; // 0x3
11857    field public static final int UI_FORMAT_PIN = 1; // 0x1
11858  }
11859
11860  public static class KeyChainProtectionParams.Builder {
11861    ctor public KeyChainProtectionParams.Builder();
11862    method @NonNull public android.security.keystore.recovery.KeyChainProtectionParams build();
11863    method @NonNull public android.security.keystore.recovery.KeyChainProtectionParams.Builder setKeyDerivationParams(@NonNull android.security.keystore.recovery.KeyDerivationParams);
11864    method @NonNull public android.security.keystore.recovery.KeyChainProtectionParams.Builder setLockScreenUiFormat(int);
11865    method @NonNull public android.security.keystore.recovery.KeyChainProtectionParams.Builder setSecret(@NonNull byte[]);
11866    method @NonNull public android.security.keystore.recovery.KeyChainProtectionParams.Builder setUserSecretType(int);
11867  }
11868
11869  public final class KeyChainSnapshot implements android.os.Parcelable {
11870    method public int describeContents();
11871    method public long getCounterId();
11872    method @NonNull public byte[] getEncryptedRecoveryKeyBlob();
11873    method @NonNull public java.util.List<android.security.keystore.recovery.KeyChainProtectionParams> getKeyChainProtectionParams();
11874    method public int getMaxAttempts();
11875    method @NonNull public byte[] getServerParams();
11876    method public int getSnapshotVersion();
11877    method @NonNull public java.security.cert.CertPath getTrustedHardwareCertPath();
11878    method @NonNull public java.util.List<android.security.keystore.recovery.WrappedApplicationKey> getWrappedApplicationKeys();
11879    method public void writeToParcel(android.os.Parcel, int);
11880    field @NonNull public static final android.os.Parcelable.Creator<android.security.keystore.recovery.KeyChainSnapshot> CREATOR;
11881  }
11882
11883  public final class KeyDerivationParams implements android.os.Parcelable {
11884    method @NonNull public static android.security.keystore.recovery.KeyDerivationParams createScryptParams(@NonNull byte[], int);
11885    method @NonNull public static android.security.keystore.recovery.KeyDerivationParams createSha256Params(@NonNull byte[]);
11886    method public int describeContents();
11887    method public int getAlgorithm();
11888    method public int getMemoryDifficulty();
11889    method @NonNull public byte[] getSalt();
11890    method public void writeToParcel(android.os.Parcel, int);
11891    field public static final int ALGORITHM_SCRYPT = 2; // 0x2
11892    field public static final int ALGORITHM_SHA256 = 1; // 0x1
11893    field @NonNull public static final android.os.Parcelable.Creator<android.security.keystore.recovery.KeyDerivationParams> CREATOR;
11894  }
11895
11896  public class LockScreenRequiredException extends java.security.GeneralSecurityException {
11897    ctor public LockScreenRequiredException(String);
11898  }
11899
11900  public class RecoveryController {
11901    method @NonNull @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public android.security.keystore.recovery.RecoverySession createRecoverySession();
11902    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;
11903    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;
11904    method @NonNull @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public java.util.List<java.lang.String> getAliases() throws android.security.keystore.recovery.InternalRecoveryServiceException;
11905    method @NonNull @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public static android.security.keystore.recovery.RecoveryController getInstance(@NonNull android.content.Context);
11906    method @Nullable @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public java.security.Key getKey(@NonNull String) throws android.security.keystore.recovery.InternalRecoveryServiceException, java.security.UnrecoverableKeyException;
11907    method @Nullable @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public android.security.keystore.recovery.KeyChainSnapshot getKeyChainSnapshot() throws android.security.keystore.recovery.InternalRecoveryServiceException;
11908    method @NonNull @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public int[] getRecoverySecretTypes() throws android.security.keystore.recovery.InternalRecoveryServiceException;
11909    method @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public int getRecoveryStatus(@NonNull String) throws android.security.keystore.recovery.InternalRecoveryServiceException;
11910    method @NonNull @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public java.util.Map<java.lang.String,java.security.cert.X509Certificate> getRootCertificates();
11911    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;
11912    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;
11913    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;
11914    method @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public static boolean isRecoverableKeyStoreEnabled(@NonNull android.content.Context);
11915    method @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public void removeKey(@NonNull String) throws android.security.keystore.recovery.InternalRecoveryServiceException;
11916    method @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public void setRecoverySecretTypes(@NonNull int[]) throws android.security.keystore.recovery.InternalRecoveryServiceException;
11917    method @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public void setRecoveryStatus(@NonNull String, int) throws android.security.keystore.recovery.InternalRecoveryServiceException;
11918    method @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public void setServerParams(@NonNull byte[]) throws android.security.keystore.recovery.InternalRecoveryServiceException;
11919    method @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public void setSnapshotCreatedPendingIntent(@Nullable android.app.PendingIntent) throws android.security.keystore.recovery.InternalRecoveryServiceException;
11920    field public static final int RECOVERY_STATUS_PERMANENT_FAILURE = 3; // 0x3
11921    field public static final int RECOVERY_STATUS_SYNCED = 0; // 0x0
11922    field public static final int RECOVERY_STATUS_SYNC_IN_PROGRESS = 1; // 0x1
11923  }
11924
11925  public class RecoverySession implements java.lang.AutoCloseable {
11926    method @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public void close();
11927    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;
11928    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;
11929  }
11930
11931  public class SessionExpiredException extends java.security.GeneralSecurityException {
11932    ctor public SessionExpiredException(String);
11933  }
11934
11935  public final class WrappedApplicationKey implements android.os.Parcelable {
11936    method public int describeContents();
11937    method @NonNull public String getAlias();
11938    method @NonNull public byte[] getEncryptedKeyMaterial();
11939    method @Nullable public byte[] getMetadata();
11940    method public void writeToParcel(android.os.Parcel, int);
11941    field @NonNull public static final android.os.Parcelable.Creator<android.security.keystore.recovery.WrappedApplicationKey> CREATOR;
11942  }
11943
11944  public static class WrappedApplicationKey.Builder {
11945    ctor public WrappedApplicationKey.Builder();
11946    method @NonNull public android.security.keystore.recovery.WrappedApplicationKey build();
11947    method @NonNull public android.security.keystore.recovery.WrappedApplicationKey.Builder setAlias(@NonNull String);
11948    method @NonNull public android.security.keystore.recovery.WrappedApplicationKey.Builder setEncryptedKeyMaterial(@NonNull byte[]);
11949    method @NonNull public android.security.keystore.recovery.WrappedApplicationKey.Builder setMetadata(@Nullable byte[]);
11950  }
11951
11952}
11953
11954package android.service.ambientcontext {
11955
11956  public final class AmbientContextDetectionResult implements android.os.Parcelable {
11957    method public int describeContents();
11958    method @NonNull public java.util.List<android.app.ambientcontext.AmbientContextEvent> getEvents();
11959    method @NonNull public String getPackageName();
11960    method public void writeToParcel(@NonNull android.os.Parcel, int);
11961    field @NonNull public static final android.os.Parcelable.Creator<android.service.ambientcontext.AmbientContextDetectionResult> CREATOR;
11962  }
11963
11964  public static final class AmbientContextDetectionResult.Builder {
11965    ctor public AmbientContextDetectionResult.Builder(@NonNull String);
11966    method @NonNull public android.service.ambientcontext.AmbientContextDetectionResult.Builder addEvent(@NonNull android.app.ambientcontext.AmbientContextEvent);
11967    method @NonNull public android.service.ambientcontext.AmbientContextDetectionResult.Builder addEvents(@NonNull java.util.List<android.app.ambientcontext.AmbientContextEvent>);
11968    method @NonNull public android.service.ambientcontext.AmbientContextDetectionResult build();
11969    method @NonNull public android.service.ambientcontext.AmbientContextDetectionResult.Builder clearEvents();
11970  }
11971
11972  public abstract class AmbientContextDetectionService extends android.app.Service {
11973    ctor public AmbientContextDetectionService();
11974    method @Nullable public final android.os.IBinder onBind(@NonNull android.content.Intent);
11975    method @BinderThread public abstract void onQueryServiceStatus(@NonNull int[], @NonNull String, @NonNull java.util.function.Consumer<android.service.ambientcontext.AmbientContextDetectionServiceStatus>);
11976    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>);
11977    method public abstract void onStopDetection(@NonNull String);
11978    field public static final String SERVICE_INTERFACE = "android.service.ambientcontext.AmbientContextDetectionService";
11979  }
11980
11981  public final class AmbientContextDetectionServiceStatus implements android.os.Parcelable {
11982    method public int describeContents();
11983    method @NonNull public String getPackageName();
11984    method public int getStatusCode();
11985    method public void writeToParcel(@NonNull android.os.Parcel, int);
11986    field @NonNull public static final android.os.Parcelable.Creator<android.service.ambientcontext.AmbientContextDetectionServiceStatus> CREATOR;
11987  }
11988
11989  public static final class AmbientContextDetectionServiceStatus.Builder {
11990    ctor public AmbientContextDetectionServiceStatus.Builder(@NonNull String);
11991    method @NonNull public android.service.ambientcontext.AmbientContextDetectionServiceStatus build();
11992    method @NonNull public android.service.ambientcontext.AmbientContextDetectionServiceStatus.Builder setStatusCode(int);
11993  }
11994
11995}
11996
11997package android.service.appprediction {
11998
11999  public abstract class AppPredictionService extends android.app.Service {
12000    ctor public AppPredictionService();
12001    method @MainThread public abstract void onAppTargetEvent(@NonNull android.app.prediction.AppPredictionSessionId, @NonNull android.app.prediction.AppTargetEvent);
12002    method @NonNull public final android.os.IBinder onBind(@NonNull android.content.Intent);
12003    method public void onCreatePredictionSession(@NonNull android.app.prediction.AppPredictionContext, @NonNull android.app.prediction.AppPredictionSessionId);
12004    method @MainThread public void onDestroyPredictionSession(@NonNull android.app.prediction.AppPredictionSessionId);
12005    method @MainThread public abstract void onLaunchLocationShown(@NonNull android.app.prediction.AppPredictionSessionId, @NonNull String, @NonNull java.util.List<android.app.prediction.AppTargetId>);
12006    method @MainThread public abstract void onRequestPredictionUpdate(@NonNull android.app.prediction.AppPredictionSessionId);
12007    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>>);
12008    method @MainThread public void onStartPredictionUpdates();
12009    method @MainThread public void onStopPredictionUpdates();
12010    method public final void updatePredictions(@NonNull android.app.prediction.AppPredictionSessionId, @NonNull java.util.List<android.app.prediction.AppTarget>);
12011  }
12012
12013}
12014
12015package android.service.assist.classification {
12016
12017  public final class FieldClassification implements android.os.Parcelable {
12018    ctor public FieldClassification(@NonNull android.view.autofill.AutofillId, @NonNull java.util.Set<java.lang.String>, @NonNull java.util.Set<java.lang.String>);
12019    method @NonNull public java.util.Set<java.lang.String> getGroupHints();
12020  }
12021
12022  public final class FieldClassificationRequest implements android.os.Parcelable {
12023    ctor public FieldClassificationRequest(@NonNull android.app.assist.AssistStructure);
12024    method public int describeContents();
12025    method @NonNull public android.app.assist.AssistStructure getAssistStructure();
12026    method public void writeToParcel(@NonNull android.os.Parcel, int);
12027    field @NonNull public static final android.os.Parcelable.Creator<android.service.assist.classification.FieldClassificationRequest> CREATOR;
12028  }
12029
12030  public final class FieldClassificationResponse implements android.os.Parcelable {
12031    ctor public FieldClassificationResponse(@NonNull java.util.Set<android.service.assist.classification.FieldClassification>);
12032    method public int describeContents();
12033    method @NonNull public java.util.Set<android.service.assist.classification.FieldClassification> getClassifications();
12034    method public void writeToParcel(@NonNull android.os.Parcel, int);
12035    field @NonNull public static final android.os.Parcelable.Creator<android.service.assist.classification.FieldClassificationResponse> CREATOR;
12036  }
12037
12038  public abstract class FieldClassificationService extends android.app.Service {
12039    ctor public FieldClassificationService();
12040    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>);
12041    method public void onConnected();
12042    method public void onDisconnected();
12043    field public static final String SERVICE_INTERFACE = "android.service.assist.classification.FieldClassificationService";
12044  }
12045
12046}
12047
12048package android.service.attention {
12049
12050  public abstract class AttentionService extends android.app.Service {
12051    ctor public AttentionService();
12052    method @Nullable public final android.os.IBinder onBind(@NonNull android.content.Intent);
12053    method public abstract void onCancelAttentionCheck(@NonNull android.service.attention.AttentionService.AttentionCallback);
12054    method public abstract void onCheckAttention(@NonNull android.service.attention.AttentionService.AttentionCallback);
12055    method public void onStartProximityUpdates(@NonNull android.service.attention.AttentionService.ProximityUpdateCallback);
12056    method public void onStopProximityUpdates();
12057    field public static final int ATTENTION_FAILURE_CAMERA_PERMISSION_ABSENT = 6; // 0x6
12058    field public static final int ATTENTION_FAILURE_CANCELLED = 3; // 0x3
12059    field public static final int ATTENTION_FAILURE_PREEMPTED = 4; // 0x4
12060    field public static final int ATTENTION_FAILURE_TIMED_OUT = 5; // 0x5
12061    field public static final int ATTENTION_FAILURE_UNKNOWN = 2; // 0x2
12062    field public static final int ATTENTION_SUCCESS_ABSENT = 0; // 0x0
12063    field public static final int ATTENTION_SUCCESS_PRESENT = 1; // 0x1
12064    field public static final double PROXIMITY_UNKNOWN = -1.0;
12065    field public static final String SERVICE_INTERFACE = "android.service.attention.AttentionService";
12066  }
12067
12068  public static final class AttentionService.AttentionCallback {
12069    method public void onFailure(int);
12070    method public void onSuccess(int, long);
12071  }
12072
12073  public static final class AttentionService.ProximityUpdateCallback {
12074    method public void onProximityUpdate(double);
12075  }
12076
12077}
12078
12079package android.service.autofill {
12080
12081  public abstract class AutofillFieldClassificationService extends android.app.Service {
12082    ctor public AutofillFieldClassificationService();
12083    method public android.os.IBinder onBind(android.content.Intent);
12084    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);
12085    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>);
12086    field public static final String REQUIRED_ALGORITHM_CREDIT_CARD = "CREDIT_CARD";
12087    field public static final String REQUIRED_ALGORITHM_EDIT_DISTANCE = "EDIT_DISTANCE";
12088    field public static final String REQUIRED_ALGORITHM_EXACT_MATCH = "EXACT_MATCH";
12089    field public static final String SERVICE_INTERFACE = "android.service.autofill.AutofillFieldClassificationService";
12090    field public static final String SERVICE_META_DATA_KEY_AVAILABLE_ALGORITHMS = "android.autofill.field_classification.available_algorithms";
12091    field public static final String SERVICE_META_DATA_KEY_DEFAULT_ALGORITHM = "android.autofill.field_classification.default_algorithm";
12092  }
12093
12094  public static final class Dataset.Builder {
12095    ctor @Deprecated public Dataset.Builder(@NonNull android.service.autofill.InlinePresentation);
12096    method @NonNull public android.service.autofill.Dataset.Builder setContent(@NonNull android.view.autofill.AutofillId, @Nullable android.content.ClipData);
12097    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);
12098  }
12099
12100  public abstract class InlineSuggestionRenderService extends android.app.Service {
12101    ctor public InlineSuggestionRenderService();
12102    method @Nullable public final android.os.IBinder onBind(@NonNull android.content.Intent);
12103    method @NonNull public android.os.Bundle onGetInlineSuggestionsRendererInfo();
12104    method @Nullable public android.view.View onRenderSuggestion(@NonNull android.service.autofill.InlinePresentation, int, int);
12105    method public final void startIntentSender(@NonNull android.content.IntentSender);
12106    field public static final String SERVICE_INTERFACE = "android.service.autofill.InlineSuggestionRenderService";
12107  }
12108
12109}
12110
12111package android.service.autofill.augmented {
12112
12113  public abstract class AugmentedAutofillService extends android.app.Service {
12114    ctor public AugmentedAutofillService();
12115    method protected final void dump(java.io.FileDescriptor, java.io.PrintWriter, String[]);
12116    method protected void dump(@NonNull java.io.PrintWriter, @NonNull String[]);
12117    method @Nullable public final android.service.autofill.FillEventHistory getFillEventHistory();
12118    method public void onConnected();
12119    method public void onDisconnected();
12120    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);
12121    method public final boolean requestAutofill(@NonNull android.content.ComponentName, @NonNull android.view.autofill.AutofillId);
12122    field public static final String SERVICE_INTERFACE = "android.service.autofill.augmented.AugmentedAutofillService";
12123  }
12124
12125  public final class FillCallback {
12126    method public void onSuccess(@Nullable android.service.autofill.augmented.FillResponse);
12127  }
12128
12129  public final class FillController {
12130    method public void autofill(@NonNull java.util.List<android.util.Pair<android.view.autofill.AutofillId,android.view.autofill.AutofillValue>>);
12131  }
12132
12133  public final class FillRequest {
12134    method @NonNull public android.content.ComponentName getActivityComponent();
12135    method @NonNull public android.view.autofill.AutofillId getFocusedId();
12136    method @NonNull public android.view.autofill.AutofillValue getFocusedValue();
12137    method @Nullable public android.app.assist.AssistStructure.ViewNode getFocusedViewNode();
12138    method @Nullable public android.view.inputmethod.InlineSuggestionsRequest getInlineSuggestionsRequest();
12139    method @Nullable public android.service.autofill.augmented.PresentationParams getPresentationParams();
12140    method public int getTaskId();
12141  }
12142
12143  public final class FillResponse {
12144  }
12145
12146  public static final class FillResponse.Builder {
12147    ctor public FillResponse.Builder();
12148    method @NonNull public android.service.autofill.augmented.FillResponse build();
12149    method @NonNull public android.service.autofill.augmented.FillResponse.Builder setClientState(@NonNull android.os.Bundle);
12150    method @NonNull public android.service.autofill.augmented.FillResponse.Builder setFillWindow(@NonNull android.service.autofill.augmented.FillWindow);
12151    method @NonNull public android.service.autofill.augmented.FillResponse.Builder setInlineSuggestions(@NonNull java.util.List<android.service.autofill.Dataset>);
12152  }
12153
12154  public final class FillWindow implements java.lang.AutoCloseable {
12155    ctor public FillWindow();
12156    method public void destroy();
12157    method public boolean update(@NonNull android.service.autofill.augmented.PresentationParams.Area, @NonNull android.view.View, long);
12158  }
12159
12160  public abstract class PresentationParams {
12161    method @Nullable public android.service.autofill.augmented.PresentationParams.Area getSuggestionArea();
12162  }
12163
12164  public abstract static class PresentationParams.Area {
12165    method @NonNull public android.graphics.Rect getBounds();
12166  }
12167
12168}
12169
12170package android.service.carrier {
12171
12172  public abstract class ApnService extends android.app.Service {
12173    ctor public ApnService();
12174    method @NonNull public android.os.IBinder onBind(@Nullable android.content.Intent);
12175    method @NonNull @WorkerThread public abstract java.util.List<android.content.ContentValues> onRestoreApns(int);
12176  }
12177
12178  public final class CarrierMessagingServiceWrapper implements java.lang.AutoCloseable {
12179    ctor public CarrierMessagingServiceWrapper();
12180    method public boolean bindToCarrierMessagingService(@NonNull android.content.Context, @NonNull String, @NonNull java.util.concurrent.Executor, @NonNull Runnable);
12181    method public void disconnect();
12182    method public void downloadMms(@NonNull android.net.Uri, int, @NonNull android.net.Uri, @NonNull java.util.concurrent.Executor, @NonNull android.service.carrier.CarrierMessagingServiceWrapper.CarrierMessagingCallback);
12183    method public void receiveSms(@NonNull android.service.carrier.MessagePdu, @NonNull String, int, int, @NonNull java.util.concurrent.Executor, @NonNull android.service.carrier.CarrierMessagingServiceWrapper.CarrierMessagingCallback);
12184    method public void sendDataSms(@NonNull byte[], int, @NonNull String, int, int, @NonNull java.util.concurrent.Executor, @NonNull android.service.carrier.CarrierMessagingServiceWrapper.CarrierMessagingCallback);
12185    method public void sendMms(@NonNull android.net.Uri, int, @NonNull android.net.Uri, @NonNull java.util.concurrent.Executor, @NonNull android.service.carrier.CarrierMessagingServiceWrapper.CarrierMessagingCallback);
12186    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);
12187    method public void sendTextSms(@NonNull String, int, @NonNull String, int, @NonNull java.util.concurrent.Executor, @NonNull android.service.carrier.CarrierMessagingServiceWrapper.CarrierMessagingCallback);
12188  }
12189
12190  public static interface CarrierMessagingServiceWrapper.CarrierMessagingCallback {
12191    method public default void onDownloadMmsComplete(int);
12192    method public default void onReceiveSmsComplete(int);
12193    method public default void onSendMmsComplete(int, @Nullable byte[]);
12194    method public default void onSendMultipartSmsComplete(int, @Nullable int[]);
12195    method public default void onSendSmsComplete(int, int);
12196  }
12197
12198}
12199
12200package android.service.cloudsearch {
12201
12202  public abstract class CloudSearchService extends android.app.Service {
12203    ctor public CloudSearchService();
12204    method @NonNull public final android.os.IBinder onBind(@NonNull android.content.Intent);
12205    method public abstract void onSearch(@NonNull android.app.cloudsearch.SearchRequest);
12206    method public final void returnResults(@NonNull String, @NonNull android.app.cloudsearch.SearchResponse);
12207  }
12208
12209}
12210
12211package android.service.contentcapture {
12212
12213  public final class ActivityEvent implements android.os.Parcelable {
12214    method public int describeContents();
12215    method @NonNull public android.app.assist.ActivityId getActivityId();
12216    method @NonNull public android.content.ComponentName getComponentName();
12217    method public int getEventType();
12218    method public void writeToParcel(@NonNull android.os.Parcel, int);
12219    field @NonNull public static final android.os.Parcelable.Creator<android.service.contentcapture.ActivityEvent> CREATOR;
12220    field public static final int TYPE_ACTIVITY_DESTROYED = 24; // 0x18
12221    field public static final int TYPE_ACTIVITY_PAUSED = 2; // 0x2
12222    field public static final int TYPE_ACTIVITY_RESUMED = 1; // 0x1
12223    field public static final int TYPE_ACTIVITY_STOPPED = 23; // 0x17
12224  }
12225
12226  public abstract class ContentCaptureService extends android.app.Service {
12227    ctor public ContentCaptureService();
12228    method public final void disableSelf();
12229    method public void onActivityEvent(@NonNull android.service.contentcapture.ActivityEvent);
12230    method public void onActivitySnapshot(@NonNull android.view.contentcapture.ContentCaptureSessionId, @NonNull android.service.contentcapture.SnapshotData);
12231    method public void onConnected();
12232    method public void onContentCaptureEvent(@NonNull android.view.contentcapture.ContentCaptureSessionId, @NonNull android.view.contentcapture.ContentCaptureEvent);
12233    method public void onCreateContentCaptureSession(@NonNull android.view.contentcapture.ContentCaptureContext, @NonNull android.view.contentcapture.ContentCaptureSessionId);
12234    method public void onDataRemovalRequest(@NonNull android.view.contentcapture.DataRemovalRequest);
12235    method public void onDataShareRequest(@NonNull android.view.contentcapture.DataShareRequest, @NonNull android.service.contentcapture.DataShareCallback);
12236    method public void onDestroyContentCaptureSession(@NonNull android.view.contentcapture.ContentCaptureSessionId);
12237    method public void onDisconnected();
12238    method public final void setContentCaptureConditions(@NonNull String, @Nullable java.util.Set<android.view.contentcapture.ContentCaptureCondition>);
12239    method public final void setContentCaptureWhitelist(@Nullable java.util.Set<java.lang.String>, @Nullable java.util.Set<android.content.ComponentName>);
12240    field public static final String SERVICE_INTERFACE = "android.service.contentcapture.ContentCaptureService";
12241    field public static final String SERVICE_META_DATA = "android.content_capture";
12242  }
12243
12244  public interface DataShareCallback {
12245    method public void onAccept(@NonNull java.util.concurrent.Executor, @NonNull android.service.contentcapture.DataShareReadAdapter);
12246    method public void onReject();
12247  }
12248
12249  public interface DataShareReadAdapter {
12250    method public void onError(int);
12251    method public void onStart(@NonNull android.os.ParcelFileDescriptor);
12252  }
12253
12254  public final class SnapshotData implements android.os.Parcelable {
12255    method public int describeContents();
12256    method @Nullable public android.app.assist.AssistContent getAssistContent();
12257    method @NonNull public android.os.Bundle getAssistData();
12258    method @NonNull public android.app.assist.AssistStructure getAssistStructure();
12259    method public void writeToParcel(@NonNull android.os.Parcel, int);
12260    field @NonNull public static final android.os.Parcelable.Creator<android.service.contentcapture.SnapshotData> CREATOR;
12261  }
12262
12263}
12264
12265package android.service.contentsuggestions {
12266
12267  public abstract class ContentSuggestionsService extends android.app.Service {
12268    ctor public ContentSuggestionsService();
12269    method public abstract void onClassifyContentSelections(@NonNull android.app.contentsuggestions.ClassificationsRequest, @NonNull android.app.contentsuggestions.ContentSuggestionsManager.ClassificationsCallback);
12270    method public abstract void onNotifyInteraction(@NonNull String, @NonNull android.os.Bundle);
12271    method public abstract void onProcessContextImage(int, @Nullable android.graphics.Bitmap, @NonNull android.os.Bundle);
12272    method public abstract void onSuggestContentSelections(@NonNull android.app.contentsuggestions.SelectionsRequest, @NonNull android.app.contentsuggestions.ContentSuggestionsManager.SelectionsCallback);
12273    field public static final String SERVICE_INTERFACE = "android.service.contentsuggestions.ContentSuggestionsService";
12274  }
12275
12276}
12277
12278package android.service.dataloader {
12279
12280  public abstract class DataLoaderService extends android.app.Service {
12281    ctor public DataLoaderService();
12282    method @Nullable public android.service.dataloader.DataLoaderService.DataLoader onCreateDataLoader(@NonNull android.content.pm.DataLoaderParams);
12283  }
12284
12285  public static interface DataLoaderService.DataLoader {
12286    method public boolean onCreate(@NonNull android.content.pm.DataLoaderParams, @NonNull android.service.dataloader.DataLoaderService.FileSystemConnector);
12287    method public boolean onPrepareImage(@NonNull java.util.Collection<android.content.pm.InstallationFile>, @NonNull java.util.Collection<java.lang.String>);
12288  }
12289
12290  public static final class DataLoaderService.FileSystemConnector {
12291    method @RequiresPermission(android.Manifest.permission.INSTALL_PACKAGES) public void writeData(@NonNull String, long, long, @NonNull android.os.ParcelFileDescriptor) throws java.io.IOException;
12292  }
12293
12294}
12295
12296package android.service.displayhash {
12297
12298  public final class DisplayHashParams implements android.os.Parcelable {
12299    method public int describeContents();
12300    method @Nullable public android.util.Size getBufferSize();
12301    method public boolean isGrayscaleBuffer();
12302    method public void writeToParcel(@NonNull android.os.Parcel, int);
12303    field @NonNull public static final android.os.Parcelable.Creator<android.service.displayhash.DisplayHashParams> CREATOR;
12304  }
12305
12306  public static final class DisplayHashParams.Builder {
12307    ctor public DisplayHashParams.Builder();
12308    method @NonNull public android.service.displayhash.DisplayHashParams build();
12309    method @NonNull public android.service.displayhash.DisplayHashParams.Builder setBufferSize(int, int);
12310    method @NonNull public android.service.displayhash.DisplayHashParams.Builder setGrayscaleBuffer(boolean);
12311  }
12312
12313  public abstract class DisplayHashingService extends android.app.Service {
12314    ctor public DisplayHashingService();
12315    method @NonNull public final android.os.IBinder onBind(@NonNull android.content.Intent);
12316    method public abstract void onGenerateDisplayHash(@NonNull byte[], @NonNull android.hardware.HardwareBuffer, @NonNull android.graphics.Rect, @NonNull String, @NonNull android.view.displayhash.DisplayHashResultCallback);
12317    method @NonNull public abstract java.util.Map<java.lang.String,android.service.displayhash.DisplayHashParams> onGetDisplayHashAlgorithms();
12318    method public abstract int onGetIntervalBetweenRequestsMillis();
12319    method @Nullable public abstract android.view.displayhash.VerifiedDisplayHash onVerifyDisplayHash(@NonNull byte[], @NonNull android.view.displayhash.DisplayHash);
12320    field public static final String SERVICE_INTERFACE = "android.service.displayhash.DisplayHashingService";
12321  }
12322
12323}
12324
12325package android.service.euicc {
12326
12327  public final class DownloadSubscriptionResult implements android.os.Parcelable {
12328    ctor public DownloadSubscriptionResult(int, int, int);
12329    method public int describeContents();
12330    method public int getCardId();
12331    method public int getResolvableErrors();
12332    method public int getResult();
12333    method public void writeToParcel(android.os.Parcel, int);
12334    field @NonNull public static final android.os.Parcelable.Creator<android.service.euicc.DownloadSubscriptionResult> CREATOR;
12335  }
12336
12337  public final class EuiccProfileInfo implements android.os.Parcelable {
12338    method public int describeContents();
12339    method public android.service.carrier.CarrierIdentifier getCarrierIdentifier();
12340    method public String getIccid();
12341    method @Nullable public String getNickname();
12342    method @android.service.euicc.EuiccProfileInfo.PolicyRule public int getPolicyRules();
12343    method @android.service.euicc.EuiccProfileInfo.ProfileClass public int getProfileClass();
12344    method public String getProfileName();
12345    method public String getServiceProviderName();
12346    method @android.service.euicc.EuiccProfileInfo.ProfileState public int getState();
12347    method @Nullable public java.util.List<android.telephony.UiccAccessRule> getUiccAccessRules();
12348    method public boolean hasPolicyRule(@android.service.euicc.EuiccProfileInfo.PolicyRule int);
12349    method public boolean hasPolicyRules();
12350    method public void writeToParcel(android.os.Parcel, int);
12351    field @NonNull public static final android.os.Parcelable.Creator<android.service.euicc.EuiccProfileInfo> CREATOR;
12352    field public static final int POLICY_RULE_DELETE_AFTER_DISABLING = 4; // 0x4
12353    field public static final int POLICY_RULE_DO_NOT_DELETE = 2; // 0x2
12354    field public static final int POLICY_RULE_DO_NOT_DISABLE = 1; // 0x1
12355    field public static final int PROFILE_CLASS_OPERATIONAL = 2; // 0x2
12356    field public static final int PROFILE_CLASS_PROVISIONING = 1; // 0x1
12357    field public static final int PROFILE_CLASS_TESTING = 0; // 0x0
12358    field public static final int PROFILE_STATE_DISABLED = 0; // 0x0
12359    field public static final int PROFILE_STATE_ENABLED = 1; // 0x1
12360  }
12361
12362  public static final class EuiccProfileInfo.Builder {
12363    ctor public EuiccProfileInfo.Builder(String);
12364    ctor public EuiccProfileInfo.Builder(android.service.euicc.EuiccProfileInfo);
12365    method public android.service.euicc.EuiccProfileInfo build();
12366    method public android.service.euicc.EuiccProfileInfo.Builder setCarrierIdentifier(android.service.carrier.CarrierIdentifier);
12367    method public android.service.euicc.EuiccProfileInfo.Builder setIccid(String);
12368    method public android.service.euicc.EuiccProfileInfo.Builder setNickname(String);
12369    method public android.service.euicc.EuiccProfileInfo.Builder setPolicyRules(@android.service.euicc.EuiccProfileInfo.PolicyRule int);
12370    method public android.service.euicc.EuiccProfileInfo.Builder setProfileClass(@android.service.euicc.EuiccProfileInfo.ProfileClass int);
12371    method public android.service.euicc.EuiccProfileInfo.Builder setProfileName(String);
12372    method public android.service.euicc.EuiccProfileInfo.Builder setServiceProviderName(String);
12373    method public android.service.euicc.EuiccProfileInfo.Builder setState(@android.service.euicc.EuiccProfileInfo.ProfileState int);
12374    method public android.service.euicc.EuiccProfileInfo.Builder setUiccAccessRule(@Nullable java.util.List<android.telephony.UiccAccessRule>);
12375  }
12376
12377  @IntDef(flag=true, prefix={"POLICY_RULE_"}, value={android.service.euicc.EuiccProfileInfo.POLICY_RULE_DO_NOT_DISABLE, android.service.euicc.EuiccProfileInfo.POLICY_RULE_DO_NOT_DELETE, android.service.euicc.EuiccProfileInfo.POLICY_RULE_DELETE_AFTER_DISABLING}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface EuiccProfileInfo.PolicyRule {
12378  }
12379
12380  @IntDef(prefix={"PROFILE_CLASS_"}, value={android.service.euicc.EuiccProfileInfo.PROFILE_CLASS_TESTING, android.service.euicc.EuiccProfileInfo.PROFILE_CLASS_PROVISIONING, android.service.euicc.EuiccProfileInfo.PROFILE_CLASS_OPERATIONAL, 0xffffffff}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface EuiccProfileInfo.ProfileClass {
12381  }
12382
12383  @IntDef(prefix={"PROFILE_STATE_"}, value={android.service.euicc.EuiccProfileInfo.PROFILE_STATE_DISABLED, android.service.euicc.EuiccProfileInfo.PROFILE_STATE_ENABLED, 0xffffffff}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface EuiccProfileInfo.ProfileState {
12384  }
12385
12386  public abstract class EuiccService extends android.app.Service {
12387    ctor public EuiccService();
12388    method public void dump(@NonNull java.io.PrintWriter);
12389    method public int encodeSmdxSubjectAndReasonCode(@Nullable String, @Nullable String);
12390    method @CallSuper public android.os.IBinder onBind(android.content.Intent);
12391    method public abstract int onDeleteSubscription(int, String);
12392    method @Deprecated public android.service.euicc.DownloadSubscriptionResult onDownloadSubscription(int, @NonNull android.telephony.euicc.DownloadableSubscription, boolean, boolean, @Nullable android.os.Bundle);
12393    method @NonNull public android.service.euicc.DownloadSubscriptionResult onDownloadSubscription(int, int, @NonNull android.telephony.euicc.DownloadableSubscription, boolean, boolean, @NonNull android.os.Bundle);
12394    method @Deprecated public int onDownloadSubscription(int, @NonNull android.telephony.euicc.DownloadableSubscription, boolean, boolean);
12395    method @Deprecated public abstract int onEraseSubscriptions(int);
12396    method public int onEraseSubscriptions(int, @android.telephony.euicc.EuiccCardManager.ResetOption int);
12397    method public abstract android.service.euicc.GetDefaultDownloadableSubscriptionListResult onGetDefaultDownloadableSubscriptionList(int, boolean);
12398    method public abstract android.service.euicc.GetDownloadableSubscriptionMetadataResult onGetDownloadableSubscriptionMetadata(int, android.telephony.euicc.DownloadableSubscription, boolean);
12399    method @NonNull public android.service.euicc.GetDownloadableSubscriptionMetadataResult onGetDownloadableSubscriptionMetadata(int, int, @NonNull android.telephony.euicc.DownloadableSubscription, boolean);
12400    method public abstract String onGetEid(int);
12401    method @NonNull public abstract android.telephony.euicc.EuiccInfo onGetEuiccInfo(int);
12402    method @NonNull public abstract android.service.euicc.GetEuiccProfileInfoListResult onGetEuiccProfileInfoList(int);
12403    method @android.telephony.euicc.EuiccManager.OtaStatus public abstract int onGetOtaStatus(int);
12404    method public abstract int onRetainSubscriptionsForFactoryReset(int);
12405    method public abstract void onStartOtaIfNecessary(int, android.service.euicc.EuiccService.OtaStatusChangedCallback);
12406    method @Deprecated public abstract int onSwitchToSubscription(int, @Nullable String, boolean);
12407    method public int onSwitchToSubscriptionWithPort(int, int, @Nullable String, boolean);
12408    method public abstract int onUpdateSubscriptionNickname(int, String, String);
12409    field public static final String ACTION_BIND_CARRIER_PROVISIONING_SERVICE = "android.service.euicc.action.BIND_CARRIER_PROVISIONING_SERVICE";
12410    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";
12411    field public static final String ACTION_DELETE_SUBSCRIPTION_PRIVILEGED = "android.service.euicc.action.DELETE_SUBSCRIPTION_PRIVILEGED";
12412    field @RequiresPermission(android.Manifest.permission.BIND_EUICC_SERVICE) public static final String ACTION_MANAGE_EMBEDDED_SUBSCRIPTIONS = "android.service.euicc.action.MANAGE_EMBEDDED_SUBSCRIPTIONS";
12413    field @RequiresPermission(android.Manifest.permission.BIND_EUICC_SERVICE) public static final String ACTION_PROVISION_EMBEDDED_SUBSCRIPTION = "android.service.euicc.action.PROVISION_EMBEDDED_SUBSCRIPTION";
12414    field public static final String ACTION_RENAME_SUBSCRIPTION_PRIVILEGED = "android.service.euicc.action.RENAME_SUBSCRIPTION_PRIVILEGED";
12415    field @Deprecated public static final String ACTION_RESOLVE_CONFIRMATION_CODE = "android.service.euicc.action.RESOLVE_CONFIRMATION_CODE";
12416    field public static final String ACTION_RESOLVE_DEACTIVATE_SIM = "android.service.euicc.action.RESOLVE_DEACTIVATE_SIM";
12417    field public static final String ACTION_RESOLVE_NO_PRIVILEGES = "android.service.euicc.action.RESOLVE_NO_PRIVILEGES";
12418    field public static final String ACTION_RESOLVE_RESOLVABLE_ERRORS = "android.service.euicc.action.RESOLVE_RESOLVABLE_ERRORS";
12419    field public static final String ACTION_START_CARRIER_ACTIVATION = "android.service.euicc.action.START_CARRIER_ACTIVATION";
12420    field public static final String ACTION_START_EUICC_ACTIVATION = "android.service.euicc.action.START_EUICC_ACTIVATION";
12421    field public static final String ACTION_TOGGLE_SUBSCRIPTION_PRIVILEGED = "android.service.euicc.action.TOGGLE_SUBSCRIPTION_PRIVILEGED";
12422    field @RequiresPermission(android.Manifest.permission.BIND_EUICC_SERVICE) public static final String ACTION_TRANSFER_EMBEDDED_SUBSCRIPTIONS = "android.service.euicc.action.TRANSFER_EMBEDDED_SUBSCRIPTIONS";
12423    field public static final String CATEGORY_EUICC_UI = "android.service.euicc.category.EUICC_UI";
12424    field public static final String EUICC_SERVICE_INTERFACE = "android.service.euicc.EuiccService";
12425    field public static final String EXTRA_RESOLUTION_ALLOW_POLICY_RULES = "android.service.euicc.extra.RESOLUTION_ALLOW_POLICY_RULES";
12426    field public static final String EXTRA_RESOLUTION_CALLING_PACKAGE = "android.service.euicc.extra.RESOLUTION_CALLING_PACKAGE";
12427    field public static final String EXTRA_RESOLUTION_CARD_ID = "android.service.euicc.extra.RESOLUTION_CARD_ID";
12428    field public static final String EXTRA_RESOLUTION_CONFIRMATION_CODE = "android.service.euicc.extra.RESOLUTION_CONFIRMATION_CODE";
12429    field public static final String EXTRA_RESOLUTION_CONFIRMATION_CODE_RETRIED = "android.service.euicc.extra.RESOLUTION_CONFIRMATION_CODE_RETRIED";
12430    field public static final String EXTRA_RESOLUTION_CONSENT = "android.service.euicc.extra.RESOLUTION_CONSENT";
12431    field public static final String EXTRA_RESOLUTION_PORT_INDEX = "android.service.euicc.extra.RESOLUTION_PORT_INDEX";
12432    field public static final String EXTRA_RESOLUTION_SUBSCRIPTION_ID = "android.service.euicc.extra.RESOLUTION_SUBSCRIPTION_ID";
12433    field public static final String EXTRA_RESOLUTION_USE_PORT_INDEX = "android.service.euicc.extra.RESOLUTION_USE_PORT_INDEX";
12434    field public static final String EXTRA_RESOLVABLE_ERRORS = "android.service.euicc.extra.RESOLVABLE_ERRORS";
12435    field public static final int RESOLVABLE_ERROR_CONFIRMATION_CODE = 1; // 0x1
12436    field public static final int RESOLVABLE_ERROR_POLICY_RULES = 2; // 0x2
12437    field public static final int RESULT_FIRST_USER = 1; // 0x1
12438    field public static final int RESULT_MUST_DEACTIVATE_SIM = -1; // 0xffffffff
12439    field @Deprecated public static final int RESULT_NEED_CONFIRMATION_CODE = -2; // 0xfffffffe
12440    field public static final int RESULT_OK = 0; // 0x0
12441    field public static final int RESULT_RESOLVABLE_ERRORS = -2; // 0xfffffffe
12442  }
12443
12444  public abstract static class EuiccService.OtaStatusChangedCallback {
12445    ctor public EuiccService.OtaStatusChangedCallback();
12446    method public abstract void onOtaStatusChanged(int);
12447  }
12448
12449  public final class GetDefaultDownloadableSubscriptionListResult implements android.os.Parcelable {
12450    ctor public GetDefaultDownloadableSubscriptionListResult(int, @Nullable android.telephony.euicc.DownloadableSubscription[]);
12451    method public int describeContents();
12452    method @Nullable public java.util.List<android.telephony.euicc.DownloadableSubscription> getDownloadableSubscriptions();
12453    method public int getResult();
12454    method public void writeToParcel(android.os.Parcel, int);
12455    field @NonNull public static final android.os.Parcelable.Creator<android.service.euicc.GetDefaultDownloadableSubscriptionListResult> CREATOR;
12456  }
12457
12458  public final class GetDownloadableSubscriptionMetadataResult implements android.os.Parcelable {
12459    ctor public GetDownloadableSubscriptionMetadataResult(int, @Nullable android.telephony.euicc.DownloadableSubscription);
12460    method public int describeContents();
12461    method @Nullable public android.telephony.euicc.DownloadableSubscription getDownloadableSubscription();
12462    method public int getResult();
12463    method public void writeToParcel(android.os.Parcel, int);
12464    field @NonNull public static final android.os.Parcelable.Creator<android.service.euicc.GetDownloadableSubscriptionMetadataResult> CREATOR;
12465  }
12466
12467  public final class GetEuiccProfileInfoListResult implements android.os.Parcelable {
12468    ctor public GetEuiccProfileInfoListResult(int, @Nullable android.service.euicc.EuiccProfileInfo[], boolean);
12469    method public int describeContents();
12470    method public boolean getIsRemovable();
12471    method @Nullable public java.util.List<android.service.euicc.EuiccProfileInfo> getProfiles();
12472    method public int getResult();
12473    method public void writeToParcel(android.os.Parcel, int);
12474    field @NonNull public static final android.os.Parcelable.Creator<android.service.euicc.GetEuiccProfileInfoListResult> CREATOR;
12475  }
12476
12477}
12478
12479package android.service.games {
12480
12481  public final class CreateGameSessionRequest implements android.os.Parcelable {
12482    ctor public CreateGameSessionRequest(int, @NonNull String);
12483    method public int describeContents();
12484    method @NonNull public String getGamePackageName();
12485    method public int getTaskId();
12486    method public void writeToParcel(@NonNull android.os.Parcel, int);
12487    field @NonNull public static final android.os.Parcelable.Creator<android.service.games.CreateGameSessionRequest> CREATOR;
12488  }
12489
12490  public class GameService extends android.app.Service {
12491    ctor public GameService();
12492    method @RequiresPermission(android.Manifest.permission.MANAGE_GAME_ACTIVITY) public final void createGameSession(@IntRange(from=0) int);
12493    method @Nullable public final android.os.IBinder onBind(@Nullable android.content.Intent);
12494    method public void onConnected();
12495    method public void onDisconnected();
12496    method public void onGameStarted(@NonNull android.service.games.GameStartedEvent);
12497    field public static final String ACTION_GAME_SERVICE = "android.service.games.action.GAME_SERVICE";
12498    field public static final String SERVICE_META_DATA = "android.game_service";
12499  }
12500
12501  public abstract class GameSession {
12502    ctor public GameSession();
12503    method public void onCreate();
12504    method public void onDestroy();
12505    method public void onGameTaskFocusChanged(boolean);
12506    method public void onTransientSystemBarVisibilityFromRevealGestureChanged(boolean);
12507    method @RequiresPermission(android.Manifest.permission.MANAGE_GAME_ACTIVITY) public final boolean restartGame();
12508    method public void setTaskOverlayView(@NonNull android.view.View, @NonNull android.view.ViewGroup.LayoutParams);
12509    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);
12510    method @RequiresPermission(android.Manifest.permission.MANAGE_GAME_ACTIVITY) public void takeScreenshot(@NonNull java.util.concurrent.Executor, @NonNull android.service.games.GameSession.ScreenshotCallback);
12511  }
12512
12513  public static interface GameSession.ScreenshotCallback {
12514    method public void onFailure(int);
12515    method public void onSuccess();
12516    field public static final int ERROR_TAKE_SCREENSHOT_INTERNAL_ERROR = 0; // 0x0
12517  }
12518
12519  public interface GameSessionActivityCallback {
12520    method public void onActivityResult(int, @Nullable android.content.Intent);
12521    method public default void onActivityStartFailed(@NonNull Throwable);
12522  }
12523
12524  public abstract class GameSessionService extends android.app.Service {
12525    ctor public GameSessionService();
12526    method @Nullable public final android.os.IBinder onBind(@Nullable android.content.Intent);
12527    method @NonNull public abstract android.service.games.GameSession onNewSession(@NonNull android.service.games.CreateGameSessionRequest);
12528    field public static final String ACTION_GAME_SESSION_SERVICE = "android.service.games.action.GAME_SESSION_SERVICE";
12529  }
12530
12531  public final class GameStartedEvent implements android.os.Parcelable {
12532    ctor public GameStartedEvent(@IntRange(from=0) int, @NonNull String);
12533    method public int describeContents();
12534    method @NonNull public String getPackageName();
12535    method @IntRange(from=0) public int getTaskId();
12536    method public void writeToParcel(@NonNull android.os.Parcel, int);
12537    field @NonNull public static final android.os.Parcelable.Creator<android.service.games.GameStartedEvent> CREATOR;
12538  }
12539
12540}
12541
12542package android.service.notification {
12543
12544  public final class Adjustment implements android.os.Parcelable {
12545    ctor public Adjustment(String, String, android.os.Bundle, CharSequence, int);
12546    ctor public Adjustment(@NonNull String, @NonNull String, @NonNull android.os.Bundle, @NonNull CharSequence, @NonNull android.os.UserHandle);
12547    ctor protected Adjustment(android.os.Parcel);
12548    method public int describeContents();
12549    method @NonNull public CharSequence getExplanation();
12550    method @NonNull public String getKey();
12551    method @NonNull public String getPackage();
12552    method @NonNull public android.os.Bundle getSignals();
12553    method public int getUser();
12554    method @NonNull public android.os.UserHandle getUserHandle();
12555    method public void writeToParcel(android.os.Parcel, int);
12556    field @NonNull public static final android.os.Parcelable.Creator<android.service.notification.Adjustment> CREATOR;
12557    field public static final String KEY_CONTEXTUAL_ACTIONS = "key_contextual_actions";
12558    field public static final String KEY_IMPORTANCE = "key_importance";
12559    field public static final String KEY_IMPORTANCE_PROPOSAL = "key_importance_proposal";
12560    field public static final String KEY_NOT_CONVERSATION = "key_not_conversation";
12561    field public static final String KEY_PEOPLE = "key_people";
12562    field public static final String KEY_RANKING_SCORE = "key_ranking_score";
12563    field public static final String KEY_SENSITIVE_CONTENT = "key_sensitive_content";
12564    field public static final String KEY_SNOOZE_CRITERIA = "key_snooze_criteria";
12565    field public static final String KEY_TEXT_REPLIES = "key_text_replies";
12566    field public static final String KEY_USER_SENTIMENT = "key_user_sentiment";
12567  }
12568
12569  public abstract class NotificationAssistantService extends android.service.notification.NotificationListenerService {
12570    ctor public NotificationAssistantService();
12571    method public final void adjustNotification(@NonNull android.service.notification.Adjustment);
12572    method public final void adjustNotifications(@NonNull java.util.List<android.service.notification.Adjustment>);
12573    method public void onActionInvoked(@NonNull String, @NonNull android.app.Notification.Action, int);
12574    method @Deprecated public void onAllowedAdjustmentsChanged();
12575    method @NonNull public final android.os.IBinder onBind(@Nullable android.content.Intent);
12576    method public void onNotificationClicked(@NonNull String);
12577    method public void onNotificationDirectReplied(@NonNull String);
12578    method @Nullable public abstract android.service.notification.Adjustment onNotificationEnqueued(@NonNull android.service.notification.StatusBarNotification);
12579    method @Nullable public android.service.notification.Adjustment onNotificationEnqueued(@NonNull android.service.notification.StatusBarNotification, @NonNull android.app.NotificationChannel);
12580    method @Nullable public android.service.notification.Adjustment onNotificationEnqueued(@NonNull android.service.notification.StatusBarNotification, @NonNull android.app.NotificationChannel, @NonNull android.service.notification.NotificationListenerService.RankingMap);
12581    method public void onNotificationExpansionChanged(@NonNull String, boolean, boolean);
12582    method public void onNotificationFeedbackReceived(@NonNull String, @NonNull android.service.notification.NotificationListenerService.RankingMap, @NonNull android.os.Bundle);
12583    method public abstract void onNotificationSnoozedUntilContext(@NonNull android.service.notification.StatusBarNotification, @NonNull String);
12584    method public void onNotificationVisibilityChanged(@NonNull String, boolean);
12585    method public void onNotificationsSeen(@NonNull java.util.List<java.lang.String>);
12586    method public void onPanelHidden();
12587    method public void onPanelRevealed(int);
12588    method public void onSuggestedReplySent(@NonNull String, @NonNull CharSequence, int);
12589    method public final void unsnoozeNotification(@NonNull String);
12590    field public static final String ACTION_NOTIFICATION_ASSISTANT_DETAIL_SETTINGS = "android.service.notification.action.NOTIFICATION_ASSISTANT_DETAIL_SETTINGS";
12591    field public static final String FEEDBACK_RATING = "feedback.rating";
12592    field public static final String SERVICE_INTERFACE = "android.service.notification.NotificationAssistantService";
12593    field public static final int SOURCE_FROM_APP = 0; // 0x0
12594    field public static final int SOURCE_FROM_ASSISTANT = 1; // 0x1
12595  }
12596
12597  public abstract class NotificationListenerService extends android.app.Service {
12598    method public void onNotificationRemoved(@NonNull android.service.notification.StatusBarNotification, @NonNull android.service.notification.NotificationListenerService.RankingMap, @NonNull android.service.notification.NotificationStats, int);
12599  }
12600
12601  public static class NotificationListenerService.Ranking {
12602    method public int getProposedImportance();
12603    method public boolean hasSensitiveContent();
12604  }
12605
12606  public final class NotificationStats implements android.os.Parcelable {
12607    ctor public NotificationStats();
12608    ctor protected NotificationStats(android.os.Parcel);
12609    method public int describeContents();
12610    method public int getDismissalSentiment();
12611    method public int getDismissalSurface();
12612    method public boolean hasDirectReplied();
12613    method public boolean hasExpanded();
12614    method public boolean hasInteracted();
12615    method public boolean hasSeen();
12616    method public boolean hasSnoozed();
12617    method public boolean hasViewedSettings();
12618    method public void setDirectReplied();
12619    method public void setDismissalSentiment(int);
12620    method public void setDismissalSurface(int);
12621    method public void setExpanded();
12622    method public void setSeen();
12623    method public void setSnoozed();
12624    method public void setViewedSettings();
12625    method public void writeToParcel(android.os.Parcel, int);
12626    field @NonNull public static final android.os.Parcelable.Creator<android.service.notification.NotificationStats> CREATOR;
12627    field public static final int DISMISSAL_AOD = 2; // 0x2
12628    field public static final int DISMISSAL_NOT_DISMISSED = -1; // 0xffffffff
12629    field public static final int DISMISSAL_OTHER = 0; // 0x0
12630    field public static final int DISMISSAL_PEEK = 1; // 0x1
12631    field public static final int DISMISSAL_SHADE = 3; // 0x3
12632    field public static final int DISMISS_SENTIMENT_NEGATIVE = 0; // 0x0
12633    field public static final int DISMISS_SENTIMENT_NEUTRAL = 1; // 0x1
12634    field public static final int DISMISS_SENTIMENT_POSITIVE = 2; // 0x2
12635    field public static final int DISMISS_SENTIMENT_UNKNOWN = -1000; // 0xfffffc18
12636  }
12637
12638  public final class SnoozeCriterion implements android.os.Parcelable {
12639    ctor public SnoozeCriterion(String, CharSequence, CharSequence);
12640    ctor protected SnoozeCriterion(android.os.Parcel);
12641    method public int describeContents();
12642    method public CharSequence getConfirmation();
12643    method public CharSequence getExplanation();
12644    method public String getId();
12645    method public void writeToParcel(android.os.Parcel, int);
12646    field @NonNull public static final android.os.Parcelable.Creator<android.service.notification.SnoozeCriterion> CREATOR;
12647  }
12648
12649}
12650
12651package android.service.oemlock {
12652
12653  public class OemLockManager {
12654    method @Nullable @RequiresPermission(android.Manifest.permission.MANAGE_CARRIER_OEM_UNLOCK_STATE) public String getLockName();
12655    method @RequiresPermission(android.Manifest.permission.MANAGE_CARRIER_OEM_UNLOCK_STATE) public boolean isOemUnlockAllowedByCarrier();
12656    method @RequiresPermission(android.Manifest.permission.MANAGE_USER_OEM_UNLOCK_STATE) public boolean isOemUnlockAllowedByUser();
12657    method @RequiresPermission(android.Manifest.permission.MANAGE_CARRIER_OEM_UNLOCK_STATE) public void setOemUnlockAllowedByCarrier(boolean, @Nullable byte[]);
12658    method @RequiresPermission(android.Manifest.permission.MANAGE_USER_OEM_UNLOCK_STATE) public void setOemUnlockAllowedByUser(boolean);
12659  }
12660
12661}
12662
12663package android.service.persistentdata {
12664
12665  public class PersistentDataBlockManager {
12666    method @RequiresPermission(android.Manifest.permission.ACCESS_PDB_STATE) public int getDataBlockSize();
12667    method @android.service.persistentdata.PersistentDataBlockManager.FlashLockState @RequiresPermission(anyOf={android.Manifest.permission.READ_OEM_UNLOCK_STATE, "android.permission.OEM_UNLOCK_STATE"}) public int getFlashLockState();
12668    method public long getMaximumDataBlockSize();
12669    method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.READ_OEM_UNLOCK_STATE, "android.permission.OEM_UNLOCK_STATE"}) public boolean getOemUnlockEnabled();
12670    method @NonNull @RequiresPermission(android.Manifest.permission.ACCESS_PDB_STATE) public String getPersistentDataPackageName();
12671    method public byte[] read();
12672    method @Deprecated @RequiresPermission("android.permission.OEM_UNLOCK_STATE") public void setOemUnlockEnabled(boolean);
12673    method @RequiresPermission("android.permission.OEM_UNLOCK_STATE") public void wipe();
12674    method public int write(byte[]);
12675    field public static final int FLASH_LOCK_LOCKED = 1; // 0x1
12676    field public static final int FLASH_LOCK_UNKNOWN = -1; // 0xffffffff
12677    field public static final int FLASH_LOCK_UNLOCKED = 0; // 0x0
12678  }
12679
12680  @IntDef(prefix={"FLASH_LOCK_"}, value={android.service.persistentdata.PersistentDataBlockManager.FLASH_LOCK_UNKNOWN, android.service.persistentdata.PersistentDataBlockManager.FLASH_LOCK_LOCKED, android.service.persistentdata.PersistentDataBlockManager.FLASH_LOCK_UNLOCKED}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface PersistentDataBlockManager.FlashLockState {
12681  }
12682
12683}
12684
12685package android.service.quicksettings {
12686
12687  public class TileService extends android.app.Service {
12688    method public final void setStatusIcon(android.graphics.drawable.Icon, String);
12689  }
12690
12691}
12692
12693package android.service.remotelockscreenvalidation {
12694
12695  public abstract class RemoteLockscreenValidationService extends android.app.Service {
12696    ctor public RemoteLockscreenValidationService();
12697    method @Nullable public final android.os.IBinder onBind(@NonNull android.content.Intent);
12698    method public abstract void onValidateLockscreenGuess(@NonNull byte[], @NonNull android.os.OutcomeReceiver<android.app.RemoteLockscreenValidationResult,java.lang.Exception>);
12699    field public static final String SERVICE_INTERFACE = "android.service.remotelockscreenvalidation.RemoteLockscreenValidationService";
12700  }
12701
12702}
12703
12704package android.service.resolver {
12705
12706  public abstract class ResolverRankerService extends android.app.Service {
12707    ctor public ResolverRankerService();
12708    method public android.os.IBinder onBind(android.content.Intent);
12709    method public void onPredictSharingProbabilities(java.util.List<android.service.resolver.ResolverTarget>);
12710    method public void onTrainRankingModel(java.util.List<android.service.resolver.ResolverTarget>, int);
12711    field public static final String BIND_PERMISSION = "android.permission.BIND_RESOLVER_RANKER_SERVICE";
12712    field public static final String HOLD_PERMISSION = "android.permission.PROVIDE_RESOLVER_RANKER_SERVICE";
12713    field public static final String SERVICE_INTERFACE = "android.service.resolver.ResolverRankerService";
12714  }
12715
12716  public final class ResolverTarget implements android.os.Parcelable {
12717    ctor public ResolverTarget();
12718    method public int describeContents();
12719    method public float getChooserScore();
12720    method public float getLaunchScore();
12721    method public float getRecencyScore();
12722    method public float getSelectProbability();
12723    method public float getTimeSpentScore();
12724    method public void setChooserScore(float);
12725    method public void setLaunchScore(float);
12726    method public void setRecencyScore(float);
12727    method public void setSelectProbability(float);
12728    method public void setTimeSpentScore(float);
12729    method public void writeToParcel(android.os.Parcel, int);
12730    field @NonNull public static final android.os.Parcelable.Creator<android.service.resolver.ResolverTarget> CREATOR;
12731  }
12732
12733}
12734
12735package android.service.resumeonreboot {
12736
12737  public abstract class ResumeOnRebootService extends android.app.Service {
12738    ctor public ResumeOnRebootService();
12739    method @Nullable public android.os.IBinder onBind(@Nullable android.content.Intent);
12740    method @NonNull public abstract byte[] onUnwrap(@NonNull byte[]) throws java.io.IOException;
12741    method @NonNull public abstract byte[] onWrap(@NonNull byte[], long) throws java.io.IOException;
12742    field public static final String SERVICE_INTERFACE = "android.service.resumeonreboot.ResumeOnRebootService";
12743  }
12744
12745}
12746
12747package android.service.rotationresolver {
12748
12749  public final class RotationResolutionRequest implements android.os.Parcelable {
12750    ctor public RotationResolutionRequest(@NonNull String, int, int, boolean, long);
12751    method public int describeContents();
12752    method public int getCurrentRotation();
12753    method @NonNull public String getForegroundPackageName();
12754    method public int getProposedRotation();
12755    method public long getTimeoutMillis();
12756    method public boolean shouldUseCamera();
12757    method public void writeToParcel(@NonNull android.os.Parcel, int);
12758    field @NonNull public static final android.os.Parcelable.Creator<android.service.rotationresolver.RotationResolutionRequest> CREATOR;
12759  }
12760
12761  public abstract class RotationResolverService extends android.app.Service {
12762    ctor public RotationResolverService();
12763    method @Nullable public final android.os.IBinder onBind(@NonNull android.content.Intent);
12764    method public abstract void onResolveRotation(@NonNull android.service.rotationresolver.RotationResolutionRequest, @Nullable android.os.CancellationSignal, @NonNull android.service.rotationresolver.RotationResolverService.RotationResolverCallback);
12765    field public static final int ROTATION_RESULT_FAILURE_CANCELLED = 0; // 0x0
12766    field public static final int ROTATION_RESULT_FAILURE_NOT_SUPPORTED = 4; // 0x4
12767    field public static final int ROTATION_RESULT_FAILURE_PREEMPTED = 2; // 0x2
12768    field public static final int ROTATION_RESULT_FAILURE_TIMED_OUT = 1; // 0x1
12769    field public static final int ROTATION_RESULT_FAILURE_UNKNOWN = 3; // 0x3
12770    field public static final String SERVICE_INTERFACE = "android.service.rotationresolver.RotationResolverService";
12771  }
12772
12773  public static interface RotationResolverService.RotationResolverCallback {
12774    method public void onFailure(int);
12775    method public void onSuccess(int);
12776  }
12777
12778}
12779
12780package android.service.search {
12781
12782  public abstract class SearchUiService extends android.app.Service {
12783    ctor public SearchUiService();
12784    method @NonNull public final android.os.IBinder onBind(@NonNull android.content.Intent);
12785    method @MainThread public abstract void onDestroy(@NonNull android.app.search.SearchSessionId);
12786    method @MainThread public abstract void onNotifyEvent(@NonNull android.app.search.SearchSessionId, @NonNull android.app.search.Query, @NonNull android.app.search.SearchTargetEvent);
12787    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>>);
12788    method public void onSearchSessionCreated(@NonNull android.app.search.SearchContext, @NonNull android.app.search.SearchSessionId);
12789    method @MainThread public void onStartUpdateEmptyQueryResult();
12790    method @MainThread public void onStopUpdateEmptyQueryResult();
12791    method public final void updateEmptyQueryResult(@NonNull android.app.search.SearchSessionId, @NonNull java.util.List<android.app.search.SearchTarget>);
12792  }
12793
12794}
12795
12796package android.service.settings.suggestions {
12797
12798  public final class Suggestion implements android.os.Parcelable {
12799    method public int describeContents();
12800    method public int getFlags();
12801    method public android.graphics.drawable.Icon getIcon();
12802    method public String getId();
12803    method public android.app.PendingIntent getPendingIntent();
12804    method public CharSequence getSummary();
12805    method public CharSequence getTitle();
12806    method public void writeToParcel(android.os.Parcel, int);
12807    field @NonNull public static final android.os.Parcelable.Creator<android.service.settings.suggestions.Suggestion> CREATOR;
12808    field public static final int FLAG_HAS_BUTTON = 1; // 0x1
12809  }
12810
12811  public static class Suggestion.Builder {
12812    ctor public Suggestion.Builder(String);
12813    method public android.service.settings.suggestions.Suggestion build();
12814    method public android.service.settings.suggestions.Suggestion.Builder setFlags(int);
12815    method public android.service.settings.suggestions.Suggestion.Builder setIcon(android.graphics.drawable.Icon);
12816    method public android.service.settings.suggestions.Suggestion.Builder setPendingIntent(android.app.PendingIntent);
12817    method public android.service.settings.suggestions.Suggestion.Builder setSummary(CharSequence);
12818    method public android.service.settings.suggestions.Suggestion.Builder setTitle(CharSequence);
12819  }
12820
12821  public abstract class SuggestionService extends android.app.Service {
12822    ctor public SuggestionService();
12823    method public android.os.IBinder onBind(android.content.Intent);
12824    method public abstract java.util.List<android.service.settings.suggestions.Suggestion> onGetSuggestions();
12825    method public abstract void onSuggestionDismissed(android.service.settings.suggestions.Suggestion);
12826    method public abstract void onSuggestionLaunched(android.service.settings.suggestions.Suggestion);
12827  }
12828
12829}
12830
12831package android.service.smartspace {
12832
12833  public abstract class SmartspaceService extends android.app.Service {
12834    ctor public SmartspaceService();
12835    method @MainThread public abstract void notifySmartspaceEvent(@NonNull android.app.smartspace.SmartspaceSessionId, @NonNull android.app.smartspace.SmartspaceTargetEvent);
12836    method @NonNull public final android.os.IBinder onBind(@NonNull android.content.Intent);
12837    method public abstract void onCreateSmartspaceSession(@NonNull android.app.smartspace.SmartspaceConfig, @NonNull android.app.smartspace.SmartspaceSessionId);
12838    method @MainThread public abstract void onDestroy(@NonNull android.app.smartspace.SmartspaceSessionId);
12839    method public abstract void onDestroySmartspaceSession(@NonNull android.app.smartspace.SmartspaceSessionId);
12840    method @MainThread public abstract void onRequestSmartspaceUpdate(@NonNull android.app.smartspace.SmartspaceSessionId);
12841    method public final void updateSmartspaceTargets(@NonNull android.app.smartspace.SmartspaceSessionId, @NonNull java.util.List<android.app.smartspace.SmartspaceTarget>);
12842  }
12843
12844}
12845
12846package android.service.storage {
12847
12848  public abstract class ExternalStorageService extends android.app.Service {
12849    ctor public ExternalStorageService();
12850    method public void onAnrDelayStarted(@NonNull String, int, int, int);
12851    method @NonNull public final android.os.IBinder onBind(@NonNull android.content.Intent);
12852    method public abstract void onEndSession(@NonNull String) throws java.io.IOException;
12853    method public void onFreeCache(@NonNull java.util.UUID, long) throws java.io.IOException;
12854    method public abstract void onStartSession(@NonNull String, int, @NonNull android.os.ParcelFileDescriptor, @NonNull java.io.File, @NonNull java.io.File) throws java.io.IOException;
12855    method public abstract void onVolumeStateChanged(@NonNull android.os.storage.StorageVolume) throws java.io.IOException;
12856    field public static final int FLAG_SESSION_ATTRIBUTE_INDEXABLE = 2; // 0x2
12857    field public static final int FLAG_SESSION_TYPE_FUSE = 1; // 0x1
12858    field public static final String SERVICE_INTERFACE = "android.service.storage.ExternalStorageService";
12859  }
12860
12861}
12862
12863package android.service.textclassifier {
12864
12865  public abstract class TextClassifierService extends android.app.Service {
12866    ctor public TextClassifierService();
12867    method @NonNull public static android.view.textclassifier.TextClassifier getDefaultTextClassifierImplementation(@NonNull android.content.Context);
12868    method @Deprecated public final android.view.textclassifier.TextClassifier getLocalTextClassifier();
12869    method @Nullable public final android.os.IBinder onBind(@NonNull android.content.Intent);
12870    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>);
12871    method public void onConnected();
12872    method @MainThread public void onCreateTextClassificationSession(@NonNull android.view.textclassifier.TextClassificationContext, @NonNull android.view.textclassifier.TextClassificationSessionId);
12873    method @MainThread public void onDestroyTextClassificationSession(@NonNull android.view.textclassifier.TextClassificationSessionId);
12874    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>);
12875    method public void onDisconnected();
12876    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>);
12877    method @Deprecated @MainThread public void onSelectionEvent(@Nullable android.view.textclassifier.TextClassificationSessionId, @NonNull android.view.textclassifier.SelectionEvent);
12878    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>);
12879    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>);
12880    method @MainThread public void onTextClassifierEvent(@Nullable android.view.textclassifier.TextClassificationSessionId, @NonNull android.view.textclassifier.TextClassifierEvent);
12881    field public static final String SERVICE_INTERFACE = "android.service.textclassifier.TextClassifierService";
12882  }
12883
12884  public static interface TextClassifierService.Callback<T> {
12885    method public void onFailure(@NonNull CharSequence);
12886    method public void onSuccess(T);
12887  }
12888
12889}
12890
12891package android.service.timezone {
12892
12893  public abstract class TimeZoneProviderService extends android.app.Service {
12894    ctor public TimeZoneProviderService();
12895    method @NonNull public final android.os.IBinder onBind(@NonNull android.content.Intent);
12896    method public abstract void onStartUpdates(long);
12897    method public abstract void onStopUpdates();
12898    method public final void reportPermanentFailure(@NonNull Throwable);
12899    method public final void reportSuggestion(@NonNull android.service.timezone.TimeZoneProviderSuggestion);
12900    method public final void reportSuggestion(@NonNull android.service.timezone.TimeZoneProviderSuggestion, @NonNull android.service.timezone.TimeZoneProviderStatus);
12901    method public final void reportUncertain();
12902    method public final void reportUncertain(@NonNull android.service.timezone.TimeZoneProviderStatus);
12903    field public static final String PRIMARY_LOCATION_TIME_ZONE_PROVIDER_SERVICE_INTERFACE = "android.service.timezone.PrimaryLocationTimeZoneProviderService";
12904    field public static final String SECONDARY_LOCATION_TIME_ZONE_PROVIDER_SERVICE_INTERFACE = "android.service.timezone.SecondaryLocationTimeZoneProviderService";
12905  }
12906
12907  public final class TimeZoneProviderStatus implements android.os.Parcelable {
12908    method public int describeContents();
12909    method public int getConnectivityDependencyStatus();
12910    method public int getLocationDetectionDependencyStatus();
12911    method public int getTimeZoneResolutionOperationStatus();
12912    method public void writeToParcel(@NonNull android.os.Parcel, int);
12913    field @NonNull public static final android.os.Parcelable.Creator<android.service.timezone.TimeZoneProviderStatus> CREATOR;
12914    field public static final int DEPENDENCY_STATUS_BLOCKED_BY_ENVIRONMENT = 4; // 0x4
12915    field public static final int DEPENDENCY_STATUS_BLOCKED_BY_SETTINGS = 6; // 0x6
12916    field public static final int DEPENDENCY_STATUS_DEGRADED_BY_SETTINGS = 5; // 0x5
12917    field public static final int DEPENDENCY_STATUS_NOT_APPLICABLE = 1; // 0x1
12918    field public static final int DEPENDENCY_STATUS_OK = 2; // 0x2
12919    field public static final int DEPENDENCY_STATUS_TEMPORARILY_UNAVAILABLE = 3; // 0x3
12920    field public static final int OPERATION_STATUS_FAILED = 3; // 0x3
12921    field public static final int OPERATION_STATUS_NOT_APPLICABLE = 1; // 0x1
12922    field public static final int OPERATION_STATUS_OK = 2; // 0x2
12923  }
12924
12925  public static final class TimeZoneProviderStatus.Builder {
12926    ctor public TimeZoneProviderStatus.Builder();
12927    method @NonNull public android.service.timezone.TimeZoneProviderStatus build();
12928    method @NonNull public android.service.timezone.TimeZoneProviderStatus.Builder setConnectivityDependencyStatus(int);
12929    method @NonNull public android.service.timezone.TimeZoneProviderStatus.Builder setLocationDetectionDependencyStatus(int);
12930    method @NonNull public android.service.timezone.TimeZoneProviderStatus.Builder setTimeZoneResolutionOperationStatus(int);
12931  }
12932
12933  public final class TimeZoneProviderSuggestion implements android.os.Parcelable {
12934    method public int describeContents();
12935    method public long getElapsedRealtimeMillis();
12936    method @NonNull public java.util.List<java.lang.String> getTimeZoneIds();
12937    method public void writeToParcel(@NonNull android.os.Parcel, int);
12938    field @NonNull public static final android.os.Parcelable.Creator<android.service.timezone.TimeZoneProviderSuggestion> CREATOR;
12939  }
12940
12941  public static final class TimeZoneProviderSuggestion.Builder {
12942    ctor public TimeZoneProviderSuggestion.Builder();
12943    method @NonNull public android.service.timezone.TimeZoneProviderSuggestion build();
12944    method @NonNull public android.service.timezone.TimeZoneProviderSuggestion.Builder setElapsedRealtimeMillis(long);
12945    method @NonNull public android.service.timezone.TimeZoneProviderSuggestion.Builder setTimeZoneIds(@NonNull java.util.List<java.lang.String>);
12946  }
12947
12948}
12949
12950package android.service.tracing {
12951
12952  public class TraceReportService extends android.app.Service {
12953    ctor public TraceReportService();
12954    method public void onReportTrace(@NonNull android.service.tracing.TraceReportService.TraceParams);
12955  }
12956
12957  public static final class TraceReportService.TraceParams {
12958    method @NonNull public android.os.ParcelFileDescriptor getFd();
12959    method @NonNull public java.util.UUID getUuid();
12960  }
12961
12962}
12963
12964package android.service.translation {
12965
12966  public abstract class TranslationService extends android.app.Service {
12967    ctor public TranslationService();
12968    method @Nullable public final android.os.IBinder onBind(@NonNull android.content.Intent);
12969    method public void onConnected();
12970    method public abstract void onCreateTranslationSession(@NonNull android.view.translation.TranslationContext, int, @NonNull java.util.function.Consumer<java.lang.Boolean>);
12971    method public void onDisconnected();
12972    method public abstract void onFinishTranslationSession(int);
12973    method public abstract void onTranslationCapabilitiesRequest(int, int, @NonNull java.util.function.Consumer<java.util.Set<android.view.translation.TranslationCapability>>);
12974    method public abstract void onTranslationRequest(@NonNull android.view.translation.TranslationRequest, int, @Nullable android.os.CancellationSignal, @NonNull java.util.function.Consumer<android.view.translation.TranslationResponse>);
12975    method public final void updateTranslationCapability(@NonNull android.view.translation.TranslationCapability);
12976    field public static final String SERVICE_INTERFACE = "android.service.translation.TranslationService";
12977    field public static final String SERVICE_META_DATA = "android.translation_service";
12978  }
12979
12980}
12981
12982package android.service.trust {
12983
12984  public final class GrantTrustResult implements android.os.Parcelable {
12985    ctor public GrantTrustResult(int);
12986    method public int describeContents();
12987    method public int getStatus();
12988    method @NonNull public static String statusToString(int);
12989    method public void writeToParcel(@NonNull android.os.Parcel, int);
12990    field @NonNull public static final android.os.Parcelable.Creator<android.service.trust.GrantTrustResult> CREATOR;
12991    field public static final int STATUS_UNKNOWN = 0; // 0x0
12992    field public static final int STATUS_UNLOCKED_BY_GRANT = 1; // 0x1
12993  }
12994
12995  public class TrustAgentService extends android.app.Service {
12996    ctor public TrustAgentService();
12997    method public final void addEscrowToken(byte[], android.os.UserHandle);
12998    method @Deprecated public final void grantTrust(CharSequence, long, boolean);
12999    method @Deprecated public final void grantTrust(CharSequence, long, int);
13000    method public final void grantTrust(@NonNull CharSequence, long, int, @Nullable java.util.function.Consumer<android.service.trust.GrantTrustResult>);
13001    method public final void isEscrowTokenActive(long, android.os.UserHandle);
13002    method public final void lockUser();
13003    method public final android.os.IBinder onBind(android.content.Intent);
13004    method public boolean onConfigure(java.util.List<android.os.PersistableBundle>);
13005    method public void onDeviceLocked();
13006    method public void onDeviceUnlockLockout(long);
13007    method public void onDeviceUnlocked();
13008    method public void onEscrowTokenAdded(byte[], long, android.os.UserHandle);
13009    method public void onEscrowTokenRemoved(long, boolean);
13010    method public void onEscrowTokenStateReceived(long, int);
13011    method public void onTrustTimeout();
13012    method public void onUnlockAttempt(boolean);
13013    method public void onUserMayRequestUnlock();
13014    method public void onUserRequestedUnlock(boolean);
13015    method public final void removeEscrowToken(long, android.os.UserHandle);
13016    method public final void revokeTrust();
13017    method public final void setManagingTrust(boolean);
13018    method public final void showKeyguardErrorMessage(@NonNull CharSequence);
13019    method public final void unlockUserWithToken(long, byte[], android.os.UserHandle);
13020    field public static final int FLAG_GRANT_TRUST_DISMISS_KEYGUARD = 2; // 0x2
13021    field public static final int FLAG_GRANT_TRUST_DISPLAY_MESSAGE = 8; // 0x8
13022    field public static final int FLAG_GRANT_TRUST_INITIATED_BY_USER = 1; // 0x1
13023    field public static final int FLAG_GRANT_TRUST_TEMPORARY_AND_RENEWABLE = 4; // 0x4
13024    field public static final String SERVICE_INTERFACE = "android.service.trust.TrustAgentService";
13025    field public static final int TOKEN_STATE_ACTIVE = 1; // 0x1
13026    field public static final int TOKEN_STATE_INACTIVE = 0; // 0x0
13027    field public static final String TRUST_AGENT_META_DATA = "android.service.trust.trustagent";
13028  }
13029
13030}
13031
13032package android.service.voice {
13033
13034  public class AlwaysOnHotwordDetector implements android.service.voice.HotwordDetector {
13035    method @Nullable public android.content.Intent createEnrollIntent();
13036    method @Nullable public android.content.Intent createReEnrollIntent();
13037    method @Nullable public android.content.Intent createUnEnrollIntent();
13038    method @RequiresPermission(allOf={android.Manifest.permission.RECORD_AUDIO, android.Manifest.permission.CAPTURE_AUDIO_HOTWORD}) public int getParameter(int);
13039    method public int getSupportedAudioCapabilities();
13040    method public int getSupportedRecognitionModes();
13041    method @Nullable @RequiresPermission(allOf={android.Manifest.permission.RECORD_AUDIO, android.Manifest.permission.CAPTURE_AUDIO_HOTWORD}) public android.service.voice.AlwaysOnHotwordDetector.ModelParamRange queryParameter(int);
13042    method @RequiresPermission(allOf={android.Manifest.permission.RECORD_AUDIO, android.Manifest.permission.CAPTURE_AUDIO_HOTWORD}) public int setParameter(int, int);
13043    method @RequiresPermission(allOf={android.Manifest.permission.RECORD_AUDIO, android.Manifest.permission.CAPTURE_AUDIO_HOTWORD}) public boolean startRecognition(int, @NonNull byte[]);
13044    method @RequiresPermission(allOf={android.Manifest.permission.RECORD_AUDIO, android.Manifest.permission.CAPTURE_AUDIO_HOTWORD}) public boolean startRecognition(int);
13045    method @RequiresPermission(allOf={android.Manifest.permission.RECORD_AUDIO, android.Manifest.permission.CAPTURE_AUDIO_HOTWORD}) public boolean startRecognition();
13046    method public boolean startRecognition(@NonNull android.os.ParcelFileDescriptor, @NonNull android.media.AudioFormat, @Nullable android.os.PersistableBundle);
13047    method @RequiresPermission(allOf={android.Manifest.permission.RECORD_AUDIO, android.Manifest.permission.CAPTURE_AUDIO_HOTWORD}) public boolean stopRecognition();
13048    method public final void updateState(@Nullable android.os.PersistableBundle, @Nullable android.os.SharedMemory);
13049    field public static final int AUDIO_CAPABILITY_ECHO_CANCELLATION = 1; // 0x1
13050    field public static final int AUDIO_CAPABILITY_NOISE_SUPPRESSION = 2; // 0x2
13051    field public static final int MODEL_PARAM_THRESHOLD_FACTOR = 0; // 0x0
13052    field public static final int RECOGNITION_FLAG_ALLOW_MULTIPLE_TRIGGERS = 2; // 0x2
13053    field public static final int RECOGNITION_FLAG_CAPTURE_TRIGGER_AUDIO = 1; // 0x1
13054    field public static final int RECOGNITION_FLAG_ENABLE_AUDIO_ECHO_CANCELLATION = 4; // 0x4
13055    field public static final int RECOGNITION_FLAG_ENABLE_AUDIO_NOISE_SUPPRESSION = 8; // 0x8
13056    field public static final int RECOGNITION_FLAG_RUN_IN_BATTERY_SAVER = 16; // 0x10
13057    field public static final int RECOGNITION_MODE_USER_IDENTIFICATION = 2; // 0x2
13058    field public static final int RECOGNITION_MODE_VOICE_TRIGGER = 1; // 0x1
13059    field public static final int STATE_ERROR = 3; // 0x3
13060    field public static final int STATE_HARDWARE_UNAVAILABLE = -2; // 0xfffffffe
13061    field public static final int STATE_KEYPHRASE_ENROLLED = 2; // 0x2
13062    field public static final int STATE_KEYPHRASE_UNENROLLED = 1; // 0x1
13063    field @Deprecated public static final int STATE_KEYPHRASE_UNSUPPORTED = -1; // 0xffffffff
13064  }
13065
13066  public abstract static class AlwaysOnHotwordDetector.Callback implements android.service.voice.HotwordDetector.Callback {
13067    ctor public AlwaysOnHotwordDetector.Callback();
13068    method public abstract void onAvailabilityChanged(int);
13069    method public void onFailure(@NonNull android.service.voice.SoundTriggerFailure);
13070    method public void onHotwordDetectionServiceInitialized(int);
13071    method public void onHotwordDetectionServiceRestarted();
13072    method public void onRejected(@NonNull android.service.voice.HotwordRejectedResult);
13073  }
13074
13075  public static class AlwaysOnHotwordDetector.EventPayload {
13076    method @Nullable public android.os.ParcelFileDescriptor getAudioStream();
13077    method @Nullable public android.media.AudioFormat getCaptureAudioFormat();
13078    method @Nullable public byte[] getData();
13079    method public int getDataFormat();
13080    method public long getHalEventReceivedMillis();
13081    method @Nullable public android.service.voice.HotwordDetectedResult getHotwordDetectedResult();
13082    method @NonNull public java.util.List<android.hardware.soundtrigger.SoundTrigger.KeyphraseRecognitionExtra> getKeyphraseRecognitionExtras();
13083    method @Deprecated @Nullable public byte[] getTriggerAudio();
13084    field public static final int DATA_FORMAT_RAW = 0; // 0x0
13085    field public static final int DATA_FORMAT_TRIGGER_AUDIO = 1; // 0x1
13086  }
13087
13088  public static final class AlwaysOnHotwordDetector.ModelParamRange {
13089    method public int getEnd();
13090    method public int getStart();
13091  }
13092
13093  public final class FailureSuggestedAction {
13094    field public static final int DISABLE_DETECTION = 2; // 0x2
13095    field public static final int NONE = 1; // 0x1
13096    field public static final int RECREATE_DETECTOR = 3; // 0x3
13097    field public static final int RESTART_RECOGNITION = 4; // 0x4
13098    field public static final int UNKNOWN = 0; // 0x0
13099  }
13100
13101  public final class HotwordAudioStream implements android.os.Parcelable {
13102    method public int describeContents();
13103    method @NonNull public android.media.AudioFormat getAudioFormat();
13104    method @NonNull public android.os.ParcelFileDescriptor getAudioStreamParcelFileDescriptor();
13105    method @NonNull public byte[] getInitialAudio();
13106    method @NonNull public android.os.PersistableBundle getMetadata();
13107    method @Nullable public android.media.AudioTimestamp getTimestamp();
13108    method public void writeToParcel(@NonNull android.os.Parcel, int);
13109    field @NonNull public static final android.os.Parcelable.Creator<android.service.voice.HotwordAudioStream> CREATOR;
13110    field public static final String KEY_AUDIO_STREAM_COPY_BUFFER_LENGTH_BYTES = "android.service.voice.key.AUDIO_STREAM_COPY_BUFFER_LENGTH_BYTES";
13111  }
13112
13113  public static final class HotwordAudioStream.Builder {
13114    ctor public HotwordAudioStream.Builder(@NonNull android.media.AudioFormat, @NonNull android.os.ParcelFileDescriptor);
13115    method @NonNull public android.service.voice.HotwordAudioStream build();
13116    method @NonNull public android.service.voice.HotwordAudioStream.Builder setAudioFormat(@NonNull android.media.AudioFormat);
13117    method @NonNull public android.service.voice.HotwordAudioStream.Builder setAudioStreamParcelFileDescriptor(@NonNull android.os.ParcelFileDescriptor);
13118    method @NonNull public android.service.voice.HotwordAudioStream.Builder setInitialAudio(@NonNull byte[]);
13119    method @NonNull public android.service.voice.HotwordAudioStream.Builder setMetadata(@NonNull android.os.PersistableBundle);
13120    method @NonNull public android.service.voice.HotwordAudioStream.Builder setTimestamp(@NonNull android.media.AudioTimestamp);
13121  }
13122
13123  public final class HotwordDetectedResult implements android.os.Parcelable {
13124    method public int describeContents();
13125    method public int getAudioChannel();
13126    method @NonNull public java.util.List<android.service.voice.HotwordAudioStream> getAudioStreams();
13127    method public int getBackgroundAudioPower();
13128    method public int getConfidenceLevel();
13129    method @NonNull public android.os.PersistableBundle getExtras();
13130    method public int getHotwordDurationMillis();
13131    method public int getHotwordOffsetMillis();
13132    method public int getHotwordPhraseId();
13133    method public static int getMaxBackgroundAudioPower();
13134    method public static int getMaxBundleSize();
13135    method public static int getMaxHotwordPhraseId();
13136    method public static int getMaxScore();
13137    method @Nullable public android.media.MediaSyncEvent getMediaSyncEvent();
13138    method public int getPersonalizedScore();
13139    method public int getProximity();
13140    method public int getScore();
13141    method public boolean isHotwordDetectionPersonalized();
13142    method public void writeToParcel(@NonNull android.os.Parcel, int);
13143    field public static final int AUDIO_CHANNEL_UNSET = -1; // 0xffffffff
13144    field public static final int BACKGROUND_AUDIO_POWER_UNSET = -1; // 0xffffffff
13145    field public static final int CONFIDENCE_LEVEL_HIGH = 5; // 0x5
13146    field public static final int CONFIDENCE_LEVEL_LOW = 1; // 0x1
13147    field public static final int CONFIDENCE_LEVEL_LOW_MEDIUM = 2; // 0x2
13148    field public static final int CONFIDENCE_LEVEL_MEDIUM = 3; // 0x3
13149    field public static final int CONFIDENCE_LEVEL_MEDIUM_HIGH = 4; // 0x4
13150    field public static final int CONFIDENCE_LEVEL_NONE = 0; // 0x0
13151    field public static final int CONFIDENCE_LEVEL_VERY_HIGH = 6; // 0x6
13152    field @NonNull public static final android.os.Parcelable.Creator<android.service.voice.HotwordDetectedResult> CREATOR;
13153    field public static final int HOTWORD_OFFSET_UNSET = -1; // 0xffffffff
13154    field public static final int PROXIMITY_FAR = 2; // 0x2
13155    field public static final int PROXIMITY_NEAR = 1; // 0x1
13156    field public static final int PROXIMITY_UNKNOWN = -1; // 0xffffffff
13157  }
13158
13159  public static final class HotwordDetectedResult.Builder {
13160    ctor public HotwordDetectedResult.Builder();
13161    method @NonNull public android.service.voice.HotwordDetectedResult build();
13162    method @NonNull public android.service.voice.HotwordDetectedResult.Builder setAudioChannel(int);
13163    method @NonNull public android.service.voice.HotwordDetectedResult.Builder setAudioStreams(@NonNull java.util.List<android.service.voice.HotwordAudioStream>);
13164    method @NonNull public android.service.voice.HotwordDetectedResult.Builder setBackgroundAudioPower(int);
13165    method @NonNull public android.service.voice.HotwordDetectedResult.Builder setConfidenceLevel(int);
13166    method @NonNull public android.service.voice.HotwordDetectedResult.Builder setExtras(@NonNull android.os.PersistableBundle);
13167    method @NonNull public android.service.voice.HotwordDetectedResult.Builder setHotwordDetectionPersonalized(boolean);
13168    method @NonNull public android.service.voice.HotwordDetectedResult.Builder setHotwordDurationMillis(int);
13169    method @NonNull public android.service.voice.HotwordDetectedResult.Builder setHotwordOffsetMillis(int);
13170    method @NonNull public android.service.voice.HotwordDetectedResult.Builder setHotwordPhraseId(int);
13171    method @NonNull public android.service.voice.HotwordDetectedResult.Builder setMediaSyncEvent(@NonNull android.media.MediaSyncEvent);
13172    method @NonNull public android.service.voice.HotwordDetectedResult.Builder setPersonalizedScore(int);
13173    method @NonNull public android.service.voice.HotwordDetectedResult.Builder setScore(int);
13174  }
13175
13176  public abstract class HotwordDetectionService extends android.app.Service implements android.service.voice.SandboxedDetectionInitializer {
13177    ctor public HotwordDetectionService();
13178    method @Deprecated public static int getMaxCustomInitializationStatus();
13179    method @Nullable public final android.os.IBinder onBind(@NonNull android.content.Intent);
13180    method public void onDetect(@NonNull android.service.voice.AlwaysOnHotwordDetector.EventPayload, long, @NonNull android.service.voice.HotwordDetectionService.Callback);
13181    method public void onDetect(@NonNull android.service.voice.HotwordDetectionService.Callback);
13182    method public void onDetect(@NonNull android.os.ParcelFileDescriptor, @NonNull android.media.AudioFormat, @Nullable android.os.PersistableBundle, @NonNull android.service.voice.HotwordDetectionService.Callback);
13183    method public void onStopDetection();
13184    method public void onUpdateState(@Nullable android.os.PersistableBundle, @Nullable android.os.SharedMemory, long, @Nullable java.util.function.IntConsumer);
13185    field @Deprecated public static final int INITIALIZATION_STATUS_SUCCESS = 0; // 0x0
13186    field @Deprecated public static final int INITIALIZATION_STATUS_UNKNOWN = 100; // 0x64
13187    field public static final String SERVICE_INTERFACE = "android.service.voice.HotwordDetectionService";
13188  }
13189
13190  public static final class HotwordDetectionService.Callback {
13191    method public void onDetected(@NonNull android.service.voice.HotwordDetectedResult);
13192    method public void onRejected(@NonNull android.service.voice.HotwordRejectedResult);
13193  }
13194
13195  public final class HotwordDetectionServiceFailure implements android.os.Parcelable {
13196    method public int describeContents();
13197    method public int getErrorCode();
13198    method @NonNull public String getErrorMessage();
13199    method public int getSuggestedAction();
13200    method public void writeToParcel(@NonNull android.os.Parcel, int);
13201    field @NonNull public static final android.os.Parcelable.Creator<android.service.voice.HotwordDetectionServiceFailure> CREATOR;
13202    field public static final int ERROR_CODE_BINDING_DIED = 2; // 0x2
13203    field public static final int ERROR_CODE_BIND_FAILURE = 1; // 0x1
13204    field public static final int ERROR_CODE_COPY_AUDIO_DATA_FAILURE = 3; // 0x3
13205    field public static final int ERROR_CODE_DETECT_TIMEOUT = 4; // 0x4
13206    field public static final int ERROR_CODE_ON_DETECTED_SECURITY_EXCEPTION = 5; // 0x5
13207    field public static final int ERROR_CODE_ON_DETECTED_STREAM_COPY_FAILURE = 6; // 0x6
13208    field public static final int ERROR_CODE_REMOTE_EXCEPTION = 7; // 0x7
13209    field public static final int ERROR_CODE_UNKNOWN = 0; // 0x0
13210  }
13211
13212  public interface HotwordDetector {
13213    method public default void destroy();
13214    method @RequiresPermission(allOf={android.Manifest.permission.RECORD_AUDIO, android.Manifest.permission.CAPTURE_AUDIO_HOTWORD}) public boolean startRecognition();
13215    method public boolean startRecognition(@NonNull android.os.ParcelFileDescriptor, @NonNull android.media.AudioFormat, @Nullable android.os.PersistableBundle);
13216    method public boolean stopRecognition();
13217    method public void updateState(@Nullable android.os.PersistableBundle, @Nullable android.os.SharedMemory);
13218  }
13219
13220  public static interface HotwordDetector.Callback {
13221    method public void onDetected(@NonNull android.service.voice.AlwaysOnHotwordDetector.EventPayload);
13222    method @Deprecated public void onError();
13223    method public default void onFailure(@NonNull android.service.voice.HotwordDetectionServiceFailure);
13224    method public void onHotwordDetectionServiceInitialized(int);
13225    method public void onHotwordDetectionServiceRestarted();
13226    method public void onRecognitionPaused();
13227    method public void onRecognitionResumed();
13228    method public void onRejected(@NonNull android.service.voice.HotwordRejectedResult);
13229    method public default void onUnknownFailure(@NonNull String);
13230  }
13231
13232  public final class HotwordRejectedResult implements android.os.Parcelable {
13233    method public int describeContents();
13234    method public int getConfidenceLevel();
13235    method public void writeToParcel(@NonNull android.os.Parcel, int);
13236    field public static final int CONFIDENCE_LEVEL_HIGH = 3; // 0x3
13237    field public static final int CONFIDENCE_LEVEL_LOW = 1; // 0x1
13238    field public static final int CONFIDENCE_LEVEL_MEDIUM = 2; // 0x2
13239    field public static final int CONFIDENCE_LEVEL_NONE = 0; // 0x0
13240    field @NonNull public static final android.os.Parcelable.Creator<android.service.voice.HotwordRejectedResult> CREATOR;
13241  }
13242
13243  public static final class HotwordRejectedResult.Builder {
13244    ctor public HotwordRejectedResult.Builder();
13245    method @NonNull public android.service.voice.HotwordRejectedResult build();
13246    method @NonNull public android.service.voice.HotwordRejectedResult.Builder setConfidenceLevel(int);
13247  }
13248
13249  public interface SandboxedDetectionInitializer {
13250    method public static int getMaxCustomInitializationStatus();
13251    method public void onUpdateState(@Nullable android.os.PersistableBundle, @Nullable android.os.SharedMemory, long, @Nullable java.util.function.IntConsumer);
13252    field public static final int INITIALIZATION_STATUS_SUCCESS = 0; // 0x0
13253    field public static final int INITIALIZATION_STATUS_UNKNOWN = 100; // 0x64
13254  }
13255
13256  public final class SoundTriggerFailure implements android.os.Parcelable {
13257    method public int describeContents();
13258    method public int getErrorCode();
13259    method @NonNull public String getErrorMessage();
13260    method public int getSuggestedAction();
13261    method public void writeToParcel(@NonNull android.os.Parcel, int);
13262    field @NonNull public static final android.os.Parcelable.Creator<android.service.voice.SoundTriggerFailure> CREATOR;
13263    field public static final int ERROR_CODE_MODULE_DIED = 1; // 0x1
13264    field public static final int ERROR_CODE_RECOGNITION_RESUME_FAILED = 2; // 0x2
13265    field public static final int ERROR_CODE_UNEXPECTED_PREEMPTION = 3; // 0x3
13266    field public static final int ERROR_CODE_UNKNOWN = 0; // 0x0
13267  }
13268
13269  public abstract class VisualQueryDetectionService extends android.app.Service implements android.service.voice.SandboxedDetectionInitializer {
13270    ctor public VisualQueryDetectionService();
13271    method public final void finishQuery() throws java.lang.IllegalStateException;
13272    method public final void gainedAttention();
13273    method public final void lostAttention();
13274    method @Nullable public android.os.IBinder onBind(@NonNull android.content.Intent);
13275    method public void onStartDetection();
13276    method public void onStopDetection();
13277    method public void onUpdateState(@Nullable android.os.PersistableBundle, @Nullable android.os.SharedMemory, long, @Nullable java.util.function.IntConsumer);
13278    method public final void rejectQuery() throws java.lang.IllegalStateException;
13279    method public final void streamQuery(@NonNull String) throws java.lang.IllegalStateException;
13280    field public static final String SERVICE_INTERFACE = "android.service.voice.VisualQueryDetectionService";
13281  }
13282
13283  public final class VisualQueryDetectionServiceFailure implements android.os.Parcelable {
13284    method public int describeContents();
13285    method public int getErrorCode();
13286    method @NonNull public String getErrorMessage();
13287    method public int getSuggestedAction();
13288    method public void writeToParcel(@NonNull android.os.Parcel, int);
13289    field @NonNull public static final android.os.Parcelable.Creator<android.service.voice.VisualQueryDetectionServiceFailure> CREATOR;
13290    field public static final int ERROR_CODE_BINDING_DIED = 2; // 0x2
13291    field public static final int ERROR_CODE_BIND_FAILURE = 1; // 0x1
13292    field public static final int ERROR_CODE_ILLEGAL_ATTENTION_STATE = 3; // 0x3
13293    field public static final int ERROR_CODE_ILLEGAL_STREAMING_STATE = 4; // 0x4
13294    field public static final int ERROR_CODE_REMOTE_EXCEPTION = 5; // 0x5
13295    field public static final int ERROR_CODE_UNKNOWN = 0; // 0x0
13296  }
13297
13298  public class VisualQueryDetector {
13299    method public void destroy();
13300    method @RequiresPermission(allOf={android.Manifest.permission.CAMERA, android.Manifest.permission.RECORD_AUDIO}) public boolean startRecognition();
13301    method @RequiresPermission(allOf={android.Manifest.permission.CAMERA, android.Manifest.permission.RECORD_AUDIO}) public boolean stopRecognition();
13302    method public void updateState(@Nullable android.os.PersistableBundle, @Nullable android.os.SharedMemory);
13303  }
13304
13305  public static interface VisualQueryDetector.Callback {
13306    method public void onFailure(@NonNull android.service.voice.VisualQueryDetectionServiceFailure);
13307    method public void onQueryDetected(@NonNull String);
13308    method public void onQueryFinished();
13309    method public void onQueryRejected();
13310    method public void onUnknownFailure(@NonNull String);
13311    method public void onVisualQueryDetectionServiceInitialized(int);
13312    method public void onVisualQueryDetectionServiceRestarted();
13313  }
13314
13315  public class VoiceInteractionService extends android.app.Service {
13316    method @Deprecated @NonNull public final android.service.voice.AlwaysOnHotwordDetector createAlwaysOnHotwordDetector(String, java.util.Locale, android.service.voice.AlwaysOnHotwordDetector.Callback);
13317    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);
13318    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);
13319    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);
13320    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);
13321    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);
13322    method @NonNull @RequiresPermission("android.permission.MANAGE_VOICE_KEYPHRASES") public final android.media.voice.KeyphraseModelManager createKeyphraseModelManager();
13323    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);
13324  }
13325
13326}
13327
13328package android.service.wallpaper {
13329
13330  public class WallpaperService.Engine {
13331    method public boolean isInAmbientMode();
13332    method @MainThread public void onAmbientModeChanged(boolean, long);
13333  }
13334
13335}
13336
13337package android.service.wallpapereffectsgeneration {
13338
13339  public abstract class WallpaperEffectsGenerationService extends android.app.Service {
13340    ctor public WallpaperEffectsGenerationService();
13341    method @NonNull public final android.os.IBinder onBind(@NonNull android.content.Intent);
13342    method @MainThread public abstract void onGenerateCinematicEffect(@NonNull android.app.wallpapereffectsgeneration.CinematicEffectRequest);
13343    method public final void returnCinematicEffectResponse(@NonNull android.app.wallpapereffectsgeneration.CinematicEffectResponse);
13344    field public static final String SERVICE_INTERFACE = "android.service.wallpapereffectsgeneration.WallpaperEffectsGenerationService";
13345  }
13346
13347}
13348
13349package android.service.watchdog {
13350
13351  public abstract class ExplicitHealthCheckService extends android.app.Service {
13352    ctor public ExplicitHealthCheckService();
13353    method public final void notifyHealthCheckPassed(@NonNull String);
13354    method @NonNull public final android.os.IBinder onBind(@NonNull android.content.Intent);
13355    method public abstract void onCancelHealthCheck(@NonNull String);
13356    method @NonNull public abstract java.util.List<java.lang.String> onGetRequestedPackages();
13357    method @NonNull public abstract java.util.List<android.service.watchdog.ExplicitHealthCheckService.PackageConfig> onGetSupportedPackages();
13358    method public abstract void onRequestHealthCheck(@NonNull String);
13359    field public static final String BIND_PERMISSION = "android.permission.BIND_EXPLICIT_HEALTH_CHECK_SERVICE";
13360    field public static final String SERVICE_INTERFACE = "android.service.watchdog.ExplicitHealthCheckService";
13361  }
13362
13363  public static final class ExplicitHealthCheckService.PackageConfig implements android.os.Parcelable {
13364    ctor public ExplicitHealthCheckService.PackageConfig(@NonNull String, long);
13365    method public int describeContents();
13366    method public long getHealthCheckTimeoutMillis();
13367    method @NonNull public String getPackageName();
13368    method public void writeToParcel(android.os.Parcel, int);
13369    field @NonNull public static final android.os.Parcelable.Creator<android.service.watchdog.ExplicitHealthCheckService.PackageConfig> CREATOR;
13370  }
13371
13372}
13373
13374package android.service.wearable {
13375
13376  public abstract class WearableSensingService extends android.app.Service {
13377    ctor public WearableSensingService();
13378    method @Nullable public final android.os.IBinder onBind(@NonNull android.content.Intent);
13379    method @BinderThread public abstract void onDataProvided(@NonNull android.os.PersistableBundle, @Nullable android.os.SharedMemory, @NonNull java.util.function.Consumer<java.lang.Integer>);
13380    method @BinderThread public abstract void onDataStreamProvided(@NonNull android.os.ParcelFileDescriptor, @NonNull java.util.function.Consumer<java.lang.Integer>);
13381    method @BinderThread public abstract void onQueryServiceStatus(@NonNull java.util.Set<java.lang.Integer>, @NonNull String, @NonNull java.util.function.Consumer<android.service.ambientcontext.AmbientContextDetectionServiceStatus>);
13382    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>);
13383    method public abstract void onStopDetection(@NonNull String);
13384    field public static final String SERVICE_INTERFACE = "android.service.wearable.WearableSensingService";
13385  }
13386
13387}
13388
13389package android.telecom {
13390
13391  @Deprecated public class AudioState implements android.os.Parcelable {
13392    ctor @Deprecated public AudioState(boolean, int, int);
13393    ctor @Deprecated public AudioState(android.telecom.AudioState);
13394    ctor @Deprecated public AudioState(android.telecom.CallAudioState);
13395    method @Deprecated public static String audioRouteToString(int);
13396    method @Deprecated public int describeContents();
13397    method @Deprecated public int getRoute();
13398    method @Deprecated public int getSupportedRouteMask();
13399    method @Deprecated public boolean isMuted();
13400    method @Deprecated public void writeToParcel(android.os.Parcel, int);
13401    field @Deprecated @NonNull public static final android.os.Parcelable.Creator<android.telecom.AudioState> CREATOR;
13402    field @Deprecated public static final int ROUTE_BLUETOOTH = 2; // 0x2
13403    field @Deprecated public static final int ROUTE_EARPIECE = 1; // 0x1
13404    field @Deprecated public static final int ROUTE_SPEAKER = 8; // 0x8
13405    field @Deprecated public static final int ROUTE_WIRED_HEADSET = 4; // 0x4
13406    field @Deprecated public static final int ROUTE_WIRED_OR_EARPIECE = 5; // 0x5
13407  }
13408
13409  public final class BluetoothCallQualityReport implements android.os.Parcelable {
13410    method public int describeContents();
13411    method @IntRange(from=0) public int getNegativeAcknowledgementCount();
13412    method @IntRange(from=0) public int getPacketsNotReceivedCount();
13413    method @IntRange(from=0) public int getRetransmittedPacketsCount();
13414    method @IntRange(from=0xffffff81, to=20) public int getRssiDbm();
13415    method public long getSentTimestampMillis();
13416    method public int getSnrDb();
13417    method public boolean isChoppyVoice();
13418    method public void writeToParcel(@NonNull android.os.Parcel, int);
13419    field @NonNull public static final android.os.Parcelable.Creator<android.telecom.BluetoothCallQualityReport> CREATOR;
13420    field public static final String EVENT_BLUETOOTH_CALL_QUALITY_REPORT = "android.telecom.event.BLUETOOTH_CALL_QUALITY_REPORT";
13421    field public static final String EXTRA_BLUETOOTH_CALL_QUALITY_REPORT = "android.telecom.extra.BLUETOOTH_CALL_QUALITY_REPORT";
13422  }
13423
13424  public static final class BluetoothCallQualityReport.Builder {
13425    ctor public BluetoothCallQualityReport.Builder();
13426    method @NonNull public android.telecom.BluetoothCallQualityReport build();
13427    method @NonNull public android.telecom.BluetoothCallQualityReport.Builder setChoppyVoice(boolean);
13428    method @NonNull public android.telecom.BluetoothCallQualityReport.Builder setNegativeAcknowledgementCount(int);
13429    method @NonNull public android.telecom.BluetoothCallQualityReport.Builder setPacketsNotReceivedCount(int);
13430    method @NonNull public android.telecom.BluetoothCallQualityReport.Builder setRetransmittedPacketsCount(int);
13431    method @NonNull public android.telecom.BluetoothCallQualityReport.Builder setRssiDbm(int);
13432    method @NonNull public android.telecom.BluetoothCallQualityReport.Builder setSentTimestampMillis(long);
13433    method @NonNull public android.telecom.BluetoothCallQualityReport.Builder setSnrDb(int);
13434  }
13435
13436  public final class Call {
13437    method @Deprecated public void addListener(android.telecom.Call.Listener);
13438    method public void enterBackgroundAudioProcessing();
13439    method public void exitBackgroundAudioProcessing(boolean);
13440    method @Deprecated public void removeListener(android.telecom.Call.Listener);
13441    field @Deprecated public static final int STATE_PRE_DIAL_WAIT = 8; // 0x8
13442  }
13443
13444  @Deprecated public abstract static class Call.Listener extends android.telecom.Call.Callback {
13445    ctor @Deprecated public Call.Listener();
13446  }
13447
13448  public abstract class CallDiagnosticService extends android.app.Service {
13449    ctor public CallDiagnosticService();
13450    method @NonNull public java.util.concurrent.Executor getExecutor();
13451    method @Nullable public android.os.IBinder onBind(@NonNull android.content.Intent);
13452    method public abstract void onBluetoothCallQualityReportReceived(@NonNull android.telecom.BluetoothCallQualityReport);
13453    method public abstract void onCallAudioStateChanged(@NonNull android.telecom.CallAudioState);
13454    method @NonNull public abstract android.telecom.CallDiagnostics onInitializeCallDiagnostics(@NonNull android.telecom.Call.Details);
13455    method public abstract void onRemoveCallDiagnostics(@NonNull android.telecom.CallDiagnostics);
13456    field public static final String SERVICE_INTERFACE = "android.telecom.CallDiagnosticService";
13457  }
13458
13459  public abstract class CallDiagnostics {
13460    ctor public CallDiagnostics();
13461    method public final void clearDiagnosticMessage(int);
13462    method public final void displayDiagnosticMessage(int, @NonNull CharSequence);
13463    method public abstract void onCallDetailsChanged(@NonNull android.telecom.Call.Details);
13464    method @Nullable public abstract CharSequence onCallDisconnected(int, int);
13465    method @Nullable public abstract CharSequence onCallDisconnected(@NonNull android.telephony.ims.ImsReasonInfo);
13466    method public abstract void onCallQualityReceived(@NonNull android.telephony.CallQuality);
13467    method public abstract void onReceiveDeviceToDeviceMessage(int, int);
13468    method public final void sendDeviceToDeviceMessage(int, int);
13469    field public static final int BATTERY_STATE_CHARGING = 3; // 0x3
13470    field public static final int BATTERY_STATE_GOOD = 2; // 0x2
13471    field public static final int BATTERY_STATE_LOW = 1; // 0x1
13472    field public static final int COVERAGE_GOOD = 2; // 0x2
13473    field public static final int COVERAGE_POOR = 1; // 0x1
13474    field public static final int MESSAGE_CALL_AUDIO_CODEC = 2; // 0x2
13475    field public static final int MESSAGE_CALL_NETWORK_TYPE = 1; // 0x1
13476    field public static final int MESSAGE_DEVICE_BATTERY_STATE = 3; // 0x3
13477    field public static final int MESSAGE_DEVICE_NETWORK_COVERAGE = 4; // 0x4
13478  }
13479
13480  public static class CallScreeningService.CallResponse.Builder {
13481    method @NonNull @RequiresPermission(android.Manifest.permission.CAPTURE_AUDIO_OUTPUT) public android.telecom.CallScreeningService.CallResponse.Builder setShouldScreenCallViaAudioProcessing(boolean);
13482  }
13483
13484  public abstract class CallStreamingService extends android.app.Service {
13485    ctor public CallStreamingService();
13486    method @Nullable public android.os.IBinder onBind(@NonNull android.content.Intent);
13487    method public void onCallStreamingStarted(@NonNull android.telecom.StreamingCall);
13488    method public void onCallStreamingStateChanged(int);
13489    method public void onCallStreamingStopped();
13490    field public static final String SERVICE_INTERFACE = "android.telecom.CallStreamingService";
13491    field public static final int STREAMING_FAILED_ALREADY_STREAMING = 1; // 0x1
13492    field public static final int STREAMING_FAILED_NO_SENDER = 2; // 0x2
13493    field public static final int STREAMING_FAILED_SENDER_BINDING_ERROR = 3; // 0x3
13494    field public static final int STREAMING_FAILED_UNKNOWN = 0; // 0x0
13495  }
13496
13497  public abstract class Conference extends android.telecom.Conferenceable {
13498    method @Deprecated public final android.telecom.AudioState getAudioState();
13499    method @Deprecated public final long getConnectTimeMillis();
13500    method public android.telecom.Connection getPrimaryConnection();
13501    method @NonNull public final String getTelecomCallId();
13502    method @Deprecated public void onAudioStateChanged(android.telecom.AudioState);
13503    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public final void setAddress(@NonNull android.net.Uri, int);
13504    method public final void setCallerDisplayName(@NonNull String, int);
13505    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setConferenceState(boolean);
13506    method @Deprecated public final void setConnectTimeMillis(long);
13507  }
13508
13509  public abstract class Connection extends android.telecom.Conferenceable {
13510    method @Deprecated public final android.telecom.AudioState getAudioState();
13511    method @IntRange(from=0) public final long getConnectTimeMillis();
13512    method public final long getConnectionStartElapsedRealtimeMillis();
13513    method @Nullable public android.telecom.PhoneAccountHandle getPhoneAccountHandle();
13514    method @Nullable public final String getTelecomCallId();
13515    method @Deprecated public void onAudioStateChanged(android.telecom.AudioState);
13516    method @RequiresPermission(android.Manifest.permission.READ_CONTACTS) public void onCallFilteringCompleted(@NonNull android.telecom.Connection.CallFilteringCompletionInfo);
13517    method public final void resetConnectionTime();
13518    method public void setCallDirection(int);
13519    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public final void setConnectTimeMillis(@IntRange(from=0) long);
13520    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public final void setConnectionStartElapsedRealtimeMillis(long);
13521    method public void setPhoneAccountHandle(@NonNull android.telecom.PhoneAccountHandle);
13522    method public void setTelecomCallId(@NonNull String);
13523    field public static final int CAPABILITY_CONFERENCE_HAS_NO_CHILDREN = 2097152; // 0x200000
13524    field public static final int CAPABILITY_SPEED_UP_MT_AUDIO = 262144; // 0x40000
13525    field public static final String EVENT_DEVICE_TO_DEVICE_MESSAGE = "android.telecom.event.DEVICE_TO_DEVICE_MESSAGE";
13526    field public static final String EXTRA_DEVICE_TO_DEVICE_MESSAGE_TYPE = "android.telecom.extra.DEVICE_TO_DEVICE_MESSAGE_TYPE";
13527    field public static final String EXTRA_DEVICE_TO_DEVICE_MESSAGE_VALUE = "android.telecom.extra.DEVICE_TO_DEVICE_MESSAGE_VALUE";
13528    field public static final String EXTRA_DISABLE_ADD_CALL = "android.telecom.extra.DISABLE_ADD_CALL";
13529    field public static final int PROPERTY_EMERGENCY_CALLBACK_MODE = 1; // 0x1
13530    field public static final int PROPERTY_GENERIC_CONFERENCE = 2; // 0x2
13531    field public static final int PROPERTY_IS_DOWNGRADED_CONFERENCE = 64; // 0x40
13532    field public static final int PROPERTY_REMOTELY_HOSTED = 2048; // 0x800
13533  }
13534
13535  public static final class Connection.CallFilteringCompletionInfo implements android.os.Parcelable {
13536    ctor public Connection.CallFilteringCompletionInfo(boolean, boolean, @Nullable android.telecom.CallScreeningService.CallResponse, @Nullable android.content.ComponentName);
13537    method public int describeContents();
13538    method @Nullable public android.telecom.CallScreeningService.CallResponse getCallResponse();
13539    method @Nullable public android.content.ComponentName getCallScreeningComponent();
13540    method public boolean isBlocked();
13541    method public boolean isInContacts();
13542    field @NonNull public static final android.os.Parcelable.Creator<android.telecom.Connection.CallFilteringCompletionInfo> CREATOR;
13543  }
13544
13545  public final class ConnectionRequest implements android.os.Parcelable {
13546    method @Nullable public String getTelecomCallId();
13547  }
13548
13549  public abstract class ConnectionService extends android.app.Service {
13550    method public final void addExistingConnection(@NonNull android.telecom.PhoneAccountHandle, @NonNull android.telecom.Connection, @NonNull android.telecom.Conference);
13551  }
13552
13553  public abstract class InCallService extends android.app.Service {
13554    method @Deprecated public android.telecom.Phone getPhone();
13555    method @Deprecated public void onPhoneCreated(android.telecom.Phone);
13556    method @Deprecated public void onPhoneDestroyed(android.telecom.Phone);
13557  }
13558
13559  public class ParcelableCallAnalytics implements android.os.Parcelable {
13560    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>);
13561    ctor public ParcelableCallAnalytics(android.os.Parcel);
13562    method public java.util.List<android.telecom.ParcelableCallAnalytics.AnalyticsEvent> analyticsEvents();
13563    method public int describeContents();
13564    method public long getCallDurationMillis();
13565    method public int getCallTechnologies();
13566    method public int getCallTerminationCode();
13567    method public int getCallType();
13568    method public String getConnectionService();
13569    method public java.util.List<android.telecom.ParcelableCallAnalytics.EventTiming> getEventTimings();
13570    method public long getStartTimeMillis();
13571    method public boolean isAdditionalCall();
13572    method public boolean isCreatedFromExistingConnection();
13573    method public boolean isEmergencyCall();
13574    method public boolean isInterrupted();
13575    method public void writeToParcel(android.os.Parcel, int);
13576    field public static final int CALLTYPE_INCOMING = 1; // 0x1
13577    field public static final int CALLTYPE_OUTGOING = 2; // 0x2
13578    field public static final int CALLTYPE_UNKNOWN = 0; // 0x0
13579    field public static final int CDMA_PHONE = 1; // 0x1
13580    field @NonNull public static final android.os.Parcelable.Creator<android.telecom.ParcelableCallAnalytics> CREATOR;
13581    field public static final int GSM_PHONE = 2; // 0x2
13582    field public static final int IMS_PHONE = 4; // 0x4
13583    field public static final long MILLIS_IN_1_SECOND = 1000L; // 0x3e8L
13584    field public static final long MILLIS_IN_5_MINUTES = 300000L; // 0x493e0L
13585    field public static final int SIP_PHONE = 8; // 0x8
13586    field public static final int STILL_CONNECTED = -1; // 0xffffffff
13587    field public static final int THIRD_PARTY_PHONE = 16; // 0x10
13588  }
13589
13590  public static final class ParcelableCallAnalytics.AnalyticsEvent implements android.os.Parcelable {
13591    ctor public ParcelableCallAnalytics.AnalyticsEvent(int, long);
13592    method public int describeContents();
13593    method public int getEventName();
13594    method public long getTimeSinceLastEvent();
13595    method public void writeToParcel(android.os.Parcel, int);
13596    field public static final int AUDIO_ROUTE_BT = 204; // 0xcc
13597    field public static final int AUDIO_ROUTE_EARPIECE = 205; // 0xcd
13598    field public static final int AUDIO_ROUTE_HEADSET = 206; // 0xce
13599    field public static final int AUDIO_ROUTE_SPEAKER = 207; // 0xcf
13600    field public static final int BIND_CS = 5; // 0x5
13601    field public static final int BLOCK_CHECK_FINISHED = 105; // 0x69
13602    field public static final int BLOCK_CHECK_INITIATED = 104; // 0x68
13603    field public static final int CONFERENCE_WITH = 300; // 0x12c
13604    field @NonNull public static final android.os.Parcelable.Creator<android.telecom.ParcelableCallAnalytics.AnalyticsEvent> CREATOR;
13605    field public static final int CS_BOUND = 6; // 0x6
13606    field public static final int DIRECT_TO_VM_FINISHED = 103; // 0x67
13607    field public static final int DIRECT_TO_VM_INITIATED = 102; // 0x66
13608    field public static final int DND_CHECK_COMPLETED = 110; // 0x6e
13609    field public static final int DND_CHECK_INITIATED = 109; // 0x6d
13610    field public static final int FILTERING_COMPLETED = 107; // 0x6b
13611    field public static final int FILTERING_INITIATED = 106; // 0x6a
13612    field public static final int FILTERING_TIMED_OUT = 108; // 0x6c
13613    field public static final int MUTE = 202; // 0xca
13614    field public static final int REMOTELY_HELD = 402; // 0x192
13615    field public static final int REMOTELY_UNHELD = 403; // 0x193
13616    field public static final int REQUEST_ACCEPT = 7; // 0x7
13617    field public static final int REQUEST_HOLD = 400; // 0x190
13618    field public static final int REQUEST_PULL = 500; // 0x1f4
13619    field public static final int REQUEST_REJECT = 8; // 0x8
13620    field public static final int REQUEST_UNHOLD = 401; // 0x191
13621    field public static final int SCREENING_COMPLETED = 101; // 0x65
13622    field public static final int SCREENING_SENT = 100; // 0x64
13623    field public static final int SET_ACTIVE = 1; // 0x1
13624    field public static final int SET_DIALING = 4; // 0x4
13625    field public static final int SET_DISCONNECTED = 2; // 0x2
13626    field public static final int SET_HOLD = 404; // 0x194
13627    field public static final int SET_PARENT = 302; // 0x12e
13628    field public static final int SET_SELECT_PHONE_ACCOUNT = 0; // 0x0
13629    field public static final int SILENCE = 201; // 0xc9
13630    field public static final int SKIP_RINGING = 200; // 0xc8
13631    field public static final int SPLIT_CONFERENCE = 301; // 0x12d
13632    field public static final int START_CONNECTION = 3; // 0x3
13633    field public static final int SWAP = 405; // 0x195
13634    field public static final int UNMUTE = 203; // 0xcb
13635  }
13636
13637  public static final class ParcelableCallAnalytics.EventTiming implements android.os.Parcelable {
13638    ctor public ParcelableCallAnalytics.EventTiming(int, long);
13639    method public int describeContents();
13640    method public int getName();
13641    method public long getTime();
13642    method public void writeToParcel(android.os.Parcel, int);
13643    field public static final int ACCEPT_TIMING = 0; // 0x0
13644    field public static final int BIND_CS_TIMING = 6; // 0x6
13645    field public static final int BLOCK_CHECK_FINISHED_TIMING = 9; // 0x9
13646    field @NonNull public static final android.os.Parcelable.Creator<android.telecom.ParcelableCallAnalytics.EventTiming> CREATOR;
13647    field public static final int DIRECT_TO_VM_FINISHED_TIMING = 8; // 0x8
13648    field public static final int DISCONNECT_TIMING = 2; // 0x2
13649    field public static final int DND_PRE_CALL_PRE_CHECK_TIMING = 12; // 0xc
13650    field public static final int FILTERING_COMPLETED_TIMING = 10; // 0xa
13651    field public static final int FILTERING_TIMED_OUT_TIMING = 11; // 0xb
13652    field public static final int HOLD_TIMING = 3; // 0x3
13653    field public static final int INVALID = 999999; // 0xf423f
13654    field public static final int OUTGOING_TIME_TO_DIALING_TIMING = 5; // 0x5
13655    field public static final int REJECT_TIMING = 1; // 0x1
13656    field public static final int SCREENING_COMPLETED_TIMING = 7; // 0x7
13657    field public static final int UNHOLD_TIMING = 4; // 0x4
13658  }
13659
13660  @Deprecated public final class Phone {
13661    method @Deprecated public void addListener(android.telecom.Phone.Listener);
13662    method @Deprecated public boolean canAddCall();
13663    method @Deprecated public android.telecom.AudioState getAudioState();
13664    method @Deprecated public android.telecom.CallAudioState getCallAudioState();
13665    method @Deprecated public java.util.List<android.telecom.Call> getCalls();
13666    method @Deprecated public void removeListener(android.telecom.Phone.Listener);
13667    method @Deprecated public void requestBluetoothAudio(String);
13668    method @Deprecated public void setAudioRoute(int);
13669    method @Deprecated public void setMuted(boolean);
13670  }
13671
13672  @Deprecated public abstract static class Phone.Listener {
13673    ctor @Deprecated public Phone.Listener();
13674    method @Deprecated public void onAudioStateChanged(android.telecom.Phone, android.telecom.AudioState);
13675    method @Deprecated public void onBringToForeground(android.telecom.Phone, boolean);
13676    method @Deprecated public void onCallAdded(android.telecom.Phone, android.telecom.Call);
13677    method @Deprecated public void onCallAudioStateChanged(android.telecom.Phone, android.telecom.CallAudioState);
13678    method @Deprecated public void onCallRemoved(android.telecom.Phone, android.telecom.Call);
13679    method @Deprecated public void onCanAddCallChanged(android.telecom.Phone, boolean);
13680    method @Deprecated public void onSilenceRinger(android.telecom.Phone);
13681  }
13682
13683  public final class PhoneAccount implements android.os.Parcelable {
13684    field public static final int CAPABILITY_EMERGENCY_CALLS_ONLY = 128; // 0x80
13685    field public static final int CAPABILITY_EMERGENCY_PREFERRED = 8192; // 0x2000
13686    field public static final int CAPABILITY_EMERGENCY_VIDEO_CALLING = 512; // 0x200
13687    field public static final int CAPABILITY_MULTI_USER = 32; // 0x20
13688    field public static final String EXTRA_PLAY_CALL_RECORDING_TONE = "android.telecom.extra.PLAY_CALL_RECORDING_TONE";
13689    field public static final String EXTRA_SORT_ORDER = "android.telecom.extra.SORT_ORDER";
13690  }
13691
13692  public static class PhoneAccount.Builder {
13693    method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public android.telecom.PhoneAccount.Builder setGroupId(@NonNull String);
13694  }
13695
13696  public class PhoneAccountSuggestionService extends android.app.Service {
13697    ctor public PhoneAccountSuggestionService();
13698    method public void onAccountSuggestionRequest(@NonNull String);
13699    method public android.os.IBinder onBind(android.content.Intent);
13700    method public final void suggestPhoneAccounts(@NonNull String, @NonNull java.util.List<android.telecom.PhoneAccountSuggestion>);
13701    field public static final String SERVICE_INTERFACE = "android.telecom.PhoneAccountSuggestionService";
13702  }
13703
13704  public final class RemoteConference {
13705    method @Deprecated public void setAudioState(android.telecom.AudioState);
13706  }
13707
13708  public final class RemoteConnection {
13709    method @RequiresPermission(android.Manifest.permission.READ_CONTACTS) public void onCallFilteringCompleted(@NonNull android.telecom.Connection.CallFilteringCompletionInfo);
13710    method @Deprecated public void setAudioState(android.telecom.AudioState);
13711  }
13712
13713  public final class StatusHints implements android.os.Parcelable {
13714    ctor @Deprecated public StatusHints(android.content.ComponentName, CharSequence, int, android.os.Bundle);
13715    method @Deprecated public android.graphics.drawable.Drawable getIcon(android.content.Context);
13716    method @Deprecated public int getIconResId();
13717    method @Deprecated public android.content.ComponentName getPackageName();
13718  }
13719
13720  public final class StreamingCall implements android.os.Parcelable {
13721    ctor public StreamingCall(@NonNull android.content.ComponentName, @NonNull CharSequence, @NonNull android.net.Uri, @NonNull android.os.Bundle);
13722    method public int describeContents();
13723    method @NonNull public android.net.Uri getAddress();
13724    method @NonNull public android.content.ComponentName getComponentName();
13725    method @NonNull public CharSequence getDisplayName();
13726    method @NonNull public android.os.Bundle getExtras();
13727    method public int getState();
13728    method public void requestStreamingState(int);
13729    method public void writeToParcel(@NonNull android.os.Parcel, int);
13730    field @NonNull public static final android.os.Parcelable.Creator<android.telecom.StreamingCall> CREATOR;
13731    field public static final int STATE_DISCONNECTED = 3; // 0x3
13732    field public static final int STATE_HOLDING = 2; // 0x2
13733    field public static final int STATE_STREAMING = 1; // 0x1
13734  }
13735
13736  public final class TelecomAnalytics implements android.os.Parcelable {
13737    ctor public TelecomAnalytics(java.util.List<android.telecom.TelecomAnalytics.SessionTiming>, java.util.List<android.telecom.ParcelableCallAnalytics>);
13738    method public int describeContents();
13739    method public java.util.List<android.telecom.ParcelableCallAnalytics> getCallAnalytics();
13740    method public java.util.List<android.telecom.TelecomAnalytics.SessionTiming> getSessionTimings();
13741    method public void writeToParcel(android.os.Parcel, int);
13742    field @NonNull public static final android.os.Parcelable.Creator<android.telecom.TelecomAnalytics> CREATOR;
13743  }
13744
13745  public static final class TelecomAnalytics.SessionTiming implements android.os.Parcelable {
13746    ctor public TelecomAnalytics.SessionTiming(int, long);
13747    method public int describeContents();
13748    method public Integer getKey();
13749    method public long getTime();
13750    method public void writeToParcel(android.os.Parcel, int);
13751    field @NonNull public static final android.os.Parcelable.Creator<android.telecom.TelecomAnalytics.SessionTiming> CREATOR;
13752    field public static final int CSW_ADD_CONFERENCE_CALL = 108; // 0x6c
13753    field public static final int CSW_HANDLE_CREATE_CONNECTION_COMPLETE = 100; // 0x64
13754    field public static final int CSW_REMOVE_CALL = 106; // 0x6a
13755    field public static final int CSW_SET_ACTIVE = 101; // 0x65
13756    field public static final int CSW_SET_DIALING = 103; // 0x67
13757    field public static final int CSW_SET_DISCONNECTED = 104; // 0x68
13758    field public static final int CSW_SET_IS_CONFERENCED = 107; // 0x6b
13759    field public static final int CSW_SET_ON_HOLD = 105; // 0x69
13760    field public static final int CSW_SET_RINGING = 102; // 0x66
13761    field public static final int ICA_ANSWER_CALL = 1; // 0x1
13762    field public static final int ICA_CONFERENCE = 8; // 0x8
13763    field public static final int ICA_DISCONNECT_CALL = 3; // 0x3
13764    field public static final int ICA_HOLD_CALL = 4; // 0x4
13765    field public static final int ICA_MUTE = 6; // 0x6
13766    field public static final int ICA_REJECT_CALL = 2; // 0x2
13767    field public static final int ICA_SET_AUDIO_ROUTE = 7; // 0x7
13768    field public static final int ICA_UNHOLD_CALL = 5; // 0x5
13769  }
13770
13771  public class TelecomManager {
13772    method public void addNewUnknownCall(android.telecom.PhoneAccountHandle, android.os.Bundle);
13773    method @Deprecated public void clearAccounts();
13774    method public void clearPhoneAccounts();
13775    method @NonNull public android.content.Intent createLaunchEmergencyDialerIntent(@Nullable String);
13776    method @RequiresPermission(android.Manifest.permission.DUMP) public android.telecom.TelecomAnalytics dumpAnalytics();
13777    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void enablePhoneAccount(android.telecom.PhoneAccountHandle, boolean);
13778    method public java.util.List<android.telecom.PhoneAccountHandle> getAllPhoneAccountHandles();
13779    method public java.util.List<android.telecom.PhoneAccount> getAllPhoneAccounts();
13780    method public int getAllPhoneAccountsCount();
13781    method @NonNull @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public java.util.List<android.telecom.PhoneAccountHandle> getCallCapablePhoneAccounts(boolean);
13782    method @RequiresPermission(anyOf={android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE, android.Manifest.permission.READ_PHONE_STATE}, conditional=true) public int getCallState();
13783    method public android.telecom.PhoneAccountHandle getConnectionManager();
13784    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getCurrentTtyMode();
13785    method @Nullable @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public String getDefaultDialerPackage(@NonNull android.os.UserHandle);
13786    method @Deprecated public android.content.ComponentName getDefaultPhoneApp();
13787    method @Deprecated public java.util.List<android.telecom.PhoneAccountHandle> getPhoneAccountsForPackage();
13788    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);
13789    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean isInEmergencyCall();
13790    method @RequiresPermission(anyOf={android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE, android.Manifest.permission.READ_PHONE_STATE}) public boolean isRinging();
13791    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setUserSelectedOutgoingPhoneAccount(@Nullable android.telecom.PhoneAccountHandle);
13792    field public static final String ACTION_CURRENT_TTY_MODE_CHANGED = "android.telecom.action.CURRENT_TTY_MODE_CHANGED";
13793    field public static final String ACTION_TTY_PREFERRED_MODE_CHANGED = "android.telecom.action.TTY_PREFERRED_MODE_CHANGED";
13794    field public static final int CALL_SOURCE_EMERGENCY_DIALPAD = 1; // 0x1
13795    field public static final int CALL_SOURCE_EMERGENCY_SHORTCUT = 2; // 0x2
13796    field public static final int CALL_SOURCE_UNSPECIFIED = 0; // 0x0
13797    field public static final String EXTRA_CALL_BACK_INTENT = "android.telecom.extra.CALL_BACK_INTENT";
13798    field public static final String EXTRA_CALL_HAS_IN_BAND_RINGTONE = "android.telecom.extra.CALL_HAS_IN_BAND_RINGTONE";
13799    field public static final String EXTRA_CALL_SOURCE = "android.telecom.extra.CALL_SOURCE";
13800    field public static final String EXTRA_CALL_TECHNOLOGY_TYPE = "android.telecom.extra.CALL_TECHNOLOGY_TYPE";
13801    field @Deprecated public static final String EXTRA_CLEAR_MISSED_CALLS_INTENT = "android.telecom.extra.CLEAR_MISSED_CALLS_INTENT";
13802    field public static final String EXTRA_CONNECTION_SERVICE = "android.telecom.extra.CONNECTION_SERVICE";
13803    field public static final String EXTRA_CURRENT_TTY_MODE = "android.telecom.extra.CURRENT_TTY_MODE";
13804    field public static final String EXTRA_IS_USER_INTENT_EMERGENCY_CALL = "android.telecom.extra.IS_USER_INTENT_EMERGENCY_CALL";
13805    field public static final String EXTRA_TTY_PREFERRED_MODE = "android.telecom.extra.TTY_PREFERRED_MODE";
13806    field public static final String EXTRA_UNKNOWN_CALL_HANDLE = "android.telecom.extra.UNKNOWN_CALL_HANDLE";
13807    field public static final int TTY_MODE_FULL = 1; // 0x1
13808    field public static final int TTY_MODE_HCO = 2; // 0x2
13809    field public static final int TTY_MODE_OFF = 0; // 0x0
13810    field public static final int TTY_MODE_VCO = 3; // 0x3
13811  }
13812
13813}
13814
13815package android.telephony {
13816
13817  public final class AccessNetworkConstants {
13818    field public static final int TRANSPORT_TYPE_INVALID = -1; // 0xffffffff
13819  }
13820
13821  public static final class AccessNetworkConstants.NgranBands {
13822    method public static int getFrequencyRangeGroup(int);
13823    field public static final int FREQUENCY_RANGE_GROUP_1 = 1; // 0x1
13824    field public static final int FREQUENCY_RANGE_GROUP_2 = 2; // 0x2
13825    field public static final int FREQUENCY_RANGE_GROUP_UNKNOWN = 0; // 0x0
13826  }
13827
13828  public final class BarringInfo implements android.os.Parcelable {
13829    ctor public BarringInfo();
13830    method @NonNull public android.telephony.BarringInfo createLocationInfoSanitizedCopy();
13831  }
13832
13833  @Deprecated public final class CallAttributes implements android.os.Parcelable {
13834    ctor @Deprecated public CallAttributes(@NonNull android.telephony.PreciseCallState, int, @NonNull android.telephony.CallQuality);
13835    method @Deprecated public int describeContents();
13836    method @Deprecated @NonNull public android.telephony.CallQuality getCallQuality();
13837    method @Deprecated public int getNetworkType();
13838    method @Deprecated @NonNull public android.telephony.PreciseCallState getPreciseCallState();
13839    method @Deprecated public void writeToParcel(android.os.Parcel, int);
13840    field @Deprecated @NonNull public static final android.os.Parcelable.Creator<android.telephony.CallAttributes> CREATOR;
13841  }
13842
13843  public final class CallForwardingInfo implements android.os.Parcelable {
13844    ctor public CallForwardingInfo(boolean, int, @Nullable String, int);
13845    method public int describeContents();
13846    method @Nullable public String getNumber();
13847    method public int getReason();
13848    method public int getTimeoutSeconds();
13849    method public boolean isEnabled();
13850    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.CallForwardingInfo> CREATOR;
13851    field public static final int REASON_ALL = 4; // 0x4
13852    field public static final int REASON_ALL_CONDITIONAL = 5; // 0x5
13853    field public static final int REASON_BUSY = 1; // 0x1
13854    field public static final int REASON_NOT_REACHABLE = 3; // 0x3
13855    field public static final int REASON_NO_REPLY = 2; // 0x2
13856    field public static final int REASON_UNCONDITIONAL = 0; // 0x0
13857  }
13858
13859  public final class CallQuality implements android.os.Parcelable {
13860    ctor public CallQuality(int, int, int, int, int, int, int, int, int, int, int);
13861    ctor public CallQuality(int, int, int, int, int, int, int, int, int, int, int, boolean, boolean, boolean);
13862    method public int describeContents();
13863    method public int getAverageRelativeJitter();
13864    method public int getAverageRoundTripTime();
13865    method public int getCallDuration();
13866    method public int getCodecType();
13867    method public int getDownlinkCallQualityLevel();
13868    method public long getMaxPlayoutDelayMillis();
13869    method public int getMaxRelativeJitter();
13870    method public long getMinPlayoutDelayMillis();
13871    method public int getNumDroppedRtpPackets();
13872    method public int getNumNoDataFrames();
13873    method public int getNumRtpDuplicatePackets();
13874    method public int getNumRtpPacketsNotReceived();
13875    method public int getNumRtpPacketsReceived();
13876    method public int getNumRtpPacketsTransmitted();
13877    method public int getNumRtpPacketsTransmittedLost();
13878    method public int getNumRtpSidPacketsReceived();
13879    method public int getNumVoiceFrames();
13880    method public int getUplinkCallQualityLevel();
13881    method public boolean isIncomingSilenceDetectedAtCallSetup();
13882    method public boolean isOutgoingSilenceDetectedAtCallSetup();
13883    method public boolean isRtpInactivityDetected();
13884    method public void writeToParcel(android.os.Parcel, int);
13885    field public static final int CALL_QUALITY_BAD = 4; // 0x4
13886    field public static final int CALL_QUALITY_EXCELLENT = 0; // 0x0
13887    field public static final int CALL_QUALITY_FAIR = 2; // 0x2
13888    field public static final int CALL_QUALITY_GOOD = 1; // 0x1
13889    field public static final int CALL_QUALITY_NOT_AVAILABLE = 5; // 0x5
13890    field public static final int CALL_QUALITY_POOR = 3; // 0x3
13891    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.CallQuality> CREATOR;
13892  }
13893
13894  public static final class CallQuality.Builder {
13895    ctor public CallQuality.Builder();
13896    method @NonNull public android.telephony.CallQuality build();
13897    method @NonNull public android.telephony.CallQuality.Builder setAverageRelativeJitter(int);
13898    method @NonNull public android.telephony.CallQuality.Builder setAverageRoundTripTimeMillis(int);
13899    method @NonNull public android.telephony.CallQuality.Builder setCallDurationMillis(int);
13900    method @NonNull public android.telephony.CallQuality.Builder setCodecType(int);
13901    method @NonNull public android.telephony.CallQuality.Builder setDownlinkCallQualityLevel(int);
13902    method @NonNull public android.telephony.CallQuality.Builder setIncomingSilenceDetectedAtCallSetup(boolean);
13903    method @NonNull public android.telephony.CallQuality.Builder setMaxPlayoutDelayMillis(long);
13904    method @NonNull public android.telephony.CallQuality.Builder setMaxRelativeJitter(int);
13905    method @NonNull public android.telephony.CallQuality.Builder setMinPlayoutDelayMillis(long);
13906    method @NonNull public android.telephony.CallQuality.Builder setNumDroppedRtpPackets(int);
13907    method @NonNull public android.telephony.CallQuality.Builder setNumNoDataFrames(int);
13908    method @NonNull public android.telephony.CallQuality.Builder setNumRtpDuplicatePackets(int);
13909    method @NonNull public android.telephony.CallQuality.Builder setNumRtpPacketsNotReceived(int);
13910    method @NonNull public android.telephony.CallQuality.Builder setNumRtpPacketsReceived(int);
13911    method @NonNull public android.telephony.CallQuality.Builder setNumRtpPacketsTransmitted(int);
13912    method @NonNull public android.telephony.CallQuality.Builder setNumRtpPacketsTransmittedLost(int);
13913    method @NonNull public android.telephony.CallQuality.Builder setNumRtpSidPacketsReceived(int);
13914    method @NonNull public android.telephony.CallQuality.Builder setNumVoiceFrames(int);
13915    method @NonNull public android.telephony.CallQuality.Builder setOutgoingSilenceDetectedAtCallSetup(boolean);
13916    method @NonNull public android.telephony.CallQuality.Builder setRtpInactivityDetected(boolean);
13917    method @NonNull public android.telephony.CallQuality.Builder setUplinkCallQualityLevel(int);
13918  }
13919
13920  public final class CallState implements android.os.Parcelable {
13921    method public int describeContents();
13922    method @Nullable public android.telephony.CallQuality getCallQuality();
13923    method public int getCallState();
13924    method public int getImsCallServiceType();
13925    method @Nullable public String getImsCallSessionId();
13926    method public int getImsCallType();
13927    method public int getNetworkType();
13928    method public void writeToParcel(@Nullable android.os.Parcel, int);
13929    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.CallState> CREATOR;
13930  }
13931
13932  public static final class CallState.Builder {
13933    ctor public CallState.Builder(int);
13934    method @NonNull public android.telephony.CallState build();
13935    method @NonNull public android.telephony.CallState.Builder setCallQuality(@Nullable android.telephony.CallQuality);
13936    method @NonNull public android.telephony.CallState.Builder setImsCallServiceType(int);
13937    method @NonNull public android.telephony.CallState.Builder setImsCallSessionId(@Nullable String);
13938    method @NonNull public android.telephony.CallState.Builder setImsCallType(int);
13939    method @NonNull public android.telephony.CallState.Builder setNetworkType(int);
13940  }
13941
13942  public class CarrierConfigManager {
13943    method @NonNull @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public String getDefaultCarrierServicePackageName();
13944    method @NonNull public static android.os.PersistableBundle getDefaultConfig();
13945    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void overrideConfig(int, @Nullable android.os.PersistableBundle);
13946    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void updateConfigForPhoneId(int, String);
13947    field public static final int GBA_DIGEST = 3; // 0x3
13948    field public static final int GBA_ME = 1; // 0x1
13949    field public static final int GBA_U = 2; // 0x2
13950    field public static final String KEY_CARRIER_SETUP_APP_STRING = "carrier_setup_app_string";
13951    field public static final String KEY_GBA_MODE_INT = "gba_mode_int";
13952    field public static final String KEY_GBA_UA_SECURITY_ORGANIZATION_INT = "gba_ua_security_organization_int";
13953    field public static final String KEY_GBA_UA_SECURITY_PROTOCOL_INT = "gba_ua_security_protocol_int";
13954    field public static final String KEY_GBA_UA_TLS_CIPHER_SUITE_INT = "gba_ua_tls_cipher_suite_int";
13955    field public static final String KEY_SUPPORT_CDMA_1X_VOICE_CALLS_BOOL = "support_cdma_1x_voice_calls_bool";
13956  }
13957
13958  public static final class CarrierConfigManager.Wifi {
13959    field public static final String KEY_AVOID_5GHZ_SOFTAP_FOR_LAA_BOOL = "wifi.avoid_5ghz_softap_for_laa_bool";
13960    field public static final String KEY_AVOID_5GHZ_WIFI_DIRECT_FOR_LAA_BOOL = "wifi.avoid_5ghz_wifi_direct_for_laa_bool";
13961    field public static final String KEY_HOTSPOT_MAX_CLIENT_COUNT = "wifi.hotspot_maximum_client_count";
13962    field public static final String KEY_PREFIX = "wifi.";
13963    field public static final String KEY_SUGGESTION_SSID_LIST_WITH_MAC_RANDOMIZATION_DISABLED = "wifi.suggestion_ssid_list_with_mac_randomization_disabled";
13964  }
13965
13966  public final class CarrierRestrictionRules implements android.os.Parcelable {
13967    method @NonNull public java.util.List<java.lang.Boolean> areCarrierIdentifiersAllowed(@NonNull java.util.List<android.service.carrier.CarrierIdentifier>);
13968    method public int describeContents();
13969    method @NonNull public java.util.List<android.service.carrier.CarrierIdentifier> getAllowedCarriers();
13970    method public int getDefaultCarrierRestriction();
13971    method @NonNull public java.util.List<android.service.carrier.CarrierIdentifier> getExcludedCarriers();
13972    method public int getMultiSimPolicy();
13973    method public boolean isAllCarriersAllowed();
13974    method public void writeToParcel(android.os.Parcel, int);
13975    field public static final int CARRIER_RESTRICTION_DEFAULT_ALLOWED = 1; // 0x1
13976    field public static final int CARRIER_RESTRICTION_DEFAULT_NOT_ALLOWED = 0; // 0x0
13977    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.CarrierRestrictionRules> CREATOR;
13978    field public static final int MULTISIM_POLICY_NONE = 0; // 0x0
13979    field public static final int MULTISIM_POLICY_ONE_VALID_SIM_MUST_BE_PRESENT = 1; // 0x1
13980  }
13981
13982  public static final class CarrierRestrictionRules.Builder {
13983    ctor public CarrierRestrictionRules.Builder();
13984    method @NonNull public android.telephony.CarrierRestrictionRules build();
13985    method @NonNull public android.telephony.CarrierRestrictionRules.Builder setAllCarriersAllowed();
13986    method @NonNull public android.telephony.CarrierRestrictionRules.Builder setAllowedCarriers(@NonNull java.util.List<android.service.carrier.CarrierIdentifier>);
13987    method @NonNull public android.telephony.CarrierRestrictionRules.Builder setDefaultCarrierRestriction(int);
13988    method @NonNull public android.telephony.CarrierRestrictionRules.Builder setExcludedCarriers(@NonNull java.util.List<android.service.carrier.CarrierIdentifier>);
13989    method @NonNull public android.telephony.CarrierRestrictionRules.Builder setMultiSimPolicy(int);
13990  }
13991
13992  public class CbGeoUtils {
13993  }
13994
13995  public static class CbGeoUtils.Circle implements android.telephony.CbGeoUtils.Geometry {
13996    ctor public CbGeoUtils.Circle(@NonNull android.telephony.CbGeoUtils.LatLng, double);
13997    method public boolean contains(@NonNull android.telephony.CbGeoUtils.LatLng);
13998    method @NonNull public android.telephony.CbGeoUtils.LatLng getCenter();
13999    method public double getRadius();
14000  }
14001
14002  public static interface CbGeoUtils.Geometry {
14003    method public boolean contains(@NonNull android.telephony.CbGeoUtils.LatLng);
14004  }
14005
14006  public static class CbGeoUtils.LatLng {
14007    ctor public CbGeoUtils.LatLng(double, double);
14008    method public double distance(@NonNull android.telephony.CbGeoUtils.LatLng);
14009    method @NonNull public android.telephony.CbGeoUtils.LatLng subtract(@NonNull android.telephony.CbGeoUtils.LatLng);
14010    field public final double lat;
14011    field public final double lng;
14012  }
14013
14014  public static class CbGeoUtils.Polygon implements android.telephony.CbGeoUtils.Geometry {
14015    ctor public CbGeoUtils.Polygon(@NonNull java.util.List<android.telephony.CbGeoUtils.LatLng>);
14016    method public boolean contains(@NonNull android.telephony.CbGeoUtils.LatLng);
14017    method @NonNull public java.util.List<android.telephony.CbGeoUtils.LatLng> getVertices();
14018  }
14019
14020  public final class CellBroadcastIdRange implements android.os.Parcelable {
14021    ctor public CellBroadcastIdRange(@IntRange(from=0, to=65535) int, @IntRange(from=0, to=65535) int, int, boolean) throws java.lang.IllegalArgumentException;
14022    method public int describeContents();
14023    method @IntRange(from=0, to=65535) public int getEndId();
14024    method @IntRange(from=0, to=65535) public int getStartId();
14025    method public int getType();
14026    method public boolean isEnabled();
14027    method public void writeToParcel(@NonNull android.os.Parcel, int);
14028    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.CellBroadcastIdRange> CREATOR;
14029  }
14030
14031  public class CellBroadcastIntents {
14032    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);
14033    field public static final String ACTION_AREA_INFO_UPDATED = "android.telephony.action.AREA_INFO_UPDATED";
14034  }
14035
14036  public abstract class CellBroadcastService extends android.app.Service {
14037    ctor public CellBroadcastService();
14038    method @NonNull @WorkerThread public abstract CharSequence getCellBroadcastAreaInfo(int);
14039    method @CallSuper public android.os.IBinder onBind(@Nullable android.content.Intent);
14040    method public abstract void onCdmaCellBroadcastSms(int, @NonNull byte[], int);
14041    method public abstract void onCdmaScpMessage(int, @NonNull java.util.List<android.telephony.cdma.CdmaSmsCbProgramData>, @NonNull String, @NonNull java.util.function.Consumer<android.os.Bundle>);
14042    method public abstract void onGsmCellBroadcastSms(int, @NonNull byte[]);
14043    field public static final String CELL_BROADCAST_SERVICE_INTERFACE = "android.telephony.CellBroadcastService";
14044  }
14045
14046  public abstract class CellIdentity implements android.os.Parcelable {
14047    method @NonNull public abstract android.telephony.CellLocation asCellLocation();
14048    method @NonNull public abstract android.telephony.CellIdentity sanitizeLocationInfo();
14049  }
14050
14051  public final class CellIdentityCdma extends android.telephony.CellIdentity {
14052    method @NonNull public android.telephony.cdma.CdmaCellLocation asCellLocation();
14053    method @NonNull public android.telephony.CellIdentityCdma sanitizeLocationInfo();
14054  }
14055
14056  public final class CellIdentityGsm extends android.telephony.CellIdentity {
14057    method @NonNull public android.telephony.gsm.GsmCellLocation asCellLocation();
14058    method @NonNull public android.telephony.CellIdentityGsm sanitizeLocationInfo();
14059  }
14060
14061  public final class CellIdentityLte extends android.telephony.CellIdentity {
14062    method @NonNull public android.telephony.gsm.GsmCellLocation asCellLocation();
14063    method @NonNull public android.telephony.CellIdentityLte sanitizeLocationInfo();
14064  }
14065
14066  public final class CellIdentityNr extends android.telephony.CellIdentity {
14067    method @NonNull public android.telephony.CellLocation asCellLocation();
14068    method @NonNull public android.telephony.CellIdentityNr sanitizeLocationInfo();
14069  }
14070
14071  public final class CellIdentityTdscdma extends android.telephony.CellIdentity {
14072    method @NonNull public android.telephony.gsm.GsmCellLocation asCellLocation();
14073    method @NonNull public android.telephony.CellIdentityTdscdma sanitizeLocationInfo();
14074  }
14075
14076  public final class CellIdentityWcdma extends android.telephony.CellIdentity {
14077    method @NonNull public android.telephony.gsm.GsmCellLocation asCellLocation();
14078    method @NonNull public android.telephony.CellIdentityWcdma sanitizeLocationInfo();
14079  }
14080
14081  public final class DataFailCause {
14082    field @Deprecated public static final int VSNCP_APN_UNATHORIZED = 2238; // 0x8be
14083  }
14084
14085  public final class DataSpecificRegistrationInfo implements android.os.Parcelable {
14086    method public int describeContents();
14087    method public int getLteAttachExtraInfo();
14088    method public int getLteAttachResultType();
14089    method @Deprecated @NonNull public android.telephony.LteVopsSupportInfo getLteVopsSupportInfo();
14090    method @Nullable public android.telephony.VopsSupportInfo getVopsSupportInfo();
14091    method public void writeToParcel(android.os.Parcel, int);
14092    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.DataSpecificRegistrationInfo> CREATOR;
14093    field public static final int LTE_ATTACH_EXTRA_INFO_CSFB_NOT_PREFERRED = 1; // 0x1
14094    field public static final int LTE_ATTACH_EXTRA_INFO_NONE = 0; // 0x0
14095    field public static final int LTE_ATTACH_EXTRA_INFO_SMS_ONLY = 2; // 0x2
14096    field public static final int LTE_ATTACH_TYPE_COMBINED = 2; // 0x2
14097    field public static final int LTE_ATTACH_TYPE_EPS_ONLY = 1; // 0x1
14098    field public static final int LTE_ATTACH_TYPE_UNKNOWN = 0; // 0x0
14099  }
14100
14101  public final class DataThrottlingRequest implements android.os.Parcelable {
14102    method public int describeContents();
14103    method public long getCompletionDurationMillis();
14104    method public int getDataThrottlingAction();
14105    method public void writeToParcel(@NonNull android.os.Parcel, int);
14106    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.DataThrottlingRequest> CREATOR;
14107    field public static final int DATA_THROTTLING_ACTION_HOLD = 3; // 0x3
14108    field public static final int DATA_THROTTLING_ACTION_NO_DATA_THROTTLING = 0; // 0x0
14109    field public static final int DATA_THROTTLING_ACTION_THROTTLE_PRIMARY_CARRIER = 2; // 0x2
14110    field public static final int DATA_THROTTLING_ACTION_THROTTLE_SECONDARY_CARRIER = 1; // 0x1
14111  }
14112
14113  public static final class DataThrottlingRequest.Builder {
14114    ctor public DataThrottlingRequest.Builder();
14115    method @NonNull public android.telephony.DataThrottlingRequest build();
14116    method @NonNull public android.telephony.DataThrottlingRequest.Builder setCompletionDurationMillis(long);
14117    method @NonNull public android.telephony.DataThrottlingRequest.Builder setDataThrottlingAction(int);
14118  }
14119
14120  public final class ImsiEncryptionInfo implements android.os.Parcelable {
14121    method public int describeContents();
14122    method @Nullable public String getKeyIdentifier();
14123    method @Nullable public java.security.PublicKey getPublicKey();
14124    method public void writeToParcel(@NonNull android.os.Parcel, int);
14125    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ImsiEncryptionInfo> CREATOR;
14126  }
14127
14128  public final class LinkCapacityEstimate implements android.os.Parcelable {
14129    ctor public LinkCapacityEstimate(int, int, int);
14130    method public int describeContents();
14131    method public int getDownlinkCapacityKbps();
14132    method public int getType();
14133    method public int getUplinkCapacityKbps();
14134    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.LinkCapacityEstimate> CREATOR;
14135    field public static final int INVALID = -1; // 0xffffffff
14136    field public static final int LCE_TYPE_COMBINED = 2; // 0x2
14137    field public static final int LCE_TYPE_PRIMARY = 0; // 0x0
14138    field public static final int LCE_TYPE_SECONDARY = 1; // 0x1
14139  }
14140
14141  public final class LteVopsSupportInfo extends android.telephony.VopsSupportInfo {
14142    ctor public LteVopsSupportInfo(int, int);
14143    method public int getEmcBearerSupport();
14144    method public int getVopsSupport();
14145    method public boolean isEmergencyServiceFallbackSupported();
14146    method public boolean isEmergencyServiceSupported();
14147    method public boolean isVopsSupported();
14148    method public void writeToParcel(@NonNull android.os.Parcel, int);
14149    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.LteVopsSupportInfo> CREATOR;
14150    field @Deprecated public static final int LTE_STATUS_NOT_AVAILABLE = 1; // 0x1
14151    field public static final int LTE_STATUS_NOT_SUPPORTED = 3; // 0x3
14152    field public static final int LTE_STATUS_SUPPORTED = 2; // 0x2
14153  }
14154
14155  public class MbmsDownloadSession implements java.lang.AutoCloseable {
14156    field public static final String MBMS_DOWNLOAD_SERVICE_ACTION = "android.telephony.action.EmbmsDownload";
14157  }
14158
14159  public class MbmsGroupCallSession implements java.lang.AutoCloseable {
14160    field public static final String MBMS_GROUP_CALL_SERVICE_ACTION = "android.telephony.action.EmbmsGroupCall";
14161  }
14162
14163  public class MbmsStreamingSession implements java.lang.AutoCloseable {
14164    field public static final String MBMS_STREAMING_SERVICE_ACTION = "android.telephony.action.EmbmsStreaming";
14165  }
14166
14167  public final class ModemActivityInfo implements android.os.Parcelable {
14168    method public int describeContents();
14169    method @NonNull public android.telephony.ModemActivityInfo getDelta(@NonNull android.telephony.ModemActivityInfo);
14170    method public long getIdleTimeMillis();
14171    method public static int getNumTxPowerLevels();
14172    method public long getReceiveTimeMillis();
14173    method public long getSleepTimeMillis();
14174    method public long getTimestampMillis();
14175    method public long getTransmitDurationMillisAtPowerLevel(int);
14176    method @NonNull public android.util.Range<java.lang.Integer> getTransmitPowerRange(int);
14177    method public void writeToParcel(@NonNull android.os.Parcel, int);
14178    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ModemActivityInfo> CREATOR;
14179    field public static final int TX_POWER_LEVEL_0 = 0; // 0x0
14180    field public static final int TX_POWER_LEVEL_1 = 1; // 0x1
14181    field public static final int TX_POWER_LEVEL_2 = 2; // 0x2
14182    field public static final int TX_POWER_LEVEL_3 = 3; // 0x3
14183    field public static final int TX_POWER_LEVEL_4 = 4; // 0x4
14184  }
14185
14186  public final class NetworkRegistrationInfo implements android.os.Parcelable {
14187    method @Nullable public android.telephony.DataSpecificRegistrationInfo getDataSpecificInfo();
14188    method public int getNetworkRegistrationState();
14189    method @Deprecated public int getRegistrationState();
14190    method public int getRejectCause();
14191    method public int getRoamingType();
14192    method public boolean isEmergencyEnabled();
14193    method public void writeToParcel(android.os.Parcel, int);
14194    field public static final int REGISTRATION_STATE_DENIED = 3; // 0x3
14195    field public static final int REGISTRATION_STATE_EMERGENCY = 6; // 0x6
14196    field public static final int REGISTRATION_STATE_HOME = 1; // 0x1
14197    field public static final int REGISTRATION_STATE_NOT_REGISTERED_OR_SEARCHING = 0; // 0x0
14198    field public static final int REGISTRATION_STATE_NOT_REGISTERED_SEARCHING = 2; // 0x2
14199    field public static final int REGISTRATION_STATE_ROAMING = 5; // 0x5
14200    field public static final int REGISTRATION_STATE_UNKNOWN = 4; // 0x4
14201  }
14202
14203  public static final class NetworkRegistrationInfo.Builder {
14204    ctor public NetworkRegistrationInfo.Builder();
14205    method @NonNull public android.telephony.NetworkRegistrationInfo build();
14206    method @NonNull public android.telephony.NetworkRegistrationInfo.Builder setAccessNetworkTechnology(int);
14207    method @NonNull public android.telephony.NetworkRegistrationInfo.Builder setAvailableServices(@NonNull java.util.List<java.lang.Integer>);
14208    method @NonNull public android.telephony.NetworkRegistrationInfo.Builder setCellIdentity(@Nullable android.telephony.CellIdentity);
14209    method @NonNull public android.telephony.NetworkRegistrationInfo.Builder setDomain(int);
14210    method @NonNull public android.telephony.NetworkRegistrationInfo.Builder setEmergencyOnly(boolean);
14211    method @NonNull public android.telephony.NetworkRegistrationInfo.Builder setRegisteredPlmn(@Nullable String);
14212    method @NonNull public android.telephony.NetworkRegistrationInfo.Builder setRegistrationState(int);
14213    method @NonNull public android.telephony.NetworkRegistrationInfo.Builder setRejectCause(int);
14214    method @NonNull public android.telephony.NetworkRegistrationInfo.Builder setTransportType(int);
14215  }
14216
14217  public abstract class NetworkService extends android.app.Service {
14218    ctor public NetworkService();
14219    method public android.os.IBinder onBind(android.content.Intent);
14220    method @Nullable public abstract android.telephony.NetworkService.NetworkServiceProvider onCreateNetworkServiceProvider(int);
14221    field public static final String SERVICE_INTERFACE = "android.telephony.NetworkService";
14222  }
14223
14224  public abstract class NetworkService.NetworkServiceProvider implements java.lang.AutoCloseable {
14225    ctor public NetworkService.NetworkServiceProvider(int);
14226    method public abstract void close();
14227    method public final int getSlotIndex();
14228    method public final void notifyNetworkRegistrationInfoChanged();
14229    method public void requestNetworkRegistrationInfo(int, @NonNull android.telephony.NetworkServiceCallback);
14230  }
14231
14232  public class NetworkServiceCallback {
14233    method public void onRequestNetworkRegistrationInfoComplete(int, @Nullable android.telephony.NetworkRegistrationInfo);
14234    field public static final int RESULT_ERROR_BUSY = 3; // 0x3
14235    field public static final int RESULT_ERROR_FAILED = 5; // 0x5
14236    field public static final int RESULT_ERROR_ILLEGAL_STATE = 4; // 0x4
14237    field public static final int RESULT_ERROR_INVALID_ARG = 2; // 0x2
14238    field public static final int RESULT_ERROR_UNSUPPORTED = 1; // 0x1
14239    field public static final int RESULT_SUCCESS = 0; // 0x0
14240  }
14241
14242  public final class NrVopsSupportInfo extends android.telephony.VopsSupportInfo {
14243    ctor public NrVopsSupportInfo(int, int, int);
14244    method public int getEmcSupport();
14245    method public int getEmfSupport();
14246    method public int getVopsSupport();
14247    method public boolean isEmergencyServiceFallbackSupported();
14248    method public boolean isEmergencyServiceSupported();
14249    method public boolean isVopsSupported();
14250    method public void writeToParcel(@NonNull android.os.Parcel, int);
14251    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.NrVopsSupportInfo> CREATOR;
14252    field public static final int NR_STATUS_EMC_5GCN_ONLY = 1; // 0x1
14253    field public static final int NR_STATUS_EMC_EUTRA_5GCN_ONLY = 2; // 0x2
14254    field public static final int NR_STATUS_EMC_NOT_SUPPORTED = 0; // 0x0
14255    field public static final int NR_STATUS_EMC_NR_EUTRA_5GCN = 3; // 0x3
14256    field public static final int NR_STATUS_EMF_5GCN_ONLY = 1; // 0x1
14257    field public static final int NR_STATUS_EMF_EUTRA_5GCN_ONLY = 2; // 0x2
14258    field public static final int NR_STATUS_EMF_NOT_SUPPORTED = 0; // 0x0
14259    field public static final int NR_STATUS_EMF_NR_EUTRA_5GCN = 3; // 0x3
14260    field public static final int NR_STATUS_VOPS_3GPP_SUPPORTED = 1; // 0x1
14261    field public static final int NR_STATUS_VOPS_NON_3GPP_SUPPORTED = 2; // 0x2
14262    field public static final int NR_STATUS_VOPS_NOT_SUPPORTED = 0; // 0x0
14263  }
14264
14265  public interface NumberVerificationCallback {
14266    method public default void onCallReceived(@NonNull String);
14267    method public default void onVerificationFailed(int);
14268    field public static final int REASON_CONCURRENT_REQUESTS = 4; // 0x4
14269    field public static final int REASON_IN_ECBM = 5; // 0x5
14270    field public static final int REASON_IN_EMERGENCY_CALL = 6; // 0x6
14271    field public static final int REASON_NETWORK_NOT_AVAILABLE = 2; // 0x2
14272    field public static final int REASON_TIMED_OUT = 1; // 0x1
14273    field public static final int REASON_TOO_MANY_CALLS = 3; // 0x3
14274    field public static final int REASON_UNSPECIFIED = 0; // 0x0
14275  }
14276
14277  public final class PhoneCapability implements android.os.Parcelable {
14278    method public int describeContents();
14279    method @NonNull public int[] getDeviceNrCapabilities();
14280    method @IntRange(from=1) public int getMaxActiveDataSubscriptions();
14281    method @IntRange(from=1) public int getMaxActiveVoiceSubscriptions();
14282    method public void writeToParcel(@NonNull android.os.Parcel, int);
14283    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.PhoneCapability> CREATOR;
14284    field public static final int DEVICE_NR_CAPABILITY_NSA = 1; // 0x1
14285    field public static final int DEVICE_NR_CAPABILITY_SA = 2; // 0x2
14286  }
14287
14288  public final class PhoneNumberRange implements android.os.Parcelable {
14289    ctor public PhoneNumberRange(@NonNull String, @NonNull String, @NonNull String, @NonNull String);
14290    method public int describeContents();
14291    method public boolean matches(@NonNull String);
14292    method public void writeToParcel(android.os.Parcel, int);
14293    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.PhoneNumberRange> CREATOR;
14294  }
14295
14296  public class PhoneNumberUtils {
14297    method @NonNull public static String getUsernameFromUriNumber(@NonNull String);
14298    method public static boolean isUriNumber(@Nullable String);
14299    method public static boolean isVoiceMailNumber(@NonNull android.content.Context, int, @Nullable String);
14300  }
14301
14302  @Deprecated public class PhoneStateListener {
14303    method @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public void onCallAttributesChanged(@NonNull android.telephony.CallAttributes);
14304    method @Deprecated @RequiresPermission(android.Manifest.permission.READ_ACTIVE_EMERGENCY_SESSION) public void onOutgoingEmergencyCall(@NonNull android.telephony.emergency.EmergencyNumber);
14305    method @Deprecated @RequiresPermission(android.Manifest.permission.READ_ACTIVE_EMERGENCY_SESSION) public void onOutgoingEmergencyCall(@NonNull android.telephony.emergency.EmergencyNumber, int);
14306    method @Deprecated @RequiresPermission(android.Manifest.permission.READ_ACTIVE_EMERGENCY_SESSION) public void onOutgoingEmergencySms(@NonNull android.telephony.emergency.EmergencyNumber);
14307    method @Deprecated public void onOutgoingEmergencySms(@NonNull android.telephony.emergency.EmergencyNumber, int);
14308    method @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public void onPreciseCallStateChanged(@NonNull android.telephony.PreciseCallState);
14309    method @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void onRadioPowerStateChanged(int);
14310    method @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void onSrvccStateChanged(int);
14311    method @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void onVoiceActivationStateChanged(int);
14312    field @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public static final int LISTEN_CALL_ATTRIBUTES_CHANGED = 67108864; // 0x4000000
14313    field @Deprecated @RequiresPermission(android.Manifest.permission.READ_ACTIVE_EMERGENCY_SESSION) public static final int LISTEN_OUTGOING_EMERGENCY_CALL = 268435456; // 0x10000000
14314    field @Deprecated @RequiresPermission(android.Manifest.permission.READ_ACTIVE_EMERGENCY_SESSION) public static final int LISTEN_OUTGOING_EMERGENCY_SMS = 536870912; // 0x20000000
14315    field @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public static final int LISTEN_PRECISE_CALL_STATE = 2048; // 0x800
14316    field @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public static final int LISTEN_RADIO_POWER_STATE_CHANGED = 8388608; // 0x800000
14317    field @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public static final int LISTEN_SRVCC_STATE_CHANGED = 16384; // 0x4000
14318    field @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public static final int LISTEN_VOICE_ACTIVATION_STATE = 131072; // 0x20000
14319  }
14320
14321  public final class PinResult implements android.os.Parcelable {
14322    method public int describeContents();
14323    method public int getAttemptsRemaining();
14324    method public int getResult();
14325    method public void writeToParcel(@NonNull android.os.Parcel, int);
14326    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.PinResult> CREATOR;
14327    field public static final int PIN_RESULT_TYPE_ABORTED = 3; // 0x3
14328    field public static final int PIN_RESULT_TYPE_FAILURE = 2; // 0x2
14329    field public static final int PIN_RESULT_TYPE_INCORRECT = 1; // 0x1
14330    field public static final int PIN_RESULT_TYPE_SUCCESS = 0; // 0x0
14331  }
14332
14333  public final class PreciseCallState implements android.os.Parcelable {
14334    ctor public PreciseCallState(int, int, int, int, int);
14335    method public int describeContents();
14336    method public int getBackgroundCallState();
14337    method public int getForegroundCallState();
14338    method public int getRingingCallState();
14339    method public void writeToParcel(android.os.Parcel, int);
14340    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.PreciseCallState> CREATOR;
14341    field public static final int PRECISE_CALL_STATE_ACTIVE = 1; // 0x1
14342    field public static final int PRECISE_CALL_STATE_ALERTING = 4; // 0x4
14343    field public static final int PRECISE_CALL_STATE_DIALING = 3; // 0x3
14344    field public static final int PRECISE_CALL_STATE_DISCONNECTED = 7; // 0x7
14345    field public static final int PRECISE_CALL_STATE_DISCONNECTING = 8; // 0x8
14346    field public static final int PRECISE_CALL_STATE_HOLDING = 2; // 0x2
14347    field public static final int PRECISE_CALL_STATE_IDLE = 0; // 0x0
14348    field public static final int PRECISE_CALL_STATE_INCOMING = 5; // 0x5
14349    field public static final int PRECISE_CALL_STATE_INCOMING_SETUP = 9; // 0x9
14350    field public static final int PRECISE_CALL_STATE_NOT_VALID = -1; // 0xffffffff
14351    field public static final int PRECISE_CALL_STATE_WAITING = 6; // 0x6
14352  }
14353
14354  public final class PreciseDataConnectionState implements android.os.Parcelable {
14355    method @Deprecated @NonNull public String getDataConnectionApn();
14356    method @Deprecated public int getDataConnectionApnTypeBitMask();
14357    method @Deprecated public int getDataConnectionFailCause();
14358    method @Deprecated public int getDataConnectionState();
14359  }
14360
14361  public final class PreciseDisconnectCause {
14362    field public static final int ACCESS_CLASS_BLOCKED = 260; // 0x104
14363    field public static final int ACCESS_INFORMATION_DISCARDED = 43; // 0x2b
14364    field public static final int ACM_LIMIT_EXCEEDED = 68; // 0x44
14365    field public static final int BEARER_CAPABILITY_NOT_AUTHORIZED = 57; // 0x39
14366    field public static final int BEARER_NOT_AVAIL = 58; // 0x3a
14367    field public static final int BEARER_SERVICE_NOT_IMPLEMENTED = 65; // 0x41
14368    field public static final int BUSY = 17; // 0x11
14369    field public static final int CALL_BARRED = 240; // 0xf0
14370    field public static final int CALL_REJECTED = 21; // 0x15
14371    field public static final int CDMA_ACCESS_BLOCKED = 1009; // 0x3f1
14372    field public static final int CDMA_ACCESS_FAILURE = 1006; // 0x3ee
14373    field public static final int CDMA_DROP = 1001; // 0x3e9
14374    field public static final int CDMA_INTERCEPT = 1002; // 0x3ea
14375    field public static final int CDMA_LOCKED_UNTIL_POWER_CYCLE = 1000; // 0x3e8
14376    field public static final int CDMA_NOT_EMERGENCY = 1008; // 0x3f0
14377    field public static final int CDMA_PREEMPTED = 1007; // 0x3ef
14378    field public static final int CDMA_REORDER = 1003; // 0x3eb
14379    field public static final int CDMA_RETRY_ORDER = 1005; // 0x3ed
14380    field public static final int CDMA_SO_REJECT = 1004; // 0x3ec
14381    field public static final int CHANNEL_NOT_AVAIL = 44; // 0x2c
14382    field public static final int CHANNEL_UNACCEPTABLE = 6; // 0x6
14383    field public static final int CONDITIONAL_IE_ERROR = 100; // 0x64
14384    field public static final int DESTINATION_OUT_OF_ORDER = 27; // 0x1b
14385    field public static final int ERROR_UNSPECIFIED = 65535; // 0xffff
14386    field public static final int FACILITY_REJECTED = 29; // 0x1d
14387    field public static final int FDN_BLOCKED = 241; // 0xf1
14388    field public static final int IMEI_NOT_ACCEPTED = 243; // 0xf3
14389    field public static final int IMSI_UNKNOWN_IN_VLR = 242; // 0xf2
14390    field public static final int INCOMING_CALLS_BARRED_WITHIN_CUG = 55; // 0x37
14391    field public static final int INCOMPATIBLE_DESTINATION = 88; // 0x58
14392    field public static final int INFORMATION_ELEMENT_NON_EXISTENT = 99; // 0x63
14393    field public static final int INTERWORKING_UNSPECIFIED = 127; // 0x7f
14394    field public static final int INVALID_MANDATORY_INFORMATION = 96; // 0x60
14395    field public static final int INVALID_NUMBER_FORMAT = 28; // 0x1c
14396    field public static final int INVALID_TRANSACTION_IDENTIFIER = 81; // 0x51
14397    field public static final int MESSAGE_NOT_COMPATIBLE_WITH_PROTOCOL_STATE = 101; // 0x65
14398    field public static final int MESSAGE_TYPE_NON_IMPLEMENTED = 97; // 0x61
14399    field public static final int MESSAGE_TYPE_NOT_COMPATIBLE_WITH_PROTOCOL_STATE = 98; // 0x62
14400    field public static final int NETWORK_DETACH = 261; // 0x105
14401    field public static final int NETWORK_OUT_OF_ORDER = 38; // 0x26
14402    field public static final int NETWORK_REJECT = 252; // 0xfc
14403    field public static final int NETWORK_RESP_TIMEOUT = 251; // 0xfb
14404    field public static final int NORMAL = 16; // 0x10
14405    field public static final int NORMAL_UNSPECIFIED = 31; // 0x1f
14406    field public static final int NOT_VALID = -1; // 0xffffffff
14407    field public static final int NO_ANSWER_FROM_USER = 19; // 0x13
14408    field public static final int NO_CIRCUIT_AVAIL = 34; // 0x22
14409    field public static final int NO_DISCONNECT_CAUSE_AVAILABLE = 0; // 0x0
14410    field public static final int NO_ROUTE_TO_DESTINATION = 3; // 0x3
14411    field public static final int NO_USER_RESPONDING = 18; // 0x12
14412    field public static final int NO_VALID_SIM = 249; // 0xf9
14413    field public static final int NUMBER_CHANGED = 22; // 0x16
14414    field public static final int OEM_CAUSE_1 = 61441; // 0xf001
14415    field public static final int OEM_CAUSE_10 = 61450; // 0xf00a
14416    field public static final int OEM_CAUSE_11 = 61451; // 0xf00b
14417    field public static final int OEM_CAUSE_12 = 61452; // 0xf00c
14418    field public static final int OEM_CAUSE_13 = 61453; // 0xf00d
14419    field public static final int OEM_CAUSE_14 = 61454; // 0xf00e
14420    field public static final int OEM_CAUSE_15 = 61455; // 0xf00f
14421    field public static final int OEM_CAUSE_2 = 61442; // 0xf002
14422    field public static final int OEM_CAUSE_3 = 61443; // 0xf003
14423    field public static final int OEM_CAUSE_4 = 61444; // 0xf004
14424    field public static final int OEM_CAUSE_5 = 61445; // 0xf005
14425    field public static final int OEM_CAUSE_6 = 61446; // 0xf006
14426    field public static final int OEM_CAUSE_7 = 61447; // 0xf007
14427    field public static final int OEM_CAUSE_8 = 61448; // 0xf008
14428    field public static final int OEM_CAUSE_9 = 61449; // 0xf009
14429    field public static final int ONLY_DIGITAL_INFORMATION_BEARER_AVAILABLE = 70; // 0x46
14430    field public static final int OPERATOR_DETERMINED_BARRING = 8; // 0x8
14431    field public static final int OUT_OF_SRV = 248; // 0xf8
14432    field public static final int PREEMPTION = 25; // 0x19
14433    field public static final int PROTOCOL_ERROR_UNSPECIFIED = 111; // 0x6f
14434    field public static final int QOS_NOT_AVAIL = 49; // 0x31
14435    field public static final int RADIO_ACCESS_FAILURE = 253; // 0xfd
14436    field public static final int RADIO_INTERNAL_ERROR = 250; // 0xfa
14437    field public static final int RADIO_LINK_FAILURE = 254; // 0xfe
14438    field public static final int RADIO_LINK_LOST = 255; // 0xff
14439    field public static final int RADIO_OFF = 247; // 0xf7
14440    field public static final int RADIO_RELEASE_ABNORMAL = 259; // 0x103
14441    field public static final int RADIO_RELEASE_NORMAL = 258; // 0x102
14442    field public static final int RADIO_SETUP_FAILURE = 257; // 0x101
14443    field public static final int RADIO_UPLINK_FAILURE = 256; // 0x100
14444    field public static final int RECOVERY_ON_TIMER_EXPIRED = 102; // 0x66
14445    field public static final int REQUESTED_FACILITY_NOT_IMPLEMENTED = 69; // 0x45
14446    field public static final int REQUESTED_FACILITY_NOT_SUBSCRIBED = 50; // 0x32
14447    field public static final int RESOURCES_UNAVAILABLE_OR_UNSPECIFIED = 47; // 0x2f
14448    field public static final int SEMANTICALLY_INCORRECT_MESSAGE = 95; // 0x5f
14449    field public static final int SERVICE_OPTION_NOT_AVAILABLE = 63; // 0x3f
14450    field public static final int SERVICE_OR_OPTION_NOT_IMPLEMENTED = 79; // 0x4f
14451    field public static final int STATUS_ENQUIRY = 30; // 0x1e
14452    field public static final int SWITCHING_CONGESTION = 42; // 0x2a
14453    field public static final int TEMPORARY_FAILURE = 41; // 0x29
14454    field public static final int UNOBTAINABLE_NUMBER = 1; // 0x1
14455    field public static final int USER_NOT_MEMBER_OF_CUG = 87; // 0x57
14456  }
14457
14458  public class ServiceState implements android.os.Parcelable {
14459    method @Nullable public android.telephony.NetworkRegistrationInfo getNetworkRegistrationInfo(int, int);
14460    method @NonNull public java.util.List<android.telephony.NetworkRegistrationInfo> getNetworkRegistrationInfoListForDomain(int);
14461    method @NonNull public java.util.List<android.telephony.NetworkRegistrationInfo> getNetworkRegistrationInfoListForTransportType(int);
14462    field public static final int ROAMING_TYPE_DOMESTIC = 2; // 0x2
14463    field public static final int ROAMING_TYPE_INTERNATIONAL = 3; // 0x3
14464    field public static final int ROAMING_TYPE_NOT_ROAMING = 0; // 0x0
14465    field public static final int ROAMING_TYPE_UNKNOWN = 1; // 0x1
14466  }
14467
14468  public final class SignalStrengthUpdateRequest implements android.os.Parcelable {
14469    method public boolean isSystemThresholdReportingRequestedWhileIdle();
14470  }
14471
14472  public static final class SignalStrengthUpdateRequest.Builder {
14473    method @NonNull @RequiresPermission("android.permission.LISTEN_ALWAYS_REPORTED_SIGNAL_STRENGTH") public android.telephony.SignalStrengthUpdateRequest.Builder setSystemThresholdReportingRequestedWhileIdle(boolean);
14474  }
14475
14476  public final class SmsCbCmasInfo implements android.os.Parcelable {
14477    ctor public SmsCbCmasInfo(int, int, int, int, int, int);
14478    method public int describeContents();
14479    method public int getCategory();
14480    method public int getCertainty();
14481    method public int getMessageClass();
14482    method public int getResponseType();
14483    method public int getSeverity();
14484    method public int getUrgency();
14485    method public void writeToParcel(android.os.Parcel, int);
14486    field public static final int CMAS_CATEGORY_CBRNE = 10; // 0xa
14487    field public static final int CMAS_CATEGORY_ENV = 7; // 0x7
14488    field public static final int CMAS_CATEGORY_FIRE = 5; // 0x5
14489    field public static final int CMAS_CATEGORY_GEO = 0; // 0x0
14490    field public static final int CMAS_CATEGORY_HEALTH = 6; // 0x6
14491    field public static final int CMAS_CATEGORY_INFRA = 9; // 0x9
14492    field public static final int CMAS_CATEGORY_MET = 1; // 0x1
14493    field public static final int CMAS_CATEGORY_OTHER = 11; // 0xb
14494    field public static final int CMAS_CATEGORY_RESCUE = 4; // 0x4
14495    field public static final int CMAS_CATEGORY_SAFETY = 2; // 0x2
14496    field public static final int CMAS_CATEGORY_SECURITY = 3; // 0x3
14497    field public static final int CMAS_CATEGORY_TRANSPORT = 8; // 0x8
14498    field public static final int CMAS_CATEGORY_UNKNOWN = -1; // 0xffffffff
14499    field public static final int CMAS_CERTAINTY_LIKELY = 1; // 0x1
14500    field public static final int CMAS_CERTAINTY_OBSERVED = 0; // 0x0
14501    field public static final int CMAS_CERTAINTY_UNKNOWN = -1; // 0xffffffff
14502    field public static final int CMAS_CLASS_CHILD_ABDUCTION_EMERGENCY = 3; // 0x3
14503    field public static final int CMAS_CLASS_CMAS_EXERCISE = 5; // 0x5
14504    field public static final int CMAS_CLASS_EXTREME_THREAT = 1; // 0x1
14505    field public static final int CMAS_CLASS_OPERATOR_DEFINED_USE = 6; // 0x6
14506    field public static final int CMAS_CLASS_PRESIDENTIAL_LEVEL_ALERT = 0; // 0x0
14507    field public static final int CMAS_CLASS_REQUIRED_MONTHLY_TEST = 4; // 0x4
14508    field public static final int CMAS_CLASS_SEVERE_THREAT = 2; // 0x2
14509    field public static final int CMAS_CLASS_UNKNOWN = -1; // 0xffffffff
14510    field public static final int CMAS_RESPONSE_TYPE_ASSESS = 6; // 0x6
14511    field public static final int CMAS_RESPONSE_TYPE_AVOID = 5; // 0x5
14512    field public static final int CMAS_RESPONSE_TYPE_EVACUATE = 1; // 0x1
14513    field public static final int CMAS_RESPONSE_TYPE_EXECUTE = 3; // 0x3
14514    field public static final int CMAS_RESPONSE_TYPE_MONITOR = 4; // 0x4
14515    field public static final int CMAS_RESPONSE_TYPE_NONE = 7; // 0x7
14516    field public static final int CMAS_RESPONSE_TYPE_PREPARE = 2; // 0x2
14517    field public static final int CMAS_RESPONSE_TYPE_SHELTER = 0; // 0x0
14518    field public static final int CMAS_RESPONSE_TYPE_UNKNOWN = -1; // 0xffffffff
14519    field public static final int CMAS_SEVERITY_EXTREME = 0; // 0x0
14520    field public static final int CMAS_SEVERITY_SEVERE = 1; // 0x1
14521    field public static final int CMAS_SEVERITY_UNKNOWN = -1; // 0xffffffff
14522    field public static final int CMAS_URGENCY_EXPECTED = 1; // 0x1
14523    field public static final int CMAS_URGENCY_IMMEDIATE = 0; // 0x0
14524    field public static final int CMAS_URGENCY_UNKNOWN = -1; // 0xffffffff
14525    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.SmsCbCmasInfo> CREATOR;
14526  }
14527
14528  public final class SmsCbEtwsInfo implements android.os.Parcelable {
14529    ctor public SmsCbEtwsInfo(int, boolean, boolean, boolean, @Nullable byte[]);
14530    method public int describeContents();
14531    method @Nullable public byte[] getPrimaryNotificationSignature();
14532    method public long getPrimaryNotificationTimestamp();
14533    method public int getWarningType();
14534    method public boolean isEmergencyUserAlert();
14535    method public boolean isPopupAlert();
14536    method public boolean isPrimary();
14537    method public void writeToParcel(android.os.Parcel, int);
14538    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.SmsCbEtwsInfo> CREATOR;
14539    field public static final int ETWS_WARNING_TYPE_EARTHQUAKE = 0; // 0x0
14540    field public static final int ETWS_WARNING_TYPE_EARTHQUAKE_AND_TSUNAMI = 2; // 0x2
14541    field public static final int ETWS_WARNING_TYPE_OTHER_EMERGENCY = 4; // 0x4
14542    field public static final int ETWS_WARNING_TYPE_TEST_MESSAGE = 3; // 0x3
14543    field public static final int ETWS_WARNING_TYPE_TSUNAMI = 1; // 0x1
14544    field public static final int ETWS_WARNING_TYPE_UNKNOWN = -1; // 0xffffffff
14545  }
14546
14547  public final class SmsCbLocation implements android.os.Parcelable {
14548    ctor public SmsCbLocation(@NonNull String, int, int);
14549    method public int describeContents();
14550    method public int getCid();
14551    method public int getLac();
14552    method @NonNull public String getPlmn();
14553    method public boolean isInLocationArea(@NonNull android.telephony.SmsCbLocation);
14554    method public boolean isInLocationArea(@Nullable String, int, int);
14555    method public void writeToParcel(android.os.Parcel, int);
14556    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.SmsCbLocation> CREATOR;
14557  }
14558
14559  public final class SmsCbMessage implements android.os.Parcelable {
14560    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);
14561    method @NonNull public static android.telephony.SmsCbMessage createFromCursor(@NonNull android.database.Cursor);
14562    method public int describeContents();
14563    method @Nullable public android.telephony.SmsCbCmasInfo getCmasWarningInfo();
14564    method @NonNull public android.content.ContentValues getContentValues();
14565    method public int getDataCodingScheme();
14566    method @Nullable public android.telephony.SmsCbEtwsInfo getEtwsWarningInfo();
14567    method public int getGeographicalScope();
14568    method @NonNull public java.util.List<android.telephony.CbGeoUtils.Geometry> getGeometries();
14569    method @Nullable public String getLanguageCode();
14570    method @NonNull public android.telephony.SmsCbLocation getLocation();
14571    method public int getMaximumWaitingDuration();
14572    method @Nullable public String getMessageBody();
14573    method public int getMessageFormat();
14574    method public int getMessagePriority();
14575    method public long getReceivedTime();
14576    method public int getSerialNumber();
14577    method public int getServiceCategory();
14578    method public int getSlotIndex();
14579    method public int getSubscriptionId();
14580    method public boolean isCmasMessage();
14581    method public boolean isEmergencyMessage();
14582    method public boolean isEtwsMessage();
14583    method public boolean needGeoFencingCheck();
14584    method public void writeToParcel(android.os.Parcel, int);
14585    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.SmsCbMessage> CREATOR;
14586    field public static final int GEOGRAPHICAL_SCOPE_CELL_WIDE = 3; // 0x3
14587    field public static final int GEOGRAPHICAL_SCOPE_CELL_WIDE_IMMEDIATE = 0; // 0x0
14588    field public static final int GEOGRAPHICAL_SCOPE_LOCATION_AREA_WIDE = 2; // 0x2
14589    field public static final int GEOGRAPHICAL_SCOPE_PLMN_WIDE = 1; // 0x1
14590    field public static final int MAXIMUM_WAIT_TIME_NOT_SET = 255; // 0xff
14591    field public static final int MESSAGE_FORMAT_3GPP = 1; // 0x1
14592    field public static final int MESSAGE_FORMAT_3GPP2 = 2; // 0x2
14593    field public static final int MESSAGE_PRIORITY_EMERGENCY = 3; // 0x3
14594    field public static final int MESSAGE_PRIORITY_INTERACTIVE = 1; // 0x1
14595    field public static final int MESSAGE_PRIORITY_NORMAL = 0; // 0x0
14596    field public static final int MESSAGE_PRIORITY_URGENT = 2; // 0x2
14597  }
14598
14599  public final class SmsManager {
14600    method @Deprecated public boolean disableCellBroadcastRange(int, int, int);
14601    method @Deprecated public boolean enableCellBroadcastRange(int, int, int);
14602    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getPremiumSmsConsent(@NonNull String);
14603    method @NonNull @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public android.net.Uri getSmscIdentity();
14604    method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_CELL_BROADCASTS) public void resetAllCellBroadcastRanges();
14605    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>);
14606    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setPremiumSmsConsent(@NonNull String, int);
14607    field public static final int PREMIUM_SMS_CONSENT_ALWAYS_ALLOW = 3; // 0x3
14608    field public static final int PREMIUM_SMS_CONSENT_ASK_USER = 1; // 0x1
14609    field public static final int PREMIUM_SMS_CONSENT_NEVER_ALLOW = 2; // 0x2
14610    field public static final int PREMIUM_SMS_CONSENT_UNKNOWN = 0; // 0x0
14611  }
14612
14613  public class SmsMessage {
14614    method @Nullable public static android.telephony.SmsMessage createFromNativeSmsSubmitPdu(@NonNull byte[], boolean);
14615    method @Nullable public static android.telephony.SmsMessage.SubmitPdu getSmsPdu(int, int, @Nullable String, @NonNull String, @NonNull String, long);
14616    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);
14617  }
14618
14619  public class SubscriptionInfo implements android.os.Parcelable {
14620    method public boolean areUiccApplicationsEnabled();
14621    method @Nullable public java.util.List<android.telephony.UiccAccessRule> getAccessRules();
14622    method public int getProfileClass();
14623    method public boolean isGroupDisabled();
14624  }
14625
14626  public class SubscriptionManager {
14627    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean canDisablePhysicalSubscription();
14628    method public boolean canManageSubscription(@NonNull android.telephony.SubscriptionInfo, @NonNull String);
14629    method @NonNull @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int[] getActiveSubscriptionIdList();
14630    method @Nullable @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public android.telephony.SubscriptionInfo getActiveSubscriptionInfoForIcc(@NonNull String);
14631    method @NonNull @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public byte[] getAllSimSpecificSettingsForBackup();
14632    method public java.util.List<android.telephony.SubscriptionInfo> getAvailableSubscriptionInfoList();
14633    method @NonNull @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int[] getCompleteActiveSubscriptionIdList();
14634    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getEnabledSubscriptionId(int);
14635    method @NonNull public static android.content.res.Resources getResourcesForSubId(@NonNull android.content.Context, int);
14636    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isSubscriptionEnabled(int);
14637    method public void requestEmbeddedSubscriptionInfoListRefresh();
14638    method public void requestEmbeddedSubscriptionInfoListRefresh(int);
14639    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void restoreAllSimSpecificSettingsFromBackup(@NonNull byte[]);
14640    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setDefaultDataSubId(int);
14641    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setDefaultSmsSubId(int);
14642    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setDefaultVoiceSubscriptionId(int);
14643    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>);
14644    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean setSubscriptionEnabled(int, boolean);
14645    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setUiccApplicationsEnabled(int, boolean);
14646    field @RequiresPermission(android.Manifest.permission.MANAGE_SUBSCRIPTION_PLANS) public static final String ACTION_SUBSCRIPTION_PLANS_CHANGED = "android.telephony.action.SUBSCRIPTION_PLANS_CHANGED";
14647    field @NonNull public static final android.net.Uri ADVANCED_CALLING_ENABLED_CONTENT_URI;
14648    field @NonNull public static final android.net.Uri CROSS_SIM_ENABLED_CONTENT_URI;
14649    field @Deprecated public static final int PROFILE_CLASS_DEFAULT = -1; // 0xffffffff
14650    field public static final int PROFILE_CLASS_OPERATIONAL = 2; // 0x2
14651    field public static final int PROFILE_CLASS_PROVISIONING = 1; // 0x1
14652    field public static final int PROFILE_CLASS_TESTING = 0; // 0x0
14653    field public static final int PROFILE_CLASS_UNSET = -1; // 0xffffffff
14654    field @NonNull public static final android.net.Uri VT_ENABLED_CONTENT_URI;
14655    field @NonNull public static final android.net.Uri WFC_ENABLED_CONTENT_URI;
14656    field @NonNull public static final android.net.Uri WFC_MODE_CONTENT_URI;
14657    field @NonNull public static final android.net.Uri WFC_ROAMING_ENABLED_CONTENT_URI;
14658    field @NonNull public static final android.net.Uri WFC_ROAMING_MODE_CONTENT_URI;
14659  }
14660
14661  public static class SubscriptionPlan.Builder {
14662    method @Deprecated public static android.telephony.SubscriptionPlan.Builder createRecurringDaily(java.time.ZonedDateTime);
14663    method @Deprecated public static android.telephony.SubscriptionPlan.Builder createRecurringMonthly(java.time.ZonedDateTime);
14664    method @Deprecated public static android.telephony.SubscriptionPlan.Builder createRecurringWeekly(java.time.ZonedDateTime);
14665  }
14666
14667  public class TelephonyCallback {
14668    field @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public static final int EVENT_ACTIVE_DATA_SUBSCRIPTION_ID_CHANGED = 23; // 0x17
14669    field @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public static final int EVENT_ALLOWED_NETWORK_TYPE_LIST_CHANGED = 35; // 0x23
14670    field public static final int EVENT_ALWAYS_REPORTED_SIGNAL_STRENGTH_CHANGED = 10; // 0xa
14671    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
14672    field @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public static final int EVENT_CALL_ATTRIBUTES_CHANGED = 27; // 0x1b
14673    field @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public static final int EVENT_CALL_DISCONNECT_CAUSE_CHANGED = 26; // 0x1a
14674    field @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public static final int EVENT_CALL_FORWARDING_INDICATOR_CHANGED = 4; // 0x4
14675    field public static final int EVENT_CALL_STATE_CHANGED = 6; // 0x6
14676    field public static final int EVENT_CARRIER_NETWORK_CHANGED = 17; // 0x11
14677    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
14678    field @RequiresPermission(android.Manifest.permission.ACCESS_FINE_LOCATION) public static final int EVENT_CELL_LOCATION_CHANGED = 5; // 0x5
14679    field public static final int EVENT_DATA_ACTIVATION_STATE_CHANGED = 19; // 0x13
14680    field public static final int EVENT_DATA_ACTIVITY_CHANGED = 8; // 0x8
14681    field @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public static final int EVENT_DATA_CONNECTION_REAL_TIME_INFO_CHANGED = 14; // 0xe
14682    field public static final int EVENT_DATA_CONNECTION_STATE_CHANGED = 7; // 0x7
14683    field @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public static final int EVENT_DATA_ENABLED_CHANGED = 34; // 0x22
14684    field public static final int EVENT_DISPLAY_INFO_CHANGED = 21; // 0x15
14685    field @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public static final int EVENT_EMERGENCY_NUMBER_LIST_CHANGED = 25; // 0x19
14686    field @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public static final int EVENT_IMS_CALL_DISCONNECT_CAUSE_CHANGED = 28; // 0x1c
14687    field @RequiresPermission(android.Manifest.permission.READ_CALL_LOG) public static final int EVENT_LEGACY_CALL_STATE_CHANGED = 36; // 0x24
14688    field @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public static final int EVENT_LINK_CAPACITY_ESTIMATE_CHANGED = 37; // 0x25
14689    field @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public static final int EVENT_MEDIA_QUALITY_STATUS_CHANGED = 39; // 0x27
14690    field @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public static final int EVENT_MESSAGE_WAITING_INDICATOR_CHANGED = 3; // 0x3
14691    field @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public static final int EVENT_OEM_HOOK_RAW = 15; // 0xf
14692    field @RequiresPermission(android.Manifest.permission.READ_ACTIVE_EMERGENCY_SESSION) public static final int EVENT_OUTGOING_EMERGENCY_CALL = 29; // 0x1d
14693    field @RequiresPermission(android.Manifest.permission.READ_ACTIVE_EMERGENCY_SESSION) public static final int EVENT_OUTGOING_EMERGENCY_SMS = 30; // 0x1e
14694    field public static final int EVENT_PHONE_CAPABILITY_CHANGED = 22; // 0x16
14695    field @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public static final int EVENT_PHYSICAL_CHANNEL_CONFIG_CHANGED = 33; // 0x21
14696    field @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public static final int EVENT_PRECISE_CALL_STATE_CHANGED = 12; // 0xc
14697    field @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public static final int EVENT_PRECISE_DATA_CONNECTION_STATE_CHANGED = 13; // 0xd
14698    field @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public static final int EVENT_RADIO_POWER_STATE_CHANGED = 24; // 0x18
14699    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
14700    field public static final int EVENT_SERVICE_STATE_CHANGED = 1; // 0x1
14701    field public static final int EVENT_SIGNAL_STRENGTHS_CHANGED = 9; // 0x9
14702    field public static final int EVENT_SIGNAL_STRENGTH_CHANGED = 2; // 0x2
14703    field @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public static final int EVENT_SRVCC_STATE_CHANGED = 16; // 0x10
14704    field public static final int EVENT_USER_MOBILE_DATA_STATE_CHANGED = 20; // 0x14
14705    field @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public static final int EVENT_VOICE_ACTIVATION_STATE_CHANGED = 18; // 0x12
14706  }
14707
14708  public static interface TelephonyCallback.AllowedNetworkTypesListener {
14709    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void onAllowedNetworkTypesChanged(int, long);
14710  }
14711
14712  public static interface TelephonyCallback.CallAttributesListener {
14713    method @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public default void onCallAttributesChanged(@NonNull android.telephony.CallAttributes);
14714    method @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public default void onCallStatesChanged(@NonNull java.util.List<android.telephony.CallState>);
14715  }
14716
14717  public static interface TelephonyCallback.DataEnabledListener {
14718    method @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public void onDataEnabledChanged(boolean, int);
14719  }
14720
14721  public static interface TelephonyCallback.LinkCapacityEstimateChangedListener {
14722    method @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public void onLinkCapacityEstimateChanged(@NonNull java.util.List<android.telephony.LinkCapacityEstimate>);
14723  }
14724
14725  public static interface TelephonyCallback.MediaQualityStatusChangedListener {
14726    method @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public void onMediaQualityStatusChanged(@NonNull android.telephony.ims.MediaQualityStatus);
14727  }
14728
14729  public static interface TelephonyCallback.OutgoingEmergencyCallListener {
14730    method @RequiresPermission(android.Manifest.permission.READ_ACTIVE_EMERGENCY_SESSION) public void onOutgoingEmergencyCall(@NonNull android.telephony.emergency.EmergencyNumber, int);
14731  }
14732
14733  public static interface TelephonyCallback.OutgoingEmergencySmsListener {
14734    method @RequiresPermission(android.Manifest.permission.READ_ACTIVE_EMERGENCY_SESSION) public void onOutgoingEmergencySms(@NonNull android.telephony.emergency.EmergencyNumber, int);
14735  }
14736
14737  public static interface TelephonyCallback.PhoneCapabilityListener {
14738    method public void onPhoneCapabilityChanged(@NonNull android.telephony.PhoneCapability);
14739  }
14740
14741  public static interface TelephonyCallback.PreciseCallStateListener {
14742    method @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public void onPreciseCallStateChanged(@NonNull android.telephony.PreciseCallState);
14743  }
14744
14745  public static interface TelephonyCallback.RadioPowerStateListener {
14746    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void onRadioPowerStateChanged(int);
14747  }
14748
14749  public static interface TelephonyCallback.SrvccStateListener {
14750    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void onSrvccStateChanged(int);
14751  }
14752
14753  public static interface TelephonyCallback.VoiceActivationStateListener {
14754    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void onVoiceActivationStateChanged(int);
14755  }
14756
14757  public final class TelephonyHistogram implements android.os.Parcelable {
14758    ctor public TelephonyHistogram(int, int, int);
14759    ctor public TelephonyHistogram(android.telephony.TelephonyHistogram);
14760    ctor public TelephonyHistogram(android.os.Parcel);
14761    method public void addTimeTaken(int);
14762    method public int describeContents();
14763    method public int getAverageTime();
14764    method public int getBucketCount();
14765    method public int[] getBucketCounters();
14766    method public int[] getBucketEndPoints();
14767    method public int getCategory();
14768    method public int getId();
14769    method public int getMaxTime();
14770    method public int getMinTime();
14771    method public int getSampleCount();
14772    method public void writeToParcel(android.os.Parcel, int);
14773    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.TelephonyHistogram> CREATOR;
14774    field public static final int TELEPHONY_CATEGORY_RIL = 1; // 0x1
14775  }
14776
14777  public class TelephonyManager {
14778    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);
14779    method @Deprecated @RequiresPermission(android.Manifest.permission.CALL_PHONE) public void call(String, String);
14780    method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public android.telephony.PinResult changeIccLockPin(@NonNull String, @NonNull String);
14781    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int checkCarrierPrivilegesForPackage(String);
14782    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int checkCarrierPrivilegesForPackageAnyPhone(String);
14783    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void clearRadioPowerOffForReason(int);
14784    method public void dial(String);
14785    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean disableDataConnectivity();
14786    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean enableDataConnectivity();
14787    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean enableModemForSlot(int, boolean);
14788    method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void enableVideoCalling(boolean);
14789    method @Nullable @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public String getAidForAppType(int);
14790    method @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public java.util.List<android.service.carrier.CarrierIdentifier> getAllowedCarriers(int);
14791    method @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public long getAllowedNetworkTypes();
14792    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public long getAllowedNetworkTypesBitmask();
14793    method @Nullable @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS) public android.content.ComponentName getAndUpdateDefaultRespondViaMessageApplication();
14794    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void getCallForwarding(int, @NonNull java.util.concurrent.Executor, @NonNull android.telephony.TelephonyManager.CallForwardingInfoCallback);
14795    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>);
14796    method @Nullable @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public android.telephony.ImsiEncryptionInfo getCarrierInfoForImsiEncryption(int);
14797    method public java.util.List<java.lang.String> getCarrierPackageNamesForIntent(android.content.Intent);
14798    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public java.util.List<java.lang.String> getCarrierPackageNamesForIntentAndPhone(android.content.Intent, int);
14799    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getCarrierPrivilegeStatus(int);
14800    method @NonNull @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public java.util.List<java.lang.String> getCarrierPrivilegedPackagesForAllActiveSubscriptions();
14801    method @Nullable @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public android.telephony.CarrierRestrictionRules getCarrierRestrictionRules();
14802    method @Nullable @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public String getCarrierServicePackageName();
14803    method @Nullable @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public String getCarrierServicePackageNameForLogicalSlot(int);
14804    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getCdmaEnhancedRoamingIndicatorDisplayNumber();
14805    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public String getCdmaMdn();
14806    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public String getCdmaMdn(int);
14807    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public String getCdmaMin();
14808    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public String getCdmaMin(int);
14809    method public String getCdmaPrlVersion();
14810    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getCdmaRoamingMode();
14811    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getCdmaSubscriptionMode();
14812    method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_CELL_BROADCASTS) public java.util.List<android.telephony.CellBroadcastIdRange> getCellBroadcastIdRanges();
14813    method public int getCurrentPhoneType();
14814    method public int getCurrentPhoneType(int);
14815    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getDataActivationState();
14816    method @Deprecated public boolean getDataEnabled();
14817    method @Deprecated public boolean getDataEnabled(int);
14818    method @Nullable @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS) public android.content.ComponentName getDefaultRespondViaMessageApplication();
14819    method @Nullable @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public String getDeviceSoftwareVersion(int);
14820    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean getEmergencyCallbackMode();
14821    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getEmergencyNumberDbVersion();
14822    method @Nullable @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public String getIsimDomain();
14823    method @Nullable @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public String getIsimIst();
14824    method @Deprecated @NonNull @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public java.util.Map<java.lang.Integer,java.lang.Integer> getLogicalToPhysicalSlotMapping();
14825    method public int getMaxNumberOfSimultaneouslyActiveSims();
14826    method public static long getMaxNumberVerificationTimeoutMillis();
14827    method @NonNull @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public String[] getMergedImsisFromGroup();
14828    method @NonNull @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public android.telephony.PhoneCapability getPhoneCapability();
14829    method @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public long getPreferredNetworkTypeBitmask();
14830    method @NonNull @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public java.util.Set<java.lang.Integer> getRadioPowerOffReasons();
14831    method @RequiresPermission(anyOf={android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE, android.Manifest.permission.READ_PHONE_STATE}) public int getRadioPowerState();
14832    method public int getSimApplicationState();
14833    method @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getSimApplicationState(int);
14834    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getSimApplicationState(int, int);
14835    method public int getSimCardState();
14836    method @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getSimCardState(int);
14837    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getSimCardState(int, int);
14838    method @Nullable @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public java.util.Locale getSimLocale();
14839    method @NonNull @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public java.util.Collection<android.telephony.UiccSlotMapping> getSimSlotMapping();
14840    method @NonNull @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public java.util.List<android.telephony.RadioAccessSpecifier> getSystemSelectionChannels();
14841    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public java.util.List<android.telephony.TelephonyHistogram> getTelephonyHistograms();
14842    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public android.telephony.UiccSlotInfo[] getUiccSlotsInfo();
14843    method @Nullable public android.os.Bundle getVisualVoicemailSettings();
14844    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getVoiceActivationState();
14845    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean handlePinMmi(String);
14846    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean handlePinMmiForSubscriber(int, String);
14847    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void iccCloseLogicalChannelByPort(int, int, int);
14848    method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean iccCloseLogicalChannelBySlot(int, int);
14849    method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public android.telephony.IccOpenLogicalChannelResponse iccOpenLogicalChannelByPort(int, int, @Nullable String, int);
14850    method @Deprecated @Nullable @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public android.telephony.IccOpenLogicalChannelResponse iccOpenLogicalChannelBySlot(int, @Nullable String, int);
14851    method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public String iccTransmitApduBasicChannelByPort(int, int, int, int, int, int, int, @Nullable String);
14852    method @Deprecated @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public String iccTransmitApduBasicChannelBySlot(int, int, int, int, int, int, @Nullable String);
14853    method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public String iccTransmitApduLogicalChannelByPort(int, int, int, int, int, int, int, int, @Nullable String);
14854    method @Deprecated @Nullable @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public String iccTransmitApduLogicalChannelBySlot(int, int, int, int, int, int, int, @Nullable String);
14855    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isAnyRadioPoweredOn();
14856    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isApnMetered(int);
14857    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isApplicationOnUicc(int);
14858    method public boolean isDataConnectivityPossible();
14859    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isDataEnabledForApn(int);
14860    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isEmergencyAssistanceEnabled();
14861    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) @WorkerThread public boolean isIccLockEnabled();
14862    method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE, android.Manifest.permission.READ_PHONE_STATE}) public boolean isIdle();
14863    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isInEmergencySmsMode();
14864    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isLteCdmaEvdoGsmWcdmaEnabled();
14865    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isMobileDataPolicyEnabled(int);
14866    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isNrDualConnectivityEnabled();
14867    method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE, android.Manifest.permission.READ_PHONE_STATE}) public boolean isOffhook();
14868    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isOpportunisticNetworkEnabled();
14869    method @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isPotentialEmergencyNumber(@NonNull String);
14870    method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE, android.Manifest.permission.READ_PHONE_STATE}) public boolean isRadioOn();
14871    method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE, android.Manifest.permission.READ_PHONE_STATE}) public boolean isRinging();
14872    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean isTetheringApnRequired();
14873    method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE, android.Manifest.permission.READ_PHONE_STATE}) public boolean isVideoCallingEnabled();
14874    method @Deprecated @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public boolean isVisualVoicemailEnabled(android.telecom.PhoneAccountHandle);
14875    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean matchesCurrentSimOperator(@NonNull String, int, @Nullable String);
14876    method public boolean needsOtaServiceProvisioning();
14877    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void notifyOtaEmergencyNumberDbInstalled();
14878    method @RequiresPermission(android.Manifest.permission.REBOOT) public int prepareForUnattendedReboot();
14879    method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean rebootRadio();
14880    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void registerCarrierPrivilegesCallback(int, @NonNull java.util.concurrent.Executor, @NonNull android.telephony.TelephonyManager.CarrierPrivilegesCallback);
14881    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void reportDefaultNetworkStatus(boolean);
14882    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);
14883    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>);
14884    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);
14885    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void requestRadioPowerOffForReason(int);
14886    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void resetAllCarrierActions();
14887    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void resetCarrierKeysForImsiEncryption();
14888    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) @WorkerThread public void resetIms(int);
14889    method @RequiresPermission(android.Manifest.permission.READ_ACTIVE_EMERGENCY_SESSION) public void resetOtaEmergencyNumberDbFilePath();
14890    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean resetRadioConfig();
14891    method @RequiresPermission(android.Manifest.permission.CONNECTIVITY_INTERNAL) public void resetSettings();
14892    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public int sendThermalMitigationRequest(@NonNull android.telephony.ThermalMitigationRequest);
14893    method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public int setAllowedCarriers(int, java.util.List<android.service.carrier.CarrierIdentifier>);
14894    method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean setAllowedNetworkTypes(long);
14895    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>);
14896    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>);
14897    method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setCarrierDataEnabled(boolean);
14898    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public int setCarrierRestrictionRules(@NonNull android.telephony.CarrierRestrictionRules);
14899    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setCdmaRoamingMode(int);
14900    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setCdmaSubscriptionMode(int);
14901    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>);
14902    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setDataActivationState(int);
14903    method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setDataEnabled(int, boolean);
14904    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setDataRoamingEnabled(boolean);
14905    method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public android.telephony.PinResult setIccLockEnabled(boolean, @NonNull String);
14906    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setMobileDataPolicyEnabled(int, boolean);
14907    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setMultiSimCarrierRestriction(boolean);
14908    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public int setNrDualConnectivityState(int);
14909    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean setOpportunisticNetworkState(boolean);
14910    method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean setPreferredNetworkTypeBitmask(long);
14911    method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean setRadio(boolean);
14912    method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setRadioEnabled(boolean);
14913    method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean setRadioPower(boolean);
14914    method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setSimPowerState(int);
14915    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>);
14916    method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setSimPowerStateForSlot(int, int);
14917    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>);
14918    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setSimSlotMapping(@NonNull java.util.Collection<android.telephony.UiccSlotMapping>);
14919    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>);
14920    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setSystemSelectionChannels(@NonNull java.util.List<android.telephony.RadioAccessSpecifier>);
14921    method @Deprecated public void setVisualVoicemailEnabled(android.telecom.PhoneAccountHandle, boolean);
14922    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setVoiceActivationState(int);
14923    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void shutdownAllRadios();
14924    method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public android.telephony.PinResult supplyIccLockPin(@NonNull String);
14925    method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public android.telephony.PinResult supplyIccLockPuk(@NonNull String, @NonNull String);
14926    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean supplyPin(String);
14927    method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public int[] supplyPinReportResult(String);
14928    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean supplyPuk(String, String);
14929    method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public int[] supplyPukReportResult(String, String);
14930    method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean switchSlots(int[]);
14931    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void toggleRadioOnOff();
14932    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void unregisterCarrierPrivilegesCallback(@NonNull android.telephony.TelephonyManager.CarrierPrivilegesCallback);
14933    method @RequiresPermission(android.Manifest.permission.READ_ACTIVE_EMERGENCY_SESSION) public void updateOtaEmergencyNumberDbFilePath(@NonNull android.os.ParcelFileDescriptor);
14934    method public void updateServiceLocation();
14935    field @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public static final String ACTION_ANOMALY_REPORTED = "android.telephony.action.ANOMALY_REPORTED";
14936    field public static final String ACTION_DEFAULT_DATA_SUBSCRIPTION_CHANGED = "android.intent.action.ACTION_DEFAULT_DATA_SUBSCRIPTION_CHANGED";
14937    field public static final String ACTION_DEFAULT_VOICE_SUBSCRIPTION_CHANGED = "android.intent.action.ACTION_DEFAULT_VOICE_SUBSCRIPTION_CHANGED";
14938    field public static final String ACTION_EMERGENCY_ASSISTANCE = "android.telephony.action.EMERGENCY_ASSISTANCE";
14939    field public static final String ACTION_EMERGENCY_CALLBACK_MODE_CHANGED = "android.intent.action.EMERGENCY_CALLBACK_MODE_CHANGED";
14940    field public static final String ACTION_EMERGENCY_CALL_STATE_CHANGED = "android.intent.action.EMERGENCY_CALL_STATE_CHANGED";
14941    field public static final String ACTION_REQUEST_OMADM_CONFIGURATION_UPDATE = "com.android.omadm.service.CONFIGURATION_UPDATE";
14942    field public static final String ACTION_SHOW_NOTICE_ECM_BLOCK_OTHERS = "android.telephony.action.SHOW_NOTICE_ECM_BLOCK_OTHERS";
14943    field public static final String ACTION_SIM_APPLICATION_STATE_CHANGED = "android.telephony.action.SIM_APPLICATION_STATE_CHANGED";
14944    field public static final String ACTION_SIM_CARD_STATE_CHANGED = "android.telephony.action.SIM_CARD_STATE_CHANGED";
14945    field public static final String ACTION_SIM_SLOT_STATUS_CHANGED = "android.telephony.action.SIM_SLOT_STATUS_CHANGED";
14946    field public static final int ALLOWED_NETWORK_TYPES_REASON_ENABLE_2G = 3; // 0x3
14947    field public static final int ALLOWED_NETWORK_TYPES_REASON_POWER = 1; // 0x1
14948    field public static final int CALL_WAITING_STATUS_DISABLED = 2; // 0x2
14949    field public static final int CALL_WAITING_STATUS_ENABLED = 1; // 0x1
14950    field public static final int CALL_WAITING_STATUS_FDN_CHECK_FAILURE = 5; // 0x5
14951    field public static final int CALL_WAITING_STATUS_NOT_SUPPORTED = 4; // 0x4
14952    field public static final int CALL_WAITING_STATUS_UNKNOWN_ERROR = 3; // 0x3
14953    field public static final String CAPABILITY_NR_DUAL_CONNECTIVITY_CONFIGURATION_AVAILABLE = "CAPABILITY_NR_DUAL_CONNECTIVITY_CONFIGURATION_AVAILABLE";
14954    field public static final String CAPABILITY_SECONDARY_LINK_BANDWIDTH_VISIBLE = "CAPABILITY_SECONDARY_LINK_BANDWIDTH_VISIBLE";
14955    field public static final String CAPABILITY_THERMAL_MITIGATION_DATA_THROTTLING = "CAPABILITY_THERMAL_MITIGATION_DATA_THROTTLING";
14956    field public static final String CAPABILITY_USES_ALLOWED_NETWORK_TYPES_BITMASK = "CAPABILITY_USES_ALLOWED_NETWORK_TYPES_BITMASK";
14957    field public static final int CARRIER_PRIVILEGE_STATUS_ERROR_LOADING_RULES = -2; // 0xfffffffe
14958    field public static final int CARRIER_PRIVILEGE_STATUS_HAS_ACCESS = 1; // 0x1
14959    field public static final int CARRIER_PRIVILEGE_STATUS_NO_ACCESS = 0; // 0x0
14960    field public static final int CARRIER_PRIVILEGE_STATUS_RULES_NOT_LOADED = -1; // 0xffffffff
14961    field public static final int CDMA_SUBSCRIPTION_NV = 1; // 0x1
14962    field public static final int CDMA_SUBSCRIPTION_RUIM_SIM = 0; // 0x0
14963    field public static final int CDMA_SUBSCRIPTION_UNKNOWN = -1; // 0xffffffff
14964    field public static final int CELL_BROADCAST_RESULT_FAIL_ACTIVATION = 3; // 0x3
14965    field public static final int CELL_BROADCAST_RESULT_FAIL_CONFIG = 2; // 0x2
14966    field public static final int CELL_BROADCAST_RESULT_SUCCESS = 0; // 0x0
14967    field public static final int CELL_BROADCAST_RESULT_UNKNOWN = -1; // 0xffffffff
14968    field public static final int CELL_BROADCAST_RESULT_UNSUPPORTED = 1; // 0x1
14969    field public static final int ENABLE_NR_DUAL_CONNECTIVITY_INVALID_STATE = 4; // 0x4
14970    field public static final int ENABLE_NR_DUAL_CONNECTIVITY_NOT_SUPPORTED = 1; // 0x1
14971    field public static final int ENABLE_NR_DUAL_CONNECTIVITY_RADIO_ERROR = 3; // 0x3
14972    field public static final int ENABLE_NR_DUAL_CONNECTIVITY_RADIO_NOT_AVAILABLE = 2; // 0x2
14973    field public static final int ENABLE_NR_DUAL_CONNECTIVITY_SUCCESS = 0; // 0x0
14974    field public static final String EXTRA_ANOMALY_DESCRIPTION = "android.telephony.extra.ANOMALY_DESCRIPTION";
14975    field public static final String EXTRA_ANOMALY_ID = "android.telephony.extra.ANOMALY_ID";
14976    field public static final String EXTRA_PHONE_IN_ECM_STATE = "android.telephony.extra.PHONE_IN_ECM_STATE";
14977    field public static final String EXTRA_PHONE_IN_EMERGENCY_CALL = "android.telephony.extra.PHONE_IN_EMERGENCY_CALL";
14978    field public static final String EXTRA_SIM_STATE = "android.telephony.extra.SIM_STATE";
14979    field public static final String EXTRA_VISUAL_VOICEMAIL_ENABLED_BY_USER_BOOL = "android.telephony.extra.VISUAL_VOICEMAIL_ENABLED_BY_USER_BOOL";
14980    field public static final String EXTRA_VOICEMAIL_SCRAMBLED_PIN_STRING = "android.telephony.extra.VOICEMAIL_SCRAMBLED_PIN_STRING";
14981    field public static final int GBA_FAILURE_REASON_FEATURE_NOT_READY = 2; // 0x2
14982    field public static final int GBA_FAILURE_REASON_FEATURE_NOT_SUPPORTED = 1; // 0x1
14983    field public static final int GBA_FAILURE_REASON_INCORRECT_NAF_ID = 4; // 0x4
14984    field public static final int GBA_FAILURE_REASON_NETWORK_FAILURE = 3; // 0x3
14985    field public static final int GBA_FAILURE_REASON_SECURITY_PROTOCOL_NOT_SUPPORTED = 5; // 0x5
14986    field public static final int GBA_FAILURE_REASON_UNKNOWN = 0; // 0x0
14987    field public static final int INVALID_EMERGENCY_NUMBER_DB_VERSION = -1; // 0xffffffff
14988    field public static final int KEY_TYPE_EPDG = 1; // 0x1
14989    field public static final int KEY_TYPE_WLAN = 2; // 0x2
14990    field public static final int MOBILE_DATA_POLICY_AUTO_DATA_SWITCH = 3; // 0x3
14991    field public static final int MOBILE_DATA_POLICY_DATA_ON_NON_DEFAULT_DURING_VOICE_CALL = 1; // 0x1
14992    field public static final int MOBILE_DATA_POLICY_MMS_ALWAYS_ALLOWED = 2; // 0x2
14993    field public static final int NR_DUAL_CONNECTIVITY_DISABLE = 2; // 0x2
14994    field public static final int NR_DUAL_CONNECTIVITY_DISABLE_IMMEDIATE = 3; // 0x3
14995    field public static final int NR_DUAL_CONNECTIVITY_ENABLE = 1; // 0x1
14996    field public static final int PREPARE_UNATTENDED_REBOOT_ERROR = 2; // 0x2
14997    field public static final int PREPARE_UNATTENDED_REBOOT_PIN_REQUIRED = 1; // 0x1
14998    field public static final int PREPARE_UNATTENDED_REBOOT_SUCCESS = 0; // 0x0
14999    field public static final int RADIO_POWER_OFF = 0; // 0x0
15000    field public static final int RADIO_POWER_ON = 1; // 0x1
15001    field public static final int RADIO_POWER_REASON_CARRIER = 2; // 0x2
15002    field public static final int RADIO_POWER_REASON_NEARBY_DEVICE = 3; // 0x3
15003    field public static final int RADIO_POWER_REASON_THERMAL = 1; // 0x1
15004    field public static final int RADIO_POWER_REASON_USER = 0; // 0x0
15005    field public static final int RADIO_POWER_UNAVAILABLE = 2; // 0x2
15006    field public static final int SET_CARRIER_RESTRICTION_ERROR = 2; // 0x2
15007    field public static final int SET_CARRIER_RESTRICTION_NOT_SUPPORTED = 1; // 0x1
15008    field public static final int SET_CARRIER_RESTRICTION_SUCCESS = 0; // 0x0
15009    field public static final int SET_SIM_POWER_STATE_ALREADY_IN_STATE = 1; // 0x1
15010    field public static final int SET_SIM_POWER_STATE_MODEM_ERROR = 2; // 0x2
15011    field public static final int SET_SIM_POWER_STATE_NOT_SUPPORTED = 4; // 0x4
15012    field public static final int SET_SIM_POWER_STATE_SIM_ERROR = 3; // 0x3
15013    field public static final int SET_SIM_POWER_STATE_SUCCESS = 0; // 0x0
15014    field public static final int SIM_ACTIVATION_STATE_ACTIVATED = 2; // 0x2
15015    field public static final int SIM_ACTIVATION_STATE_ACTIVATING = 1; // 0x1
15016    field public static final int SIM_ACTIVATION_STATE_DEACTIVATED = 3; // 0x3
15017    field public static final int SIM_ACTIVATION_STATE_RESTRICTED = 4; // 0x4
15018    field public static final int SIM_ACTIVATION_STATE_UNKNOWN = 0; // 0x0
15019    field public static final int SIM_STATE_LOADED = 10; // 0xa
15020    field public static final int SIM_STATE_PRESENT = 11; // 0xb
15021    field public static final int SRVCC_STATE_HANDOVER_CANCELED = 3; // 0x3
15022    field public static final int SRVCC_STATE_HANDOVER_COMPLETED = 1; // 0x1
15023    field public static final int SRVCC_STATE_HANDOVER_FAILED = 2; // 0x2
15024    field public static final int SRVCC_STATE_HANDOVER_NONE = -1; // 0xffffffff
15025    field public static final int SRVCC_STATE_HANDOVER_STARTED = 0; // 0x0
15026    field public static final int THERMAL_MITIGATION_RESULT_INVALID_STATE = 3; // 0x3
15027    field public static final int THERMAL_MITIGATION_RESULT_MODEM_ERROR = 1; // 0x1
15028    field public static final int THERMAL_MITIGATION_RESULT_MODEM_NOT_AVAILABLE = 2; // 0x2
15029    field public static final int THERMAL_MITIGATION_RESULT_SUCCESS = 0; // 0x0
15030    field public static final int THERMAL_MITIGATION_RESULT_UNKNOWN_ERROR = 4; // 0x4
15031  }
15032
15033  public static class TelephonyManager.BootstrapAuthenticationCallback {
15034    ctor public TelephonyManager.BootstrapAuthenticationCallback();
15035    method public void onAuthenticationFailure(int);
15036    method public void onKeysAvailable(@NonNull byte[], @NonNull String);
15037  }
15038
15039  public static interface TelephonyManager.CallForwardingInfoCallback {
15040    method public void onCallForwardingInfoAvailable(@NonNull android.telephony.CallForwardingInfo);
15041    method public void onError(int);
15042    field public static final int RESULT_ERROR_FDN_CHECK_FAILURE = 2; // 0x2
15043    field public static final int RESULT_ERROR_NOT_SUPPORTED = 3; // 0x3
15044    field public static final int RESULT_ERROR_UNKNOWN = 1; // 0x1
15045    field public static final int RESULT_SUCCESS = 0; // 0x0
15046  }
15047
15048  public static interface TelephonyManager.CarrierPrivilegesCallback {
15049    method public void onCarrierPrivilegesChanged(@NonNull java.util.Set<java.lang.String>, @NonNull java.util.Set<java.lang.Integer>);
15050    method public default void onCarrierServiceChanged(@Nullable String, int);
15051  }
15052
15053  public static class TelephonyManager.ModemActivityInfoException extends java.lang.Exception {
15054    ctor public TelephonyManager.ModemActivityInfoException(int);
15055    method public int getErrorCode();
15056    field public static final int ERROR_INVALID_INFO_RECEIVED = 2; // 0x2
15057    field public static final int ERROR_MODEM_RESPONSE_ERROR = 3; // 0x3
15058    field public static final int ERROR_PHONE_NOT_AVAILABLE = 1; // 0x1
15059    field public static final int ERROR_UNKNOWN = 0; // 0x0
15060  }
15061
15062  public final class ThermalMitigationRequest implements android.os.Parcelable {
15063    method public int describeContents();
15064    method @Nullable public android.telephony.DataThrottlingRequest getDataThrottlingRequest();
15065    method public int getThermalMitigationAction();
15066    method public void writeToParcel(@NonNull android.os.Parcel, int);
15067    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ThermalMitigationRequest> CREATOR;
15068    field public static final int THERMAL_MITIGATION_ACTION_DATA_THROTTLING = 0; // 0x0
15069    field public static final int THERMAL_MITIGATION_ACTION_RADIO_OFF = 2; // 0x2
15070    field public static final int THERMAL_MITIGATION_ACTION_VOICE_ONLY = 1; // 0x1
15071  }
15072
15073  public static final class ThermalMitigationRequest.Builder {
15074    ctor public ThermalMitigationRequest.Builder();
15075    method @NonNull public android.telephony.ThermalMitigationRequest build();
15076    method @NonNull public android.telephony.ThermalMitigationRequest.Builder setDataThrottlingRequest(@NonNull android.telephony.DataThrottlingRequest);
15077    method @NonNull public android.telephony.ThermalMitigationRequest.Builder setThermalMitigationAction(int);
15078  }
15079
15080  public final class UiccAccessRule implements android.os.Parcelable {
15081    ctor public UiccAccessRule(byte[], @Nullable String, long);
15082    method public int describeContents();
15083    method public int getCarrierPrivilegeStatus(android.content.pm.PackageInfo);
15084    method public int getCarrierPrivilegeStatus(android.content.pm.Signature, String);
15085    method public String getCertificateHexString();
15086    method @Nullable public String getPackageName();
15087    method public void writeToParcel(android.os.Parcel, int);
15088    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.UiccAccessRule> CREATOR;
15089  }
15090
15091  public class UiccSlotInfo implements android.os.Parcelable {
15092    ctor @Deprecated public UiccSlotInfo(boolean, boolean, String, int, int, boolean);
15093    method public int describeContents();
15094    method public String getCardId();
15095    method public int getCardStateInfo();
15096    method @Deprecated public boolean getIsActive();
15097    method public boolean getIsEuicc();
15098    method public boolean getIsExtendedApduSupported();
15099    method @Deprecated public int getLogicalSlotIdx();
15100    method @NonNull public java.util.Collection<android.telephony.UiccPortInfo> getPorts();
15101    method public boolean isRemovable();
15102    method public void writeToParcel(android.os.Parcel, int);
15103    field public static final int CARD_STATE_INFO_ABSENT = 1; // 0x1
15104    field public static final int CARD_STATE_INFO_ERROR = 3; // 0x3
15105    field public static final int CARD_STATE_INFO_PRESENT = 2; // 0x2
15106    field public static final int CARD_STATE_INFO_RESTRICTED = 4; // 0x4
15107    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.UiccSlotInfo> CREATOR;
15108  }
15109
15110  public final class UiccSlotMapping implements android.os.Parcelable {
15111    ctor public UiccSlotMapping(int, int, int);
15112    method public int describeContents();
15113    method @IntRange(from=0) public int getLogicalSlotIndex();
15114    method @IntRange(from=0) public int getPhysicalSlotIndex();
15115    method @IntRange(from=0) public int getPortIndex();
15116    method public void writeToParcel(@Nullable android.os.Parcel, int);
15117    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.UiccSlotMapping> CREATOR;
15118  }
15119
15120  public abstract class VisualVoicemailService extends android.app.Service {
15121    method public static final void sendVisualVoicemailSms(android.content.Context, android.telecom.PhoneAccountHandle, String, short, String, android.app.PendingIntent);
15122    method public static final void setSmsFilterSettings(android.content.Context, android.telecom.PhoneAccountHandle, android.telephony.VisualVoicemailSmsFilterSettings);
15123  }
15124
15125  public abstract class VopsSupportInfo implements android.os.Parcelable {
15126    method public int describeContents();
15127    method public abstract boolean equals(Object);
15128    method public abstract int hashCode();
15129    method public abstract boolean isEmergencyServiceFallbackSupported();
15130    method public abstract boolean isEmergencyServiceSupported();
15131    method public abstract boolean isVopsSupported();
15132    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.VopsSupportInfo> CREATOR;
15133  }
15134
15135}
15136
15137package android.telephony.cdma {
15138
15139  public final class CdmaSmsCbProgramData implements android.os.Parcelable {
15140    method public int describeContents();
15141    method public int getCategory();
15142    method public int getOperation();
15143    method public void writeToParcel(android.os.Parcel, int);
15144    field public static final int CATEGORY_CMAS_CHILD_ABDUCTION_EMERGENCY = 4099; // 0x1003
15145    field public static final int CATEGORY_CMAS_EXTREME_THREAT = 4097; // 0x1001
15146    field public static final int CATEGORY_CMAS_LAST_RESERVED_VALUE = 4351; // 0x10ff
15147    field public static final int CATEGORY_CMAS_PRESIDENTIAL_LEVEL_ALERT = 4096; // 0x1000
15148    field public static final int CATEGORY_CMAS_SEVERE_THREAT = 4098; // 0x1002
15149    field public static final int CATEGORY_CMAS_TEST_MESSAGE = 4100; // 0x1004
15150    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.cdma.CdmaSmsCbProgramData> CREATOR;
15151    field public static final int OPERATION_ADD_CATEGORY = 1; // 0x1
15152    field public static final int OPERATION_CLEAR_CATEGORIES = 2; // 0x2
15153    field public static final int OPERATION_DELETE_CATEGORY = 0; // 0x0
15154  }
15155
15156}
15157
15158package android.telephony.data {
15159
15160  public class ApnSetting implements android.os.Parcelable {
15161    method public static int getApnTypeInt(@NonNull String);
15162    method @NonNull public static String getApnTypeString(int);
15163    field public static final String TYPE_ALL_STRING = "*";
15164    field public static final String TYPE_BIP_STRING = "bip";
15165    field public static final String TYPE_CBS_STRING = "cbs";
15166    field public static final String TYPE_DEFAULT_STRING = "default";
15167    field public static final String TYPE_DUN_STRING = "dun";
15168    field public static final String TYPE_EMERGENCY_STRING = "emergency";
15169    field public static final String TYPE_ENTERPRISE_STRING = "enterprise";
15170    field public static final String TYPE_FOTA_STRING = "fota";
15171    field public static final String TYPE_HIPRI_STRING = "hipri";
15172    field public static final String TYPE_IA_STRING = "ia";
15173    field public static final String TYPE_IMS_STRING = "ims";
15174    field public static final String TYPE_MCX_STRING = "mcx";
15175    field public static final String TYPE_MMS_STRING = "mms";
15176    field public static final String TYPE_SUPL_STRING = "supl";
15177    field public static final String TYPE_VSIM_STRING = "vsim";
15178    field public static final String TYPE_XCAP_STRING = "xcap";
15179  }
15180
15181  public final class DataCallResponse implements android.os.Parcelable {
15182    method public int describeContents();
15183    method @NonNull public java.util.List<android.net.LinkAddress> getAddresses();
15184    method public int getCause();
15185    method @NonNull public java.util.List<java.net.InetAddress> getDnsAddresses();
15186    method @NonNull public java.util.List<java.net.InetAddress> getGatewayAddresses();
15187    method public int getHandoverFailureMode();
15188    method public int getId();
15189    method @NonNull public String getInterfaceName();
15190    method public int getLinkStatus();
15191    method @Deprecated public int getMtu();
15192    method public int getMtuV4();
15193    method public int getMtuV6();
15194    method @NonNull public java.util.List<java.net.InetAddress> getPcscfAddresses();
15195    method public int getPduSessionId();
15196    method public int getProtocolType();
15197    method public long getRetryDurationMillis();
15198    method @Nullable public android.telephony.data.NetworkSliceInfo getSliceInfo();
15199    method @Deprecated public int getSuggestedRetryTime();
15200    method @NonNull public java.util.List<android.telephony.data.TrafficDescriptor> getTrafficDescriptors();
15201    method public void writeToParcel(android.os.Parcel, int);
15202    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.data.DataCallResponse> CREATOR;
15203    field public static final int HANDOVER_FAILURE_MODE_DO_FALLBACK = 1; // 0x1
15204    field public static final int HANDOVER_FAILURE_MODE_LEGACY = 0; // 0x0
15205    field public static final int HANDOVER_FAILURE_MODE_NO_FALLBACK_RETRY_HANDOVER = 2; // 0x2
15206    field public static final int HANDOVER_FAILURE_MODE_NO_FALLBACK_RETRY_SETUP_NORMAL = 3; // 0x3
15207    field public static final int HANDOVER_FAILURE_MODE_UNKNOWN = -1; // 0xffffffff
15208    field public static final int LINK_STATUS_ACTIVE = 2; // 0x2
15209    field public static final int LINK_STATUS_DORMANT = 1; // 0x1
15210    field public static final int LINK_STATUS_INACTIVE = 0; // 0x0
15211    field public static final int LINK_STATUS_UNKNOWN = -1; // 0xffffffff
15212    field public static final int PDU_SESSION_ID_NOT_SET = 0; // 0x0
15213    field public static final int RETRY_DURATION_UNDEFINED = -1; // 0xffffffff
15214  }
15215
15216  public static final class DataCallResponse.Builder {
15217    ctor public DataCallResponse.Builder();
15218    method @NonNull public android.telephony.data.DataCallResponse build();
15219    method @NonNull public android.telephony.data.DataCallResponse.Builder setAddresses(@NonNull java.util.List<android.net.LinkAddress>);
15220    method @NonNull public android.telephony.data.DataCallResponse.Builder setCause(int);
15221    method @NonNull public android.telephony.data.DataCallResponse.Builder setDnsAddresses(@NonNull java.util.List<java.net.InetAddress>);
15222    method @NonNull public android.telephony.data.DataCallResponse.Builder setGatewayAddresses(@NonNull java.util.List<java.net.InetAddress>);
15223    method @NonNull public android.telephony.data.DataCallResponse.Builder setHandoverFailureMode(int);
15224    method @NonNull public android.telephony.data.DataCallResponse.Builder setId(int);
15225    method @NonNull public android.telephony.data.DataCallResponse.Builder setInterfaceName(@NonNull String);
15226    method @NonNull public android.telephony.data.DataCallResponse.Builder setLinkStatus(int);
15227    method @Deprecated @NonNull public android.telephony.data.DataCallResponse.Builder setMtu(int);
15228    method @NonNull public android.telephony.data.DataCallResponse.Builder setMtuV4(int);
15229    method @NonNull public android.telephony.data.DataCallResponse.Builder setMtuV6(int);
15230    method @NonNull public android.telephony.data.DataCallResponse.Builder setPcscfAddresses(@NonNull java.util.List<java.net.InetAddress>);
15231    method @NonNull public android.telephony.data.DataCallResponse.Builder setPduSessionId(@IntRange(from=android.telephony.data.DataCallResponse.PDU_SESSION_ID_NOT_SET, to=15) int);
15232    method @NonNull public android.telephony.data.DataCallResponse.Builder setProtocolType(int);
15233    method @NonNull public android.telephony.data.DataCallResponse.Builder setRetryDurationMillis(long);
15234    method @NonNull public android.telephony.data.DataCallResponse.Builder setSliceInfo(@Nullable android.telephony.data.NetworkSliceInfo);
15235    method @Deprecated @NonNull public android.telephony.data.DataCallResponse.Builder setSuggestedRetryTime(int);
15236    method @NonNull public android.telephony.data.DataCallResponse.Builder setTrafficDescriptors(@NonNull java.util.List<android.telephony.data.TrafficDescriptor>);
15237  }
15238
15239  public final class DataProfile implements android.os.Parcelable {
15240    method public int describeContents();
15241    method @Deprecated @NonNull public String getApn();
15242    method @Nullable public android.telephony.data.ApnSetting getApnSetting();
15243    method @Deprecated public int getAuthType();
15244    method @Deprecated public int getBearerBitmask();
15245    method @Deprecated public int getMtu();
15246    method @Deprecated public int getMtuV4();
15247    method @Deprecated public int getMtuV6();
15248    method @Deprecated @Nullable public String getPassword();
15249    method @Deprecated public int getProfileId();
15250    method @Deprecated public int getProtocolType();
15251    method @Deprecated public int getRoamingProtocolType();
15252    method @Deprecated public int getSupportedApnTypesBitmask();
15253    method @Nullable public android.telephony.data.TrafficDescriptor getTrafficDescriptor();
15254    method public int getType();
15255    method @Deprecated @Nullable public String getUserName();
15256    method public boolean isEnabled();
15257    method @Deprecated public boolean isPersistent();
15258    method public boolean isPreferred();
15259    method public void writeToParcel(android.os.Parcel, int);
15260    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.data.DataProfile> CREATOR;
15261    field public static final int TYPE_3GPP = 1; // 0x1
15262    field public static final int TYPE_3GPP2 = 2; // 0x2
15263    field public static final int TYPE_COMMON = 0; // 0x0
15264  }
15265
15266  public static final class DataProfile.Builder {
15267    ctor public DataProfile.Builder();
15268    method @NonNull public android.telephony.data.DataProfile build();
15269    method @NonNull public android.telephony.data.DataProfile.Builder enable(boolean);
15270    method @Deprecated @NonNull public android.telephony.data.DataProfile.Builder setApn(@NonNull String);
15271    method @NonNull public android.telephony.data.DataProfile.Builder setApnSetting(@NonNull android.telephony.data.ApnSetting);
15272    method @Deprecated @NonNull public android.telephony.data.DataProfile.Builder setAuthType(int);
15273    method @Deprecated @NonNull public android.telephony.data.DataProfile.Builder setBearerBitmask(int);
15274    method @Deprecated @NonNull public android.telephony.data.DataProfile.Builder setMtu(int);
15275    method @Deprecated @NonNull public android.telephony.data.DataProfile.Builder setMtuV4(int);
15276    method @Deprecated @NonNull public android.telephony.data.DataProfile.Builder setMtuV6(int);
15277    method @Deprecated @NonNull public android.telephony.data.DataProfile.Builder setPassword(@NonNull String);
15278    method @Deprecated @NonNull public android.telephony.data.DataProfile.Builder setPersistent(boolean);
15279    method @NonNull public android.telephony.data.DataProfile.Builder setPreferred(boolean);
15280    method @Deprecated @NonNull public android.telephony.data.DataProfile.Builder setProfileId(int);
15281    method @Deprecated @NonNull public android.telephony.data.DataProfile.Builder setProtocolType(int);
15282    method @Deprecated @NonNull public android.telephony.data.DataProfile.Builder setRoamingProtocolType(int);
15283    method @Deprecated @NonNull public android.telephony.data.DataProfile.Builder setSupportedApnTypesBitmask(int);
15284    method @NonNull public android.telephony.data.DataProfile.Builder setTrafficDescriptor(@NonNull android.telephony.data.TrafficDescriptor);
15285    method @NonNull public android.telephony.data.DataProfile.Builder setType(int);
15286    method @Deprecated @NonNull public android.telephony.data.DataProfile.Builder setUserName(@NonNull String);
15287  }
15288
15289  public abstract class DataService extends android.app.Service {
15290    ctor public DataService();
15291    method public android.os.IBinder onBind(android.content.Intent);
15292    method @Nullable public abstract android.telephony.data.DataService.DataServiceProvider onCreateDataServiceProvider(int);
15293    field public static final int REQUEST_REASON_HANDOVER = 3; // 0x3
15294    field public static final int REQUEST_REASON_NORMAL = 1; // 0x1
15295    field public static final int REQUEST_REASON_SHUTDOWN = 2; // 0x2
15296    field public static final int REQUEST_REASON_UNKNOWN = 0; // 0x0
15297    field public static final String SERVICE_INTERFACE = "android.telephony.data.DataService";
15298  }
15299
15300  public abstract class DataService.DataServiceProvider implements java.lang.AutoCloseable {
15301    ctor public DataService.DataServiceProvider(int);
15302    method public abstract void close();
15303    method public void deactivateDataCall(int, int, @Nullable android.telephony.data.DataServiceCallback);
15304    method public final int getSlotIndex();
15305    method public final void notifyApnUnthrottled(@NonNull String);
15306    method public final void notifyDataCallListChanged(java.util.List<android.telephony.data.DataCallResponse>);
15307    method public final void notifyDataProfileUnthrottled(@NonNull android.telephony.data.DataProfile);
15308    method public void requestDataCallList(@NonNull android.telephony.data.DataServiceCallback);
15309    method public void setDataProfile(@NonNull java.util.List<android.telephony.data.DataProfile>, boolean, @NonNull android.telephony.data.DataServiceCallback);
15310    method public void setInitialAttachApn(@NonNull android.telephony.data.DataProfile, boolean, @NonNull android.telephony.data.DataServiceCallback);
15311    method public void setupDataCall(int, @NonNull android.telephony.data.DataProfile, boolean, boolean, int, @Nullable android.net.LinkProperties, @NonNull android.telephony.data.DataServiceCallback);
15312    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);
15313  }
15314
15315  public class DataServiceCallback {
15316    method public void onApnUnthrottled(@NonNull String);
15317    method public void onDataCallListChanged(@NonNull java.util.List<android.telephony.data.DataCallResponse>);
15318    method public void onDataProfileUnthrottled(@NonNull android.telephony.data.DataProfile);
15319    method public void onDeactivateDataCallComplete(int);
15320    method public void onRequestDataCallListComplete(int, @NonNull java.util.List<android.telephony.data.DataCallResponse>);
15321    method public void onSetDataProfileComplete(int);
15322    method public void onSetInitialAttachApnComplete(int);
15323    method public void onSetupDataCallComplete(int, @Nullable android.telephony.data.DataCallResponse);
15324    field public static final int RESULT_ERROR_BUSY = 3; // 0x3
15325    field public static final int RESULT_ERROR_ILLEGAL_STATE = 4; // 0x4
15326    field public static final int RESULT_ERROR_INVALID_ARG = 2; // 0x2
15327    field public static final int RESULT_ERROR_UNSUPPORTED = 1; // 0x1
15328    field public static final int RESULT_SUCCESS = 0; // 0x0
15329  }
15330
15331  public final class EpsBearerQosSessionAttributes implements android.os.Parcelable android.net.QosSessionAttributes {
15332    method public int describeContents();
15333    method public long getGuaranteedDownlinkBitRateKbps();
15334    method public long getGuaranteedUplinkBitRateKbps();
15335    method public long getMaxDownlinkBitRateKbps();
15336    method public long getMaxUplinkBitRateKbps();
15337    method public int getQosIdentifier();
15338    method @NonNull public java.util.List<java.net.InetSocketAddress> getRemoteAddresses();
15339    method public void writeToParcel(@NonNull android.os.Parcel, int);
15340    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.data.EpsBearerQosSessionAttributes> CREATOR;
15341  }
15342
15343  public final class NrQosSessionAttributes implements android.os.Parcelable android.net.QosSessionAttributes {
15344    method public int describeContents();
15345    method @NonNull public java.time.Duration getBitRateWindowDuration();
15346    method public long getGuaranteedDownlinkBitRateKbps();
15347    method public long getGuaranteedUplinkBitRateKbps();
15348    method public long getMaxDownlinkBitRateKbps();
15349    method public long getMaxUplinkBitRateKbps();
15350    method @IntRange(from=1, to=63) public int getQosFlowIdentifier();
15351    method public int getQosIdentifier();
15352    method @NonNull public java.util.List<java.net.InetSocketAddress> getRemoteAddresses();
15353    method public void writeToParcel(@NonNull android.os.Parcel, int);
15354    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.data.NrQosSessionAttributes> CREATOR;
15355  }
15356
15357  public abstract class QualifiedNetworksService extends android.app.Service {
15358    ctor public QualifiedNetworksService();
15359    method @NonNull public abstract android.telephony.data.QualifiedNetworksService.NetworkAvailabilityProvider onCreateNetworkAvailabilityProvider(int);
15360    field public static final String QUALIFIED_NETWORKS_SERVICE_INTERFACE = "android.telephony.data.QualifiedNetworksService";
15361  }
15362
15363  public abstract class QualifiedNetworksService.NetworkAvailabilityProvider implements java.lang.AutoCloseable {
15364    ctor public QualifiedNetworksService.NetworkAvailabilityProvider(int);
15365    method public abstract void close();
15366    method public final int getSlotIndex();
15367    method public void reportEmergencyDataNetworkPreferredTransportChanged(int);
15368    method public void reportThrottleStatusChanged(@NonNull java.util.List<android.telephony.data.ThrottleStatus>);
15369    method public final void updateQualifiedNetworkTypes(int, @NonNull java.util.List<java.lang.Integer>);
15370  }
15371
15372  public final class ThrottleStatus implements android.os.Parcelable {
15373    method public int describeContents();
15374    method public int getApnType();
15375    method public int getRetryType();
15376    method public int getSlotIndex();
15377    method public long getThrottleExpiryTimeMillis();
15378    method public int getThrottleType();
15379    method public int getTransportType();
15380    method public void writeToParcel(@NonNull android.os.Parcel, int);
15381    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.data.ThrottleStatus> CREATOR;
15382    field public static final int RETRY_TYPE_HANDOVER = 3; // 0x3
15383    field public static final int RETRY_TYPE_NEW_CONNECTION = 2; // 0x2
15384    field public static final int RETRY_TYPE_NONE = 1; // 0x1
15385    field public static final int THROTTLE_TYPE_ELAPSED_TIME = 2; // 0x2
15386    field public static final int THROTTLE_TYPE_NONE = 1; // 0x1
15387  }
15388
15389  public static final class ThrottleStatus.Builder {
15390    ctor public ThrottleStatus.Builder();
15391    method @NonNull public android.telephony.data.ThrottleStatus build();
15392    method @NonNull public android.telephony.data.ThrottleStatus.Builder setApnType(int);
15393    method @NonNull public android.telephony.data.ThrottleStatus.Builder setNoThrottle();
15394    method @NonNull public android.telephony.data.ThrottleStatus.Builder setRetryType(int);
15395    method @NonNull public android.telephony.data.ThrottleStatus.Builder setSlotIndex(int);
15396    method @NonNull public android.telephony.data.ThrottleStatus.Builder setThrottleExpiryTimeMillis(long);
15397    method @NonNull public android.telephony.data.ThrottleStatus.Builder setTransportType(int);
15398  }
15399
15400}
15401
15402package android.telephony.euicc {
15403
15404  public final class DownloadableSubscription implements android.os.Parcelable {
15405    method public java.util.List<android.telephony.UiccAccessRule> getAccessRules();
15406    method @Nullable public String getCarrierName();
15407  }
15408
15409  public static final class DownloadableSubscription.Builder {
15410    ctor public DownloadableSubscription.Builder();
15411    method @NonNull public android.telephony.euicc.DownloadableSubscription.Builder setAccessRules(@NonNull java.util.List<android.telephony.UiccAccessRule>);
15412    method @NonNull public android.telephony.euicc.DownloadableSubscription.Builder setCarrierName(@NonNull String);
15413  }
15414
15415  public class EuiccCardManager {
15416    method public void authenticateServer(String, String, byte[], byte[], byte[], byte[], java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<byte[]>);
15417    method public void cancelSession(String, byte[], @android.telephony.euicc.EuiccCardManager.CancelReason int, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<byte[]>);
15418    method public void deleteProfile(String, String, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<java.lang.Void>);
15419    method public void disableProfile(String, String, boolean, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<java.lang.Void>);
15420    method public void listNotifications(String, @android.telephony.euicc.EuiccNotification.Event int, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<android.telephony.euicc.EuiccNotification[]>);
15421    method public void loadBoundProfilePackage(String, byte[], java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<byte[]>);
15422    method public void prepareDownload(String, @Nullable byte[], byte[], byte[], byte[], java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<byte[]>);
15423    method public void removeNotificationFromList(String, int, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<java.lang.Void>);
15424    method public void requestAllProfiles(String, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<android.service.euicc.EuiccProfileInfo[]>);
15425    method public void requestDefaultSmdpAddress(String, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<java.lang.String>);
15426    method public void requestEnabledProfileForPort(@NonNull String, int, @NonNull java.util.concurrent.Executor, @NonNull android.telephony.euicc.EuiccCardManager.ResultCallback<android.service.euicc.EuiccProfileInfo>);
15427    method public void requestEuiccChallenge(String, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<byte[]>);
15428    method public void requestEuiccInfo1(String, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<byte[]>);
15429    method public void requestEuiccInfo2(String, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<byte[]>);
15430    method public void requestProfile(String, String, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<android.service.euicc.EuiccProfileInfo>);
15431    method public void requestRulesAuthTable(String, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<android.telephony.euicc.EuiccRulesAuthTable>);
15432    method public void requestSmdsAddress(String, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<java.lang.String>);
15433    method public void resetMemory(String, @android.telephony.euicc.EuiccCardManager.ResetOption int, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<java.lang.Void>);
15434    method public void retrieveNotification(String, int, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<android.telephony.euicc.EuiccNotification>);
15435    method public void retrieveNotificationList(String, @android.telephony.euicc.EuiccNotification.Event int, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<android.telephony.euicc.EuiccNotification[]>);
15436    method public void setDefaultSmdpAddress(String, String, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<java.lang.Void>);
15437    method public void setNickname(String, String, String, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<java.lang.Void>);
15438    method @Deprecated public void switchToProfile(String, String, boolean, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<android.service.euicc.EuiccProfileInfo>);
15439    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>);
15440    field public static final int CANCEL_REASON_END_USER_REJECTED = 0; // 0x0
15441    field public static final int CANCEL_REASON_POSTPONED = 1; // 0x1
15442    field public static final int CANCEL_REASON_PPR_NOT_ALLOWED = 3; // 0x3
15443    field public static final int CANCEL_REASON_TIMEOUT = 2; // 0x2
15444    field public static final int RESET_OPTION_DELETE_FIELD_LOADED_TEST_PROFILES = 2; // 0x2
15445    field public static final int RESET_OPTION_DELETE_OPERATIONAL_PROFILES = 1; // 0x1
15446    field public static final int RESET_OPTION_RESET_DEFAULT_SMDP_ADDRESS = 4; // 0x4
15447    field public static final int RESULT_CALLER_NOT_ALLOWED = -3; // 0xfffffffd
15448    field public static final int RESULT_EUICC_NOT_FOUND = -2; // 0xfffffffe
15449    field public static final int RESULT_OK = 0; // 0x0
15450    field public static final int RESULT_PROFILE_DOES_NOT_EXIST = -4; // 0xfffffffc
15451    field public static final int RESULT_PROFILE_NOT_FOUND = 1; // 0x1
15452    field public static final int RESULT_UNKNOWN_ERROR = -1; // 0xffffffff
15453  }
15454
15455  @IntDef(prefix={"CANCEL_REASON_"}, value={android.telephony.euicc.EuiccCardManager.CANCEL_REASON_END_USER_REJECTED, android.telephony.euicc.EuiccCardManager.CANCEL_REASON_POSTPONED, android.telephony.euicc.EuiccCardManager.CANCEL_REASON_TIMEOUT, android.telephony.euicc.EuiccCardManager.CANCEL_REASON_PPR_NOT_ALLOWED}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface EuiccCardManager.CancelReason {
15456  }
15457
15458  @IntDef(flag=true, prefix={"RESET_OPTION_"}, value={android.telephony.euicc.EuiccCardManager.RESET_OPTION_DELETE_OPERATIONAL_PROFILES, android.telephony.euicc.EuiccCardManager.RESET_OPTION_DELETE_FIELD_LOADED_TEST_PROFILES, android.telephony.euicc.EuiccCardManager.RESET_OPTION_RESET_DEFAULT_SMDP_ADDRESS}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface EuiccCardManager.ResetOption {
15459  }
15460
15461  public static interface EuiccCardManager.ResultCallback<T> {
15462    method public void onComplete(int, T);
15463  }
15464
15465  public class EuiccManager {
15466    method @RequiresPermission(android.Manifest.permission.WRITE_EMBEDDED_SUBSCRIPTIONS) public void continueOperation(android.content.Intent, android.os.Bundle);
15467    method @Deprecated @RequiresPermission(android.Manifest.permission.WRITE_EMBEDDED_SUBSCRIPTIONS) public void eraseSubscriptions(@NonNull android.app.PendingIntent);
15468    method @RequiresPermission(android.Manifest.permission.WRITE_EMBEDDED_SUBSCRIPTIONS) public void eraseSubscriptions(@android.telephony.euicc.EuiccCardManager.ResetOption int, @NonNull android.app.PendingIntent);
15469    method @RequiresPermission(android.Manifest.permission.WRITE_EMBEDDED_SUBSCRIPTIONS) public void getDefaultDownloadableSubscriptionList(android.app.PendingIntent);
15470    method @RequiresPermission(android.Manifest.permission.WRITE_EMBEDDED_SUBSCRIPTIONS) public void getDownloadableSubscriptionMetadata(android.telephony.euicc.DownloadableSubscription, android.app.PendingIntent);
15471    method @RequiresPermission(android.Manifest.permission.WRITE_EMBEDDED_SUBSCRIPTIONS) public int getOtaStatus();
15472    method @NonNull @RequiresPermission(android.Manifest.permission.WRITE_EMBEDDED_SUBSCRIPTIONS) public java.util.List<java.lang.String> getSupportedCountries();
15473    method @NonNull @RequiresPermission(android.Manifest.permission.WRITE_EMBEDDED_SUBSCRIPTIONS) public java.util.List<java.lang.String> getUnsupportedCountries();
15474    method @RequiresPermission(android.Manifest.permission.WRITE_EMBEDDED_SUBSCRIPTIONS) public boolean isSupportedCountry(@NonNull String);
15475    method @RequiresPermission(android.Manifest.permission.WRITE_EMBEDDED_SUBSCRIPTIONS) public void setSupportedCountries(@NonNull java.util.List<java.lang.String>);
15476    method @RequiresPermission(android.Manifest.permission.WRITE_EMBEDDED_SUBSCRIPTIONS) public void setUnsupportedCountries(@NonNull java.util.List<java.lang.String>);
15477    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";
15478    field public static final String ACTION_DELETE_SUBSCRIPTION_PRIVILEGED = "android.telephony.euicc.action.DELETE_SUBSCRIPTION_PRIVILEGED";
15479    field @RequiresPermission(android.Manifest.permission.WRITE_EMBEDDED_SUBSCRIPTIONS) public static final String ACTION_OTA_STATUS_CHANGED = "android.telephony.euicc.action.OTA_STATUS_CHANGED";
15480    field public static final String ACTION_PROVISION_EMBEDDED_SUBSCRIPTION = "android.telephony.euicc.action.PROVISION_EMBEDDED_SUBSCRIPTION";
15481    field public static final String ACTION_RENAME_SUBSCRIPTION_PRIVILEGED = "android.telephony.euicc.action.RENAME_SUBSCRIPTION_PRIVILEGED";
15482    field public static final String ACTION_TOGGLE_SUBSCRIPTION_PRIVILEGED = "android.telephony.euicc.action.TOGGLE_SUBSCRIPTION_PRIVILEGED";
15483    field @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public static final String ACTION_TRANSFER_EMBEDDED_SUBSCRIPTIONS = "android.telephony.euicc.action.TRANSFER_EMBEDDED_SUBSCRIPTIONS";
15484    field public static final int EUICC_ACTIVATION_TYPE_ACCOUNT_REQUIRED = 4; // 0x4
15485    field public static final int EUICC_ACTIVATION_TYPE_BACKUP = 2; // 0x2
15486    field public static final int EUICC_ACTIVATION_TYPE_DEFAULT = 1; // 0x1
15487    field public static final int EUICC_ACTIVATION_TYPE_TRANSFER = 3; // 0x3
15488    field public static final int EUICC_OTA_FAILED = 2; // 0x2
15489    field public static final int EUICC_OTA_IN_PROGRESS = 1; // 0x1
15490    field public static final int EUICC_OTA_NOT_NEEDED = 4; // 0x4
15491    field public static final int EUICC_OTA_STATUS_UNAVAILABLE = 5; // 0x5
15492    field public static final int EUICC_OTA_SUCCEEDED = 3; // 0x3
15493    field public static final String EXTRA_ACTIVATION_TYPE = "android.telephony.euicc.extra.ACTIVATION_TYPE";
15494    field public static final String EXTRA_EMBEDDED_SUBSCRIPTION_DOWNLOADABLE_SUBSCRIPTIONS = "android.telephony.euicc.extra.EMBEDDED_SUBSCRIPTION_DOWNLOADABLE_SUBSCRIPTIONS";
15495    field public static final String EXTRA_ENABLE_SUBSCRIPTION = "android.telephony.euicc.extra.ENABLE_SUBSCRIPTION";
15496    field public static final String EXTRA_FORCE_PROVISION = "android.telephony.euicc.extra.FORCE_PROVISION";
15497    field public static final String EXTRA_FROM_SUBSCRIPTION_ID = "android.telephony.euicc.extra.FROM_SUBSCRIPTION_ID";
15498    field public static final String EXTRA_PHYSICAL_SLOT_ID = "android.telephony.euicc.extra.PHYSICAL_SLOT_ID";
15499    field public static final String EXTRA_SUBSCRIPTION_ID = "android.telephony.euicc.extra.SUBSCRIPTION_ID";
15500    field public static final String EXTRA_SUBSCRIPTION_NICKNAME = "android.telephony.euicc.extra.SUBSCRIPTION_NICKNAME";
15501  }
15502
15503  @IntDef(prefix={"EUICC_OTA_"}, value={android.telephony.euicc.EuiccManager.EUICC_OTA_IN_PROGRESS, android.telephony.euicc.EuiccManager.EUICC_OTA_FAILED, android.telephony.euicc.EuiccManager.EUICC_OTA_SUCCEEDED, android.telephony.euicc.EuiccManager.EUICC_OTA_NOT_NEEDED, android.telephony.euicc.EuiccManager.EUICC_OTA_STATUS_UNAVAILABLE}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface EuiccManager.OtaStatus {
15504  }
15505
15506  public final class EuiccNotification implements android.os.Parcelable {
15507    ctor public EuiccNotification(int, String, @android.telephony.euicc.EuiccNotification.Event int, @Nullable byte[]);
15508    method public int describeContents();
15509    method @Nullable public byte[] getData();
15510    method @android.telephony.euicc.EuiccNotification.Event public int getEvent();
15511    method public int getSeq();
15512    method public String getTargetAddr();
15513    method public void writeToParcel(android.os.Parcel, int);
15514    field @android.telephony.euicc.EuiccNotification.Event public static final int ALL_EVENTS = 15; // 0xf
15515    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.euicc.EuiccNotification> CREATOR;
15516    field public static final int EVENT_DELETE = 8; // 0x8
15517    field public static final int EVENT_DISABLE = 4; // 0x4
15518    field public static final int EVENT_ENABLE = 2; // 0x2
15519    field public static final int EVENT_INSTALL = 1; // 0x1
15520  }
15521
15522  @IntDef(flag=true, prefix={"EVENT_"}, value={android.telephony.euicc.EuiccNotification.EVENT_INSTALL, android.telephony.euicc.EuiccNotification.EVENT_ENABLE, android.telephony.euicc.EuiccNotification.EVENT_DISABLE, android.telephony.euicc.EuiccNotification.EVENT_DELETE}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface EuiccNotification.Event {
15523  }
15524
15525  public final class EuiccRulesAuthTable implements android.os.Parcelable {
15526    method public int describeContents();
15527    method public int findIndex(@android.service.euicc.EuiccProfileInfo.PolicyRule int, android.service.carrier.CarrierIdentifier);
15528    method public boolean hasPolicyRuleFlag(int, @android.telephony.euicc.EuiccRulesAuthTable.PolicyRuleFlag int);
15529    method public void writeToParcel(android.os.Parcel, int);
15530    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.euicc.EuiccRulesAuthTable> CREATOR;
15531    field public static final int POLICY_RULE_FLAG_CONSENT_REQUIRED = 1; // 0x1
15532  }
15533
15534  public static final class EuiccRulesAuthTable.Builder {
15535    ctor public EuiccRulesAuthTable.Builder(int);
15536    method public android.telephony.euicc.EuiccRulesAuthTable.Builder add(int, java.util.List<android.service.carrier.CarrierIdentifier>, int);
15537    method public android.telephony.euicc.EuiccRulesAuthTable build();
15538  }
15539
15540  @IntDef(flag=true, prefix={"POLICY_RULE_FLAG_"}, value={android.telephony.euicc.EuiccRulesAuthTable.POLICY_RULE_FLAG_CONSENT_REQUIRED}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface EuiccRulesAuthTable.PolicyRuleFlag {
15541  }
15542
15543}
15544
15545package android.telephony.gba {
15546
15547  public class GbaService extends android.app.Service {
15548    ctor public GbaService();
15549    method public void onAuthenticationRequest(int, int, int, @NonNull android.net.Uri, @NonNull byte[], boolean);
15550    method public final void reportAuthenticationFailure(int, int) throws java.lang.RuntimeException;
15551    method public final void reportKeysAvailable(int, @NonNull byte[], @NonNull String) throws java.lang.RuntimeException;
15552    field public static final String SERVICE_INTERFACE = "android.telephony.gba.GbaService";
15553  }
15554
15555  public class TlsParams {
15556    method public static boolean isTlsCipherSuiteSupported(int);
15557    field public static final int GROUP_SECP256R1 = 23; // 0x17
15558    field public static final int GROUP_SECP384R1 = 24; // 0x18
15559    field public static final int GROUP_X25519 = 29; // 0x1d
15560    field public static final int GROUP_X448 = 30; // 0x1e
15561    field public static final int PROTOCOL_VERSION_TLS_1_2 = 771; // 0x303
15562    field public static final int PROTOCOL_VERSION_TLS_1_3 = 772; // 0x304
15563    field public static final int SIG_ECDSA_BRAINPOOLP256R1TLS13_SHA256 = 2074; // 0x81a
15564    field public static final int SIG_ECDSA_BRAINPOOLP384R1TLS13_SHA384 = 2075; // 0x81b
15565    field public static final int SIG_ECDSA_BRAINPOOLP512R1TLS13_SHA512 = 2076; // 0x81c
15566    field public static final int SIG_ECDSA_SECP256R1_SHA256 = 1027; // 0x403
15567    field public static final int SIG_ECDSA_SECP384R1_SHA384 = 1283; // 0x503
15568    field public static final int SIG_ECDSA_SECP521R1_SHA512 = 1539; // 0x603
15569    field public static final int SIG_ECDSA_SHA1 = 515; // 0x203
15570    field public static final int SIG_RSA_PKCS1_SHA1 = 513; // 0x201
15571    field public static final int SIG_RSA_PKCS1_SHA256 = 1025; // 0x401
15572    field public static final int SIG_RSA_PKCS1_SHA256_LEGACY = 1056; // 0x420
15573    field public static final int SIG_RSA_PKCS1_SHA384 = 1281; // 0x501
15574    field public static final int SIG_RSA_PKCS1_SHA384_LEGACY = 1312; // 0x520
15575    field public static final int SIG_RSA_PKCS1_SHA512 = 1537; // 0x601
15576    field public static final int SIG_RSA_PKCS1_SHA512_LEGACY = 1568; // 0x620
15577    field public static final int SIG_RSA_PSS_RSAE_SHA256 = 2052; // 0x804
15578    field public static final int SIG_RSA_PSS_RSAE_SHA384 = 2053; // 0x805
15579    field public static final int SIG_RSA_PSS_RSAE_SHA512 = 2054; // 0x806
15580    field public static final int TLS_AES_128_CCM_SHA256 = 4868; // 0x1304
15581    field public static final int TLS_AES_128_GCM_SHA256 = 4865; // 0x1301
15582    field public static final int TLS_AES_256_GCM_SHA384 = 4866; // 0x1302
15583    field public static final int TLS_CHACHA20_POLY1305_SHA256 = 4867; // 0x1303
15584    field public static final int TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA = 19; // 0x13
15585    field public static final int TLS_DHE_DSS_WITH_AES_128_CBC_SHA = 50; // 0x32
15586    field public static final int TLS_DHE_DSS_WITH_AES_128_CBC_SHA256 = 64; // 0x40
15587    field public static final int TLS_DHE_DSS_WITH_AES_256_CBC_SHA = 56; // 0x38
15588    field public static final int TLS_DHE_DSS_WITH_AES_256_CBC_SHA256 = 106; // 0x6a
15589    field public static final int TLS_DHE_PSK_WITH_AES_128_CCM = 49318; // 0xc0a6
15590    field public static final int TLS_DHE_PSK_WITH_AES_128_GCM_SHA256 = 170; // 0xaa
15591    field public static final int TLS_DHE_PSK_WITH_AES_256_CCM = 49319; // 0xc0a7
15592    field public static final int TLS_DHE_PSK_WITH_AES_256_GCM_SHA384 = 171; // 0xab
15593    field public static final int TLS_DHE_PSK_WITH_CHACHA20_POLY1305_SHA256 = 52397; // 0xccad
15594    field public static final int TLS_DHE_RSA_WITH_3DES_EDE_CBC_SHA = 22; // 0x16
15595    field public static final int TLS_DHE_RSA_WITH_AES_128_CBC_SHA = 51; // 0x33
15596    field public static final int TLS_DHE_RSA_WITH_AES_128_CBC_SHA256 = 103; // 0x67
15597    field public static final int TLS_DHE_RSA_WITH_AES_128_CCM = 49310; // 0xc09e
15598    field public static final int TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 = 158; // 0x9e
15599    field public static final int TLS_DHE_RSA_WITH_AES_256_CBC_SHA = 57; // 0x39
15600    field public static final int TLS_DHE_RSA_WITH_AES_256_CBC_SHA256 = 107; // 0x6b
15601    field public static final int TLS_DHE_RSA_WITH_AES_256_CCM = 49311; // 0xc09f
15602    field public static final int TLS_DHE_RSA_WITH_AES_256_GCM_SHA384 = 159; // 0x9f
15603    field public static final int TLS_DHE_RSA_WITH_CHACHA20_POLY1305_SHA256 = 52394; // 0xccaa
15604    field public static final int TLS_DH_ANON_WITH_3DES_EDE_CBC_SHA = 27; // 0x1b
15605    field public static final int TLS_DH_ANON_WITH_AES_128_CBC_SHA = 52; // 0x34
15606    field public static final int TLS_DH_ANON_WITH_AES_128_CBC_SHA256 = 108; // 0x6c
15607    field public static final int TLS_DH_ANON_WITH_AES_256_CBC_SHA = 58; // 0x3a
15608    field public static final int TLS_DH_ANON_WITH_AES_256_CBC_SHA256 = 109; // 0x6d
15609    field public static final int TLS_DH_ANON_WITH_RC4_128_MD5 = 24; // 0x18
15610    field public static final int TLS_DH_DSS_WITH_3DES_EDE_CBC_SHA = 13; // 0xd
15611    field public static final int TLS_DH_DSS_WITH_AES_128_CBC_SHA = 48; // 0x30
15612    field public static final int TLS_DH_DSS_WITH_AES_128_CBC_SHA256 = 62; // 0x3e
15613    field public static final int TLS_DH_DSS_WITH_AES_256_CBC_SHA = 54; // 0x36
15614    field public static final int TLS_DH_DSS_WITH_AES_256_CBC_SHA256 = 104; // 0x68
15615    field public static final int TLS_DH_RSA_WITH_3DES_EDE_CBC_SHA = 16; // 0x10
15616    field public static final int TLS_DH_RSA_WITH_AES_128_CBC_SHA = 49; // 0x31
15617    field public static final int TLS_DH_RSA_WITH_AES_128_CBC_SHA256 = 63; // 0x3f
15618    field public static final int TLS_DH_RSA_WITH_AES_256_CBC_SHA = 55; // 0x37
15619    field public static final int TLS_DH_RSA_WITH_AES_256_CBC_SHA256 = 105; // 0x69
15620    field public static final int TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256 = 49195; // 0xc02b
15621    field public static final int TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384 = 49196; // 0xc02c
15622    field public static final int TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256 = 52393; // 0xcca9
15623    field public static final int TLS_ECDHE_PSK_WITH_AES_128_CCM_SHA256 = 53253; // 0xd005
15624    field public static final int TLS_ECDHE_PSK_WITH_AES_128_GCM_SHA256 = 53249; // 0xd001
15625    field public static final int TLS_ECDHE_PSK_WITH_AES_256_GCM_SHA384 = 53250; // 0xd002
15626    field public static final int TLS_ECDHE_PSK_WITH_CHACHA20_POLY1305_SHA256 = 52396; // 0xccac
15627    field public static final int TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 = 49199; // 0xc02f
15628    field public static final int TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 = 49200; // 0xc030
15629    field public static final int TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256 = 52392; // 0xcca8
15630    field public static final int TLS_NULL_WITH_NULL_NULL = 0; // 0x0
15631    field public static final int TLS_RSA_WITH_3DES_EDE_CBC_SHA = 10; // 0xa
15632    field public static final int TLS_RSA_WITH_AES_128_CBC_SHA = 47; // 0x2f
15633    field public static final int TLS_RSA_WITH_AES_128_CBC_SHA256 = 60; // 0x3c
15634    field public static final int TLS_RSA_WITH_AES_256_CBC_SHA = 53; // 0x35
15635    field public static final int TLS_RSA_WITH_AES_256_CBC_SHA256 = 61; // 0x3d
15636    field public static final int TLS_RSA_WITH_NULL_MD5 = 1; // 0x1
15637    field public static final int TLS_RSA_WITH_NULL_SHA = 2; // 0x2
15638    field public static final int TLS_RSA_WITH_NULL_SHA256 = 59; // 0x3b
15639    field public static final int TLS_RSA_WITH_RC4_128_MD5 = 4; // 0x4
15640    field public static final int TLS_RSA_WITH_RC4_128_SHA = 5; // 0x5
15641  }
15642
15643  public final class UaSecurityProtocolIdentifier implements android.os.Parcelable {
15644    method public int describeContents();
15645    method public int getOrg();
15646    method public int getProtocol();
15647    method public int getTlsCipherSuite();
15648    method @NonNull public byte[] toByteArray();
15649    method public void writeToParcel(@NonNull android.os.Parcel, int);
15650    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.gba.UaSecurityProtocolIdentifier> CREATOR;
15651    field public static final int ORG_3GPP = 1; // 0x1
15652    field public static final int ORG_3GPP2 = 2; // 0x2
15653    field public static final int ORG_GSMA = 4; // 0x4
15654    field public static final int ORG_LOCAL = 255; // 0xff
15655    field public static final int ORG_NONE = 0; // 0x0
15656    field public static final int ORG_OMA = 3; // 0x3
15657    field public static final int UA_SECURITY_PROTOCOL_3GPP_GENERATION_TMPI = 256; // 0x100
15658    field public static final int UA_SECURITY_PROTOCOL_3GPP_GENERIC_PUSH_LAYER = 5; // 0x5
15659    field public static final int UA_SECURITY_PROTOCOL_3GPP_HTTP_BASED_MBMS = 3; // 0x3
15660    field public static final int UA_SECURITY_PROTOCOL_3GPP_HTTP_DIGEST_AUTHENTICATION = 2; // 0x2
15661    field public static final int UA_SECURITY_PROTOCOL_3GPP_IMS_MEDIA_PLANE = 6; // 0x6
15662    field public static final int UA_SECURITY_PROTOCOL_3GPP_MBMS = 1; // 0x1
15663    field public static final int UA_SECURITY_PROTOCOL_3GPP_SIP_BASED_MBMS = 4; // 0x4
15664    field public static final int UA_SECURITY_PROTOCOL_3GPP_SUBSCRIBER_CERTIFICATE = 0; // 0x0
15665    field public static final int UA_SECURITY_PROTOCOL_3GPP_TLS_BROWSER = 131072; // 0x20000
15666    field public static final int UA_SECURITY_PROTOCOL_3GPP_TLS_DEFAULT = 65536; // 0x10000
15667  }
15668
15669  public static final class UaSecurityProtocolIdentifier.Builder {
15670    ctor public UaSecurityProtocolIdentifier.Builder();
15671    ctor public UaSecurityProtocolIdentifier.Builder(@NonNull android.telephony.gba.UaSecurityProtocolIdentifier);
15672    method @NonNull public android.telephony.gba.UaSecurityProtocolIdentifier build();
15673    method @NonNull public android.telephony.gba.UaSecurityProtocolIdentifier.Builder setOrg(int);
15674    method @NonNull public android.telephony.gba.UaSecurityProtocolIdentifier.Builder setProtocol(int);
15675    method @NonNull public android.telephony.gba.UaSecurityProtocolIdentifier.Builder setTlsCipherSuite(int);
15676  }
15677
15678}
15679
15680package android.telephony.ims {
15681
15682  public final class AudioCodecAttributes implements android.os.Parcelable {
15683    ctor public AudioCodecAttributes(float, @NonNull android.util.Range<java.lang.Float>, float, @NonNull android.util.Range<java.lang.Float>);
15684    method public int describeContents();
15685    method public float getBandwidthKhz();
15686    method @NonNull public android.util.Range<java.lang.Float> getBandwidthRangeKhz();
15687    method public float getBitrateKbps();
15688    method @NonNull public android.util.Range<java.lang.Float> getBitrateRangeKbps();
15689    method public void writeToParcel(@NonNull android.os.Parcel, int);
15690    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.AudioCodecAttributes> CREATOR;
15691  }
15692
15693  public interface DelegateMessageCallback {
15694    method public void onMessageReceived(@NonNull android.telephony.ims.SipMessage);
15695    method public void onMessageSendFailure(@NonNull String, int);
15696    method public void onMessageSent(@NonNull String);
15697  }
15698
15699  public final class DelegateRegistrationState implements android.os.Parcelable {
15700    method public int describeContents();
15701    method @NonNull public java.util.Set<android.telephony.ims.FeatureTagState> getDeregisteredFeatureTags();
15702    method @NonNull public java.util.Set<android.telephony.ims.FeatureTagState> getDeregisteringFeatureTags();
15703    method @NonNull public java.util.Set<java.lang.String> getRegisteredFeatureTags();
15704    method @NonNull public java.util.Set<java.lang.String> getRegisteringFeatureTags();
15705    method public void writeToParcel(@NonNull android.os.Parcel, int);
15706    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.DelegateRegistrationState> CREATOR;
15707    field public static final int DEREGISTERED_REASON_NOT_PROVISIONED = 1; // 0x1
15708    field public static final int DEREGISTERED_REASON_NOT_REGISTERED = 2; // 0x2
15709    field public static final int DEREGISTERED_REASON_UNKNOWN = 0; // 0x0
15710    field public static final int DEREGISTERING_REASON_DESTROY_PENDING = 6; // 0x6
15711    field public static final int DEREGISTERING_REASON_FEATURE_TAGS_CHANGING = 5; // 0x5
15712    field public static final int DEREGISTERING_REASON_LOSING_PDN = 7; // 0x7
15713    field public static final int DEREGISTERING_REASON_PDN_CHANGE = 3; // 0x3
15714    field public static final int DEREGISTERING_REASON_PROVISIONING_CHANGE = 4; // 0x4
15715    field public static final int DEREGISTERING_REASON_UNSPECIFIED = 8; // 0x8
15716  }
15717
15718  public static final class DelegateRegistrationState.Builder {
15719    ctor public DelegateRegistrationState.Builder();
15720    method @NonNull public android.telephony.ims.DelegateRegistrationState.Builder addDeregisteredFeatureTag(@NonNull String, int);
15721    method @NonNull public android.telephony.ims.DelegateRegistrationState.Builder addDeregisteringFeatureTag(@NonNull String, int);
15722    method @NonNull public android.telephony.ims.DelegateRegistrationState.Builder addRegisteredFeatureTag(@NonNull String);
15723    method @NonNull public android.telephony.ims.DelegateRegistrationState.Builder addRegisteredFeatureTags(@NonNull java.util.Set<java.lang.String>);
15724    method @NonNull public android.telephony.ims.DelegateRegistrationState.Builder addRegisteringFeatureTags(@NonNull java.util.Set<java.lang.String>);
15725    method @NonNull public android.telephony.ims.DelegateRegistrationState build();
15726  }
15727
15728  public final class DelegateRequest implements android.os.Parcelable {
15729    ctor public DelegateRequest(@NonNull java.util.Set<java.lang.String>);
15730    method public int describeContents();
15731    method @NonNull public java.util.Set<java.lang.String> getFeatureTags();
15732    method public void writeToParcel(@NonNull android.os.Parcel, int);
15733    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.DelegateRequest> CREATOR;
15734  }
15735
15736  public interface DelegateStateCallback {
15737    method public void onConfigurationChanged(@NonNull android.telephony.ims.SipDelegateConfiguration);
15738    method public void onCreated(@NonNull android.telephony.ims.stub.SipDelegate, @Nullable java.util.Set<android.telephony.ims.FeatureTagState>);
15739    method public void onDestroyed(int);
15740    method public void onFeatureTagRegistrationChanged(@NonNull android.telephony.ims.DelegateRegistrationState);
15741  }
15742
15743  public final class FeatureTagState implements android.os.Parcelable {
15744    ctor public FeatureTagState(@NonNull String, int);
15745    method public int describeContents();
15746    method @NonNull public String getFeatureTag();
15747    method public int getState();
15748    method public void writeToParcel(@NonNull android.os.Parcel, int);
15749    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.FeatureTagState> CREATOR;
15750  }
15751
15752  public final class ImsCallForwardInfo implements android.os.Parcelable {
15753    ctor public ImsCallForwardInfo(int, int, int, int, @NonNull String, int);
15754    method public int describeContents();
15755    method public int getCondition();
15756    method public String getNumber();
15757    method public int getServiceClass();
15758    method public int getStatus();
15759    method public int getTimeSeconds();
15760    method public int getToA();
15761    method public void writeToParcel(android.os.Parcel, int);
15762    field public static final int CDIV_CF_REASON_ALL = 4; // 0x4
15763    field public static final int CDIV_CF_REASON_ALL_CONDITIONAL = 5; // 0x5
15764    field public static final int CDIV_CF_REASON_BUSY = 1; // 0x1
15765    field public static final int CDIV_CF_REASON_NOT_LOGGED_IN = 6; // 0x6
15766    field public static final int CDIV_CF_REASON_NOT_REACHABLE = 3; // 0x3
15767    field public static final int CDIV_CF_REASON_NO_REPLY = 2; // 0x2
15768    field public static final int CDIV_CF_REASON_UNCONDITIONAL = 0; // 0x0
15769    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.ImsCallForwardInfo> CREATOR;
15770    field public static final int STATUS_ACTIVE = 1; // 0x1
15771    field public static final int STATUS_NOT_ACTIVE = 0; // 0x0
15772    field public static final int TYPE_OF_ADDRESS_INTERNATIONAL = 145; // 0x91
15773    field public static final int TYPE_OF_ADDRESS_UNKNOWN = 129; // 0x81
15774  }
15775
15776  public final class ImsCallProfile implements android.os.Parcelable {
15777    ctor public ImsCallProfile();
15778    ctor public ImsCallProfile(int, int);
15779    ctor public ImsCallProfile(int, int, android.os.Bundle, android.telephony.ims.ImsStreamMediaProfile);
15780    method public int describeContents();
15781    method @NonNull public java.util.Set<android.telephony.ims.RtpHeaderExtensionType> getAcceptedRtpHeaderExtensionTypes();
15782    method public String getCallExtra(String);
15783    method public String getCallExtra(String, String);
15784    method public boolean getCallExtraBoolean(String);
15785    method public boolean getCallExtraBoolean(String, boolean);
15786    method public int getCallExtraInt(String);
15787    method public int getCallExtraInt(String, int);
15788    method @Nullable public <T extends android.os.Parcelable> T getCallExtraParcelable(@Nullable String);
15789    method public android.os.Bundle getCallExtras();
15790    method public int getCallType();
15791    method public static int getCallTypeFromVideoState(int);
15792    method public int getCallerNumberVerificationStatus();
15793    method public int getEmergencyCallRouting();
15794    method public int getEmergencyServiceCategories();
15795    method @NonNull public java.util.List<java.lang.String> getEmergencyUrns();
15796    method public android.telephony.ims.ImsStreamMediaProfile getMediaProfile();
15797    method @NonNull public android.os.Bundle getProprietaryCallExtras();
15798    method public int getRestrictCause();
15799    method public int getServiceType();
15800    method public static int getVideoStateFromCallType(int);
15801    method public static int getVideoStateFromImsCallProfile(android.telephony.ims.ImsCallProfile);
15802    method public boolean hasKnownUserIntentEmergency();
15803    method public boolean isEmergencyCallTesting();
15804    method public boolean isVideoCall();
15805    method public boolean isVideoPaused();
15806    method public static int presentationToOir(int);
15807    method public void setAcceptedRtpHeaderExtensionTypes(@NonNull java.util.Set<android.telephony.ims.RtpHeaderExtensionType>);
15808    method public void setCallExtra(String, String);
15809    method public void setCallExtraBoolean(String, boolean);
15810    method public void setCallExtraInt(String, int);
15811    method public void setCallExtraParcelable(@NonNull String, @NonNull android.os.Parcelable);
15812    method public void setCallRestrictCause(int);
15813    method public void setCallerNumberVerificationStatus(int);
15814    method public void setEmergencyCallRouting(int);
15815    method public void setEmergencyCallTesting(boolean);
15816    method public void setEmergencyServiceCategories(int);
15817    method public void setEmergencyUrns(@NonNull java.util.List<java.lang.String>);
15818    method public void setHasKnownUserIntentEmergency(boolean);
15819    method public void updateCallExtras(android.telephony.ims.ImsCallProfile);
15820    method public void updateCallType(android.telephony.ims.ImsCallProfile);
15821    method public void updateMediaProfile(android.telephony.ims.ImsCallProfile);
15822    method public void writeToParcel(android.os.Parcel, int);
15823    field public static final int CALL_RESTRICT_CAUSE_DISABLED = 2; // 0x2
15824    field public static final int CALL_RESTRICT_CAUSE_HD = 3; // 0x3
15825    field public static final int CALL_RESTRICT_CAUSE_NONE = 0; // 0x0
15826    field public static final int CALL_RESTRICT_CAUSE_RAT = 1; // 0x1
15827    field public static final int CALL_TYPE_NONE = 0; // 0x0
15828    field public static final int CALL_TYPE_VIDEO_N_VOICE = 3; // 0x3
15829    field public static final int CALL_TYPE_VOICE = 2; // 0x2
15830    field public static final int CALL_TYPE_VOICE_N_VIDEO = 1; // 0x1
15831    field public static final int CALL_TYPE_VS = 8; // 0x8
15832    field public static final int CALL_TYPE_VS_RX = 10; // 0xa
15833    field public static final int CALL_TYPE_VS_TX = 9; // 0x9
15834    field public static final int CALL_TYPE_VT = 4; // 0x4
15835    field public static final int CALL_TYPE_VT_NODIR = 7; // 0x7
15836    field public static final int CALL_TYPE_VT_RX = 6; // 0x6
15837    field public static final int CALL_TYPE_VT_TX = 5; // 0x5
15838    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.ImsCallProfile> CREATOR;
15839    field public static final int DIALSTRING_NORMAL = 0; // 0x0
15840    field public static final int DIALSTRING_SS_CONF = 1; // 0x1
15841    field public static final int DIALSTRING_USSD = 2; // 0x2
15842    field public static final String EXTRA_ADDITIONAL_CALL_INFO = "AdditionalCallInfo";
15843    field public static final String EXTRA_ADDITIONAL_SIP_INVITE_FIELDS = "android.telephony.ims.extra.ADDITIONAL_SIP_INVITE_FIELDS";
15844    field public static final String EXTRA_CALL_DISCONNECT_CAUSE = "android.telephony.ims.extra.CALL_DISCONNECT_CAUSE";
15845    field public static final String EXTRA_CALL_NETWORK_TYPE = "android.telephony.ims.extra.CALL_NETWORK_TYPE";
15846    field @Deprecated public static final String EXTRA_CALL_RAT_TYPE = "CallRadioTech";
15847    field public static final String EXTRA_CALL_SUBJECT = "android.telephony.ims.extra.CALL_SUBJECT";
15848    field public static final String EXTRA_CHILD_NUMBER = "ChildNum";
15849    field public static final String EXTRA_CNA = "cna";
15850    field public static final String EXTRA_CNAP = "cnap";
15851    field public static final String EXTRA_CODEC = "Codec";
15852    field public static final String EXTRA_CONFERENCE = "android.telephony.ims.extra.CONFERENCE";
15853    field public static final String EXTRA_DIALSTRING = "dialstring";
15854    field public static final String EXTRA_DISPLAY_TEXT = "DisplayText";
15855    field public static final String EXTRA_EMERGENCY_CALL = "e_call";
15856    field public static final String EXTRA_EXTENDING_TO_CONFERENCE_SUPPORTED = "android.telephony.ims.extra.EXTENDING_TO_CONFERENCE_SUPPORTED";
15857    field public static final String EXTRA_FORWARDED_NUMBER = "android.telephony.ims.extra.FORWARDED_NUMBER";
15858    field public static final String EXTRA_IS_BUSINESS_CALL = "android.telephony.ims.extra.IS_BUSINESS_CALL";
15859    field public static final String EXTRA_IS_CALL_PULL = "CallPull";
15860    field public static final String EXTRA_IS_CROSS_SIM_CALL = "android.telephony.ims.extra.IS_CROSS_SIM_CALL";
15861    field public static final String EXTRA_LOCATION = "android.telephony.ims.extra.LOCATION";
15862    field public static final String EXTRA_OI = "oi";
15863    field public static final String EXTRA_OIR = "oir";
15864    field public static final String EXTRA_PICTURE_URL = "android.telephony.ims.extra.PICTURE_URL";
15865    field public static final String EXTRA_PRIORITY = "android.telephony.ims.extra.PRIORITY";
15866    field public static final String EXTRA_REMOTE_URI = "remote_uri";
15867    field public static final String EXTRA_USSD = "ussd";
15868    field public static final int OIR_DEFAULT = 0; // 0x0
15869    field public static final int OIR_PRESENTATION_NOT_RESTRICTED = 2; // 0x2
15870    field public static final int OIR_PRESENTATION_PAYPHONE = 4; // 0x4
15871    field public static final int OIR_PRESENTATION_RESTRICTED = 1; // 0x1
15872    field public static final int OIR_PRESENTATION_UNAVAILABLE = 5; // 0x5
15873    field public static final int OIR_PRESENTATION_UNKNOWN = 3; // 0x3
15874    field public static final int PRIORITY_NORMAL = 0; // 0x0
15875    field public static final int PRIORITY_URGENT = 1; // 0x1
15876    field public static final int SERVICE_TYPE_EMERGENCY = 2; // 0x2
15877    field public static final int SERVICE_TYPE_NONE = 0; // 0x0
15878    field public static final int SERVICE_TYPE_NORMAL = 1; // 0x1
15879    field public static final int VERIFICATION_STATUS_FAILED = 2; // 0x2
15880    field public static final int VERIFICATION_STATUS_NOT_VERIFIED = 0; // 0x0
15881    field public static final int VERIFICATION_STATUS_PASSED = 1; // 0x1
15882  }
15883
15884  public class ImsCallSessionListener {
15885    method public void callQualityChanged(@NonNull android.telephony.CallQuality);
15886    method public void callSessionConferenceExtendFailed(android.telephony.ims.ImsReasonInfo);
15887    method public void callSessionConferenceExtendReceived(android.telephony.ims.stub.ImsCallSessionImplBase, android.telephony.ims.ImsCallProfile);
15888    method public void callSessionConferenceExtended(android.telephony.ims.stub.ImsCallSessionImplBase, android.telephony.ims.ImsCallProfile);
15889    method public void callSessionConferenceStateUpdated(android.telephony.ims.ImsConferenceState);
15890    method public void callSessionDtmfReceived(char);
15891    method @Deprecated public void callSessionHandover(int, int, android.telephony.ims.ImsReasonInfo);
15892    method @Deprecated public void callSessionHandoverFailed(int, int, android.telephony.ims.ImsReasonInfo);
15893    method public void callSessionHeld(android.telephony.ims.ImsCallProfile);
15894    method public void callSessionHoldFailed(android.telephony.ims.ImsReasonInfo);
15895    method public void callSessionHoldReceived(android.telephony.ims.ImsCallProfile);
15896    method public void callSessionInitiated(android.telephony.ims.ImsCallProfile);
15897    method @Deprecated public void callSessionInitiatedFailed(android.telephony.ims.ImsReasonInfo);
15898    method public void callSessionInitiating(@NonNull android.telephony.ims.ImsCallProfile);
15899    method public void callSessionInitiatingFailed(@NonNull android.telephony.ims.ImsReasonInfo);
15900    method public void callSessionInviteParticipantsRequestDelivered();
15901    method public void callSessionInviteParticipantsRequestFailed(android.telephony.ims.ImsReasonInfo);
15902    method @Deprecated public void callSessionMayHandover(int, int);
15903    method public void callSessionMergeComplete(android.telephony.ims.stub.ImsCallSessionImplBase);
15904    method public void callSessionMergeFailed(android.telephony.ims.ImsReasonInfo);
15905    method public void callSessionMergeStarted(android.telephony.ims.stub.ImsCallSessionImplBase, android.telephony.ims.ImsCallProfile);
15906    method public void callSessionMultipartyStateChanged(boolean);
15907    method public void callSessionProgressing(android.telephony.ims.ImsStreamMediaProfile);
15908    method public void callSessionRemoveParticipantsRequestDelivered();
15909    method public void callSessionRemoveParticipantsRequestFailed(android.telephony.ims.ImsReasonInfo);
15910    method public void callSessionResumeFailed(android.telephony.ims.ImsReasonInfo);
15911    method public void callSessionResumeReceived(android.telephony.ims.ImsCallProfile);
15912    method public void callSessionResumed(android.telephony.ims.ImsCallProfile);
15913    method public void callSessionRtpHeaderExtensionsReceived(@NonNull java.util.Set<android.telephony.ims.RtpHeaderExtension>);
15914    method public void callSessionRttAudioIndicatorChanged(@NonNull android.telephony.ims.ImsStreamMediaProfile);
15915    method public void callSessionRttMessageReceived(String);
15916    method public void callSessionRttModifyRequestReceived(android.telephony.ims.ImsCallProfile);
15917    method public void callSessionRttModifyResponseReceived(int);
15918    method public void callSessionSuppServiceReceived(android.telephony.ims.ImsSuppServiceNotification);
15919    method public void callSessionTerminated(android.telephony.ims.ImsReasonInfo);
15920    method public void callSessionTtyModeReceived(int);
15921    method public void callSessionUpdateFailed(android.telephony.ims.ImsReasonInfo);
15922    method public void callSessionUpdateReceived(android.telephony.ims.ImsCallProfile);
15923    method public void callSessionUpdated(android.telephony.ims.ImsCallProfile);
15924    method public void callSessionUssdMessageReceived(int, String);
15925    method public void onHandover(int, int, @Nullable android.telephony.ims.ImsReasonInfo);
15926    method public void onHandoverFailed(int, int, @NonNull android.telephony.ims.ImsReasonInfo);
15927    method public void onMayHandover(int, int);
15928  }
15929
15930  public final class ImsConferenceState implements android.os.Parcelable {
15931    method public int describeContents();
15932    method public static int getConnectionStateForStatus(String);
15933    method public void writeToParcel(android.os.Parcel, int);
15934    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.ImsConferenceState> CREATOR;
15935    field public static final String DISPLAY_TEXT = "display-text";
15936    field public static final String ENDPOINT = "endpoint";
15937    field public static final String SIP_STATUS_CODE = "sipstatuscode";
15938    field public static final String STATUS = "status";
15939    field public static final String STATUS_ALERTING = "alerting";
15940    field public static final String STATUS_CONNECTED = "connected";
15941    field public static final String STATUS_CONNECT_FAIL = "connect-fail";
15942    field public static final String STATUS_DIALING_IN = "dialing-in";
15943    field public static final String STATUS_DIALING_OUT = "dialing-out";
15944    field public static final String STATUS_DISCONNECTED = "disconnected";
15945    field public static final String STATUS_DISCONNECTING = "disconnecting";
15946    field public static final String STATUS_MUTED_VIA_FOCUS = "muted-via-focus";
15947    field public static final String STATUS_ON_HOLD = "on-hold";
15948    field public static final String STATUS_PENDING = "pending";
15949    field public static final String STATUS_SEND_ONLY = "sendonly";
15950    field public static final String STATUS_SEND_RECV = "sendrecv";
15951    field public static final String USER = "user";
15952    field public final java.util.HashMap<java.lang.String,android.os.Bundle> mParticipants;
15953  }
15954
15955  public final class ImsException extends java.lang.Exception {
15956    ctor public ImsException(@Nullable String);
15957    ctor public ImsException(@Nullable String, int);
15958    ctor public ImsException(@Nullable String, int, @Nullable Throwable);
15959  }
15960
15961  public final class ImsExternalCallState implements android.os.Parcelable {
15962    ctor public ImsExternalCallState(@NonNull String, @NonNull android.net.Uri, @Nullable android.net.Uri, boolean, int, int, boolean);
15963    method public int describeContents();
15964    method @NonNull public android.net.Uri getAddress();
15965    method public int getCallId();
15966    method public int getCallState();
15967    method public int getCallType();
15968    method @Nullable public android.net.Uri getLocalAddress();
15969    method public boolean isCallHeld();
15970    method public boolean isCallPullable();
15971    method public void writeToParcel(android.os.Parcel, int);
15972    field public static final int CALL_STATE_CONFIRMED = 1; // 0x1
15973    field public static final int CALL_STATE_TERMINATED = 2; // 0x2
15974    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.ImsExternalCallState> CREATOR;
15975  }
15976
15977  public class ImsManager {
15978    method @NonNull public android.telephony.ims.SipDelegateManager getSipDelegateManager(int);
15979  }
15980
15981  public class ImsMmTelManager implements android.telephony.ims.RegistrationManager {
15982    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);
15983    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;
15984    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>);
15985    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getVoWiFiRoamingModeSetting();
15986    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isAvailable(int, int);
15987    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isCapable(int, int);
15988    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;
15989    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;
15990    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setAdvancedCallingSettingEnabled(boolean);
15991    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setCrossSimCallingEnabled(boolean) throws android.telephony.ims.ImsException;
15992    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setRttCapabilitySetting(boolean);
15993    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setVoWiFiModeSetting(int);
15994    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setVoWiFiNonPersistent(boolean, int);
15995    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setVoWiFiRoamingModeSetting(int);
15996    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setVoWiFiRoamingSettingEnabled(boolean);
15997    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setVoWiFiSettingEnabled(boolean);
15998    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setVtSettingEnabled(boolean);
15999    method @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void unregisterImsRegistrationCallback(@NonNull android.telephony.ims.ImsMmTelManager.RegistrationCallback);
16000  }
16001
16002  @Deprecated public static class ImsMmTelManager.RegistrationCallback extends android.telephony.ims.RegistrationManager.RegistrationCallback {
16003    ctor @Deprecated public ImsMmTelManager.RegistrationCallback();
16004    method @Deprecated public void onRegistered(int);
16005    method @Deprecated public void onRegistering(int);
16006  }
16007
16008  public class ImsRcsManager {
16009    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;
16010    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isAvailable(int, int) throws android.telephony.ims.ImsException;
16011    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isCapable(int, int) throws android.telephony.ims.ImsException;
16012    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void removeOnAvailabilityChangedListener(@NonNull android.telephony.ims.ImsRcsManager.OnAvailabilityChangedListener);
16013  }
16014
16015  public static interface ImsRcsManager.OnAvailabilityChangedListener {
16016    method public void onAvailabilityChanged(int);
16017  }
16018
16019  public final class ImsReasonInfo implements android.os.Parcelable {
16020    field public static final String EXTRA_MSG_SERVICE_NOT_AUTHORIZED = "Forbidden. Not Authorized for Service";
16021  }
16022
16023  public final class ImsRegistrationAttributes implements android.os.Parcelable {
16024    method public int getRegistrationTechnology();
16025  }
16026
16027  public static final class ImsRegistrationAttributes.Builder {
16028    ctor public ImsRegistrationAttributes.Builder(int);
16029    method @NonNull public android.telephony.ims.ImsRegistrationAttributes build();
16030    method @NonNull public android.telephony.ims.ImsRegistrationAttributes.Builder setFeatureTags(@NonNull java.util.Set<java.lang.String>);
16031    method @NonNull public android.telephony.ims.ImsRegistrationAttributes.Builder setSipDetails(@NonNull android.telephony.ims.SipDetails);
16032  }
16033
16034  public class ImsService extends android.app.Service {
16035    ctor public ImsService();
16036    method @Nullable public android.telephony.ims.feature.MmTelFeature createEmergencyOnlyMmTelFeature(int);
16037    method @Deprecated public android.telephony.ims.feature.MmTelFeature createMmTelFeature(int);
16038    method @Nullable public android.telephony.ims.feature.MmTelFeature createMmTelFeatureForSubscription(int, int);
16039    method @Deprecated public android.telephony.ims.feature.RcsFeature createRcsFeature(int);
16040    method @Nullable public android.telephony.ims.feature.RcsFeature createRcsFeatureForSubscription(int, int);
16041    method @Deprecated public void disableIms(int);
16042    method public void disableImsForSubscription(int, int);
16043    method @Deprecated public void enableIms(int);
16044    method public void enableImsForSubscription(int, int);
16045    method @Deprecated public android.telephony.ims.stub.ImsConfigImplBase getConfig(int);
16046    method @NonNull public android.telephony.ims.stub.ImsConfigImplBase getConfigForSubscription(int, int);
16047    method @NonNull public java.util.concurrent.Executor getExecutor();
16048    method public long getImsServiceCapabilities();
16049    method @Deprecated public android.telephony.ims.stub.ImsRegistrationImplBase getRegistration(int);
16050    method @NonNull public android.telephony.ims.stub.ImsRegistrationImplBase getRegistrationForSubscription(int, int);
16051    method @Nullable public android.telephony.ims.stub.SipTransportImplBase getSipTransport(int);
16052    method public final void onUpdateSupportedImsFeatures(android.telephony.ims.stub.ImsFeatureConfiguration) throws android.os.RemoteException;
16053    method public android.telephony.ims.stub.ImsFeatureConfiguration querySupportedImsFeatures();
16054    method public void readyForFeatureCreation();
16055    field public static final long CAPABILITY_SIP_DELEGATE_CREATION = 2L; // 0x2L
16056    field public static final long CAPABILITY_TERMINAL_BASED_CALL_WAITING = 4L; // 0x4L
16057  }
16058
16059  public final class ImsSsData implements android.os.Parcelable {
16060    ctor public ImsSsData(int, int, int, int, int);
16061    method public int describeContents();
16062    method @Nullable public java.util.List<android.telephony.ims.ImsCallForwardInfo> getCallForwardInfo();
16063    method public int getRequestType();
16064    method public int getResult();
16065    method public int getServiceClass();
16066    method public int getServiceType();
16067    method @NonNull public java.util.List<android.telephony.ims.ImsSsInfo> getSuppServiceInfo();
16068    method public int getTeleserviceType();
16069    method public boolean isTypeBarring();
16070    method public boolean isTypeCf();
16071    method public boolean isTypeClip();
16072    method public boolean isTypeClir();
16073    method public boolean isTypeColp();
16074    method public boolean isTypeColr();
16075    method public boolean isTypeCw();
16076    method public boolean isTypeIcb();
16077    method public boolean isTypeInterrogation();
16078    method public boolean isTypeUnConditional();
16079    method public void writeToParcel(android.os.Parcel, int);
16080    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.ImsSsData> CREATOR;
16081    field public static final int RESULT_SUCCESS = 0; // 0x0
16082    field public static final int SERVICE_CLASS_DATA = 2; // 0x2
16083    field public static final int SERVICE_CLASS_DATA_CIRCUIT_ASYNC = 32; // 0x20
16084    field public static final int SERVICE_CLASS_DATA_CIRCUIT_SYNC = 16; // 0x10
16085    field public static final int SERVICE_CLASS_DATA_PACKET_ACCESS = 64; // 0x40
16086    field public static final int SERVICE_CLASS_DATA_PAD = 128; // 0x80
16087    field public static final int SERVICE_CLASS_FAX = 4; // 0x4
16088    field public static final int SERVICE_CLASS_NONE = 0; // 0x0
16089    field public static final int SERVICE_CLASS_SMS = 8; // 0x8
16090    field public static final int SERVICE_CLASS_VOICE = 1; // 0x1
16091    field public static final int SS_ACTIVATION = 0; // 0x0
16092    field public static final int SS_ALL_BARRING = 18; // 0x12
16093    field public static final int SS_ALL_DATA_TELESERVICES = 3; // 0x3
16094    field public static final int SS_ALL_TELESERVICES_EXCEPT_SMS = 5; // 0x5
16095    field public static final int SS_ALL_TELESEVICES = 1; // 0x1
16096    field public static final int SS_ALL_TELE_AND_BEARER_SERVICES = 0; // 0x0
16097    field public static final int SS_BAIC = 16; // 0x10
16098    field public static final int SS_BAIC_ROAMING = 17; // 0x11
16099    field public static final int SS_BAOC = 13; // 0xd
16100    field public static final int SS_BAOIC = 14; // 0xe
16101    field public static final int SS_BAOIC_EXC_HOME = 15; // 0xf
16102    field public static final int SS_CFU = 0; // 0x0
16103    field public static final int SS_CFUT = 6; // 0x6
16104    field public static final int SS_CF_ALL = 4; // 0x4
16105    field public static final int SS_CF_ALL_CONDITIONAL = 5; // 0x5
16106    field public static final int SS_CF_BUSY = 1; // 0x1
16107    field public static final int SS_CF_NOT_REACHABLE = 3; // 0x3
16108    field public static final int SS_CF_NO_REPLY = 2; // 0x2
16109    field public static final int SS_CLIP = 7; // 0x7
16110    field public static final int SS_CLIR = 8; // 0x8
16111    field public static final int SS_CNAP = 11; // 0xb
16112    field public static final int SS_COLP = 9; // 0x9
16113    field public static final int SS_COLR = 10; // 0xa
16114    field public static final int SS_DEACTIVATION = 1; // 0x1
16115    field public static final int SS_ERASURE = 4; // 0x4
16116    field public static final int SS_INCOMING_BARRING = 20; // 0x14
16117    field public static final int SS_INCOMING_BARRING_ANONYMOUS = 22; // 0x16
16118    field public static final int SS_INCOMING_BARRING_DN = 21; // 0x15
16119    field public static final int SS_INTERROGATION = 2; // 0x2
16120    field public static final int SS_OUTGOING_BARRING = 19; // 0x13
16121    field public static final int SS_REGISTRATION = 3; // 0x3
16122    field public static final int SS_SMS_SERVICES = 4; // 0x4
16123    field public static final int SS_TELEPHONY = 2; // 0x2
16124    field public static final int SS_WAIT = 12; // 0xc
16125  }
16126
16127  public static final class ImsSsData.Builder {
16128    ctor public ImsSsData.Builder(int, int, int, int, int);
16129    method @NonNull public android.telephony.ims.ImsSsData build();
16130    method @NonNull public android.telephony.ims.ImsSsData.Builder setCallForwardingInfo(@NonNull java.util.List<android.telephony.ims.ImsCallForwardInfo>);
16131    method @NonNull public android.telephony.ims.ImsSsData.Builder setSuppServiceInfo(@NonNull java.util.List<android.telephony.ims.ImsSsInfo>);
16132  }
16133
16134  public final class ImsSsInfo implements android.os.Parcelable {
16135    ctor @Deprecated public ImsSsInfo(int, @Nullable String);
16136    method public int describeContents();
16137    method public int getClirInterrogationStatus();
16138    method public int getClirOutgoingState();
16139    method @Deprecated public String getIcbNum();
16140    method @Nullable public String getIncomingCommunicationBarringNumber();
16141    method public int getProvisionStatus();
16142    method public int getStatus();
16143    method public void writeToParcel(android.os.Parcel, int);
16144    field public static final int CLIR_OUTGOING_DEFAULT = 0; // 0x0
16145    field public static final int CLIR_OUTGOING_INVOCATION = 1; // 0x1
16146    field public static final int CLIR_OUTGOING_SUPPRESSION = 2; // 0x2
16147    field public static final int CLIR_STATUS_NOT_PROVISIONED = 0; // 0x0
16148    field public static final int CLIR_STATUS_PROVISIONED_PERMANENT = 1; // 0x1
16149    field public static final int CLIR_STATUS_TEMPORARILY_ALLOWED = 4; // 0x4
16150    field public static final int CLIR_STATUS_TEMPORARILY_RESTRICTED = 3; // 0x3
16151    field public static final int CLIR_STATUS_UNKNOWN = 2; // 0x2
16152    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.ImsSsInfo> CREATOR;
16153    field public static final int DISABLED = 0; // 0x0
16154    field public static final int ENABLED = 1; // 0x1
16155    field public static final int NOT_REGISTERED = -1; // 0xffffffff
16156    field public static final int SERVICE_NOT_PROVISIONED = 0; // 0x0
16157    field public static final int SERVICE_PROVISIONED = 1; // 0x1
16158    field public static final int SERVICE_PROVISIONING_UNKNOWN = -1; // 0xffffffff
16159  }
16160
16161  public static final class ImsSsInfo.Builder {
16162    ctor public ImsSsInfo.Builder(int);
16163    method @NonNull public android.telephony.ims.ImsSsInfo build();
16164    method @NonNull public android.telephony.ims.ImsSsInfo.Builder setClirInterrogationStatus(int);
16165    method @NonNull public android.telephony.ims.ImsSsInfo.Builder setClirOutgoingState(int);
16166    method @NonNull public android.telephony.ims.ImsSsInfo.Builder setIncomingCommunicationBarringNumber(@NonNull String);
16167    method @NonNull public android.telephony.ims.ImsSsInfo.Builder setProvisionStatus(int);
16168  }
16169
16170  public final class ImsStreamMediaProfile implements android.os.Parcelable {
16171    ctor public ImsStreamMediaProfile(int, int, int, int, int);
16172    method public void copyFrom(android.telephony.ims.ImsStreamMediaProfile);
16173    method public int describeContents();
16174    method @Nullable public android.telephony.ims.AudioCodecAttributes getAudioCodecAttributes();
16175    method public int getAudioDirection();
16176    method public int getAudioQuality();
16177    method public int getRttMode();
16178    method public int getVideoDirection();
16179    method public int getVideoQuality();
16180    method public boolean isReceivingRttAudio();
16181    method public boolean isRttCall();
16182    method public void setAudioCodecAttributes(@NonNull android.telephony.ims.AudioCodecAttributes);
16183    method public void setReceivingRttAudio(boolean);
16184    method public void setRttMode(int);
16185    method public void writeToParcel(android.os.Parcel, int);
16186    field public static final int AUDIO_QUALITY_AMR = 1; // 0x1
16187    field public static final int AUDIO_QUALITY_AMR_WB = 2; // 0x2
16188    field public static final int AUDIO_QUALITY_EVRC = 4; // 0x4
16189    field public static final int AUDIO_QUALITY_EVRC_B = 5; // 0x5
16190    field public static final int AUDIO_QUALITY_EVRC_NW = 7; // 0x7
16191    field public static final int AUDIO_QUALITY_EVRC_WB = 6; // 0x6
16192    field public static final int AUDIO_QUALITY_EVS_FB = 20; // 0x14
16193    field public static final int AUDIO_QUALITY_EVS_NB = 17; // 0x11
16194    field public static final int AUDIO_QUALITY_EVS_SWB = 19; // 0x13
16195    field public static final int AUDIO_QUALITY_EVS_WB = 18; // 0x12
16196    field public static final int AUDIO_QUALITY_G711A = 13; // 0xd
16197    field public static final int AUDIO_QUALITY_G711AB = 15; // 0xf
16198    field public static final int AUDIO_QUALITY_G711U = 11; // 0xb
16199    field public static final int AUDIO_QUALITY_G722 = 14; // 0xe
16200    field public static final int AUDIO_QUALITY_G723 = 12; // 0xc
16201    field public static final int AUDIO_QUALITY_G729 = 16; // 0x10
16202    field public static final int AUDIO_QUALITY_GSM_EFR = 8; // 0x8
16203    field public static final int AUDIO_QUALITY_GSM_FR = 9; // 0x9
16204    field public static final int AUDIO_QUALITY_GSM_HR = 10; // 0xa
16205    field public static final int AUDIO_QUALITY_NONE = 0; // 0x0
16206    field public static final int AUDIO_QUALITY_QCELP13K = 3; // 0x3
16207    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.ImsStreamMediaProfile> CREATOR;
16208    field public static final int DIRECTION_INACTIVE = 0; // 0x0
16209    field public static final int DIRECTION_INVALID = -1; // 0xffffffff
16210    field public static final int DIRECTION_RECEIVE = 1; // 0x1
16211    field public static final int DIRECTION_SEND = 2; // 0x2
16212    field public static final int DIRECTION_SEND_RECEIVE = 3; // 0x3
16213    field public static final int RTT_MODE_DISABLED = 0; // 0x0
16214    field public static final int RTT_MODE_FULL = 1; // 0x1
16215    field public static final int VIDEO_QUALITY_NONE = 0; // 0x0
16216    field public static final int VIDEO_QUALITY_QCIF = 1; // 0x1
16217    field public static final int VIDEO_QUALITY_QVGA_LANDSCAPE = 2; // 0x2
16218    field public static final int VIDEO_QUALITY_QVGA_PORTRAIT = 4; // 0x4
16219    field public static final int VIDEO_QUALITY_VGA_LANDSCAPE = 8; // 0x8
16220    field public static final int VIDEO_QUALITY_VGA_PORTRAIT = 16; // 0x10
16221  }
16222
16223  public final class ImsSuppServiceNotification implements android.os.Parcelable {
16224    ctor public ImsSuppServiceNotification(int, int, int, int, String, String[]);
16225    method public int describeContents();
16226    method public void writeToParcel(android.os.Parcel, int);
16227    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.ImsSuppServiceNotification> CREATOR;
16228    field public final int code;
16229    field public final String[] history;
16230    field public final int index;
16231    field public final int notificationType;
16232    field public final String number;
16233    field public final int type;
16234  }
16235
16236  public class ImsUtListener {
16237    method public void onLineIdentificationSupplementaryServiceResponse(int, @NonNull android.telephony.ims.ImsSsInfo);
16238    method public void onSupplementaryServiceIndication(android.telephony.ims.ImsSsData);
16239    method public void onUtConfigurationCallBarringQueried(int, android.telephony.ims.ImsSsInfo[]);
16240    method public void onUtConfigurationCallForwardQueried(int, android.telephony.ims.ImsCallForwardInfo[]);
16241    method public void onUtConfigurationCallWaitingQueried(int, android.telephony.ims.ImsSsInfo[]);
16242    method @Deprecated public void onUtConfigurationQueried(int, android.os.Bundle);
16243    method public void onUtConfigurationQueryFailed(int, android.telephony.ims.ImsReasonInfo);
16244    method public void onUtConfigurationUpdateFailed(int, android.telephony.ims.ImsReasonInfo);
16245    method public void onUtConfigurationUpdated(int);
16246    field @Deprecated public static final String BUNDLE_KEY_CLIR = "queryClir";
16247    field @Deprecated public static final String BUNDLE_KEY_SSINFO = "imsSsInfo";
16248  }
16249
16250  public abstract class ImsVideoCallProvider {
16251    ctor public ImsVideoCallProvider();
16252    method public void changeCallDataUsage(long);
16253    method public void changeCameraCapabilities(android.telecom.VideoProfile.CameraCapabilities);
16254    method public void changePeerDimensions(int, int);
16255    method public void changeVideoQuality(int);
16256    method public void handleCallSessionEvent(int);
16257    method public abstract void onRequestCallDataUsage();
16258    method public abstract void onRequestCameraCapabilities();
16259    method public abstract void onSendSessionModifyRequest(android.telecom.VideoProfile, android.telecom.VideoProfile);
16260    method public abstract void onSendSessionModifyResponse(android.telecom.VideoProfile);
16261    method public abstract void onSetCamera(String);
16262    method public void onSetCamera(String, int);
16263    method public abstract void onSetDeviceOrientation(int);
16264    method public abstract void onSetDisplaySurface(android.view.Surface);
16265    method public abstract void onSetPauseImage(android.net.Uri);
16266    method public abstract void onSetPreviewSurface(android.view.Surface);
16267    method public abstract void onSetZoom(float);
16268    method public void receiveSessionModifyRequest(android.telecom.VideoProfile);
16269    method public void receiveSessionModifyResponse(int, android.telecom.VideoProfile, android.telecom.VideoProfile);
16270  }
16271
16272  public final class MediaQualityStatus implements android.os.Parcelable {
16273    ctor public MediaQualityStatus(@NonNull String, int, int, @IntRange(from=0, to=100) int, @IntRange(from=0) int, @IntRange(from=0) long);
16274    method public int describeContents();
16275    method @NonNull public String getCallSessionId();
16276    method public int getMediaSessionType();
16277    method @IntRange(from=0) public long getRtpInactivityMillis();
16278    method @IntRange(from=0) public int getRtpJitterMillis();
16279    method @IntRange(from=0, to=100) public int getRtpPacketLossRate();
16280    method public int getTransportType();
16281    method public void writeToParcel(@NonNull android.os.Parcel, int);
16282    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.MediaQualityStatus> CREATOR;
16283    field public static final int MEDIA_SESSION_TYPE_AUDIO = 1; // 0x1
16284    field public static final int MEDIA_SESSION_TYPE_VIDEO = 2; // 0x2
16285  }
16286
16287  public final class MediaThreshold implements android.os.Parcelable {
16288    method public int describeContents();
16289    method @NonNull public long[] getThresholdsRtpInactivityTimeMillis();
16290    method @NonNull public int[] getThresholdsRtpJitterMillis();
16291    method @NonNull public int[] getThresholdsRtpPacketLossRate();
16292    method public void writeToParcel(@NonNull android.os.Parcel, int);
16293    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.MediaThreshold> CREATOR;
16294  }
16295
16296  public class ProvisioningManager {
16297    method @NonNull public static android.telephony.ims.ProvisioningManager createForSubscriptionId(int);
16298    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) @WorkerThread public int getProvisioningIntValue(int);
16299    method @Nullable @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) @WorkerThread public String getProvisioningStringValue(int);
16300    method @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) @WorkerThread public boolean getRcsProvisioningStatusForCapability(int);
16301    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;
16302    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void notifyRcsAutoConfigurationReceived(@NonNull byte[], boolean);
16303    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;
16304    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;
16305    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) @WorkerThread public int setProvisioningIntValue(int, int);
16306    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) @WorkerThread public int setProvisioningStringValue(int, @NonNull String);
16307    method @RequiresPermission(android.Manifest.permission.PERFORM_IMS_SINGLE_REGISTRATION) public void setRcsClientConfiguration(@NonNull android.telephony.ims.RcsClientConfiguration) throws android.telephony.ims.ImsException;
16308    method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) @WorkerThread public void setRcsProvisioningStatusForCapability(int, boolean);
16309    method @RequiresPermission(android.Manifest.permission.PERFORM_IMS_SINGLE_REGISTRATION) public void triggerRcsReconfiguration();
16310    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void unregisterProvisioningChangedCallback(@NonNull android.telephony.ims.ProvisioningManager.Callback);
16311    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);
16312    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";
16313    field public static final String EXTRA_STATUS = "android.telephony.ims.extra.STATUS";
16314    field public static final String EXTRA_SUBSCRIPTION_ID = "android.telephony.ims.extra.SUBSCRIPTION_ID";
16315    field public static final int KEY_VOICE_OVER_WIFI_ENTITLEMENT_ID = 67; // 0x43
16316    field public static final int KEY_VOICE_OVER_WIFI_MODE_OVERRIDE = 27; // 0x1b
16317    field public static final int KEY_VOICE_OVER_WIFI_ROAMING_ENABLED_OVERRIDE = 26; // 0x1a
16318    field public static final int PROVISIONING_VALUE_DISABLED = 0; // 0x0
16319    field public static final int PROVISIONING_VALUE_ENABLED = 1; // 0x1
16320    field public static final int STATUS_CAPABLE = 0; // 0x0
16321    field public static final int STATUS_CARRIER_NOT_CAPABLE = 2; // 0x2
16322    field public static final int STATUS_DEVICE_NOT_CAPABLE = 1; // 0x1
16323    field public static final String STRING_QUERY_RESULT_ERROR_GENERIC = "STRING_QUERY_RESULT_ERROR_GENERIC";
16324    field public static final String STRING_QUERY_RESULT_ERROR_NOT_READY = "STRING_QUERY_RESULT_ERROR_NOT_READY";
16325  }
16326
16327  public static class ProvisioningManager.Callback {
16328    ctor public ProvisioningManager.Callback();
16329    method public void onProvisioningIntChanged(int, int);
16330    method public void onProvisioningStringChanged(int, @NonNull String);
16331  }
16332
16333  public static class ProvisioningManager.RcsProvisioningCallback {
16334    ctor public ProvisioningManager.RcsProvisioningCallback();
16335    method public void onAutoConfigurationErrorReceived(int, @NonNull String);
16336    method public void onConfigurationChanged(@NonNull byte[]);
16337    method public void onConfigurationReset();
16338    method public void onPreProvisioningReceived(@NonNull byte[]);
16339    method public void onRemoved();
16340  }
16341
16342  public final class PublishAttributes implements android.os.Parcelable {
16343    method public int describeContents();
16344    method @NonNull public java.util.List<android.telephony.ims.RcsContactPresenceTuple> getPresenceTuples();
16345    method public int getPublishState();
16346    method @Nullable public android.telephony.ims.SipDetails getSipDetails();
16347    method public void writeToParcel(@NonNull android.os.Parcel, int);
16348    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.PublishAttributes> CREATOR;
16349  }
16350
16351  public final class RcsClientConfiguration implements android.os.Parcelable {
16352    ctor @Deprecated public RcsClientConfiguration(@NonNull String, @NonNull String, @NonNull String, @NonNull String);
16353    ctor public RcsClientConfiguration(@NonNull String, @NonNull String, @NonNull String, @NonNull String, boolean);
16354    method public int describeContents();
16355    method @NonNull public String getClientVendor();
16356    method @NonNull public String getClientVersion();
16357    method @NonNull public String getRcsProfile();
16358    method @NonNull public String getRcsVersion();
16359    method public boolean isRcsEnabledByUser();
16360    method public void writeToParcel(@NonNull android.os.Parcel, int);
16361    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.RcsClientConfiguration> CREATOR;
16362    field public static final String RCS_PROFILE_1_0 = "UP_1.0";
16363    field public static final String RCS_PROFILE_2_3 = "UP_2.3";
16364    field public static final String RCS_PROFILE_2_4 = "UP_2.4";
16365  }
16366
16367  public final class RcsContactPresenceTuple implements android.os.Parcelable {
16368    method public int describeContents();
16369    method @Nullable public android.net.Uri getContactUri();
16370    method @Nullable public android.telephony.ims.RcsContactPresenceTuple.ServiceCapabilities getServiceCapabilities();
16371    method @Nullable public String getServiceDescription();
16372    method @NonNull public String getServiceId();
16373    method @NonNull public String getServiceVersion();
16374    method @NonNull public String getStatus();
16375    method @Nullable public java.time.Instant getTime();
16376    method public void writeToParcel(@NonNull android.os.Parcel, int);
16377    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.RcsContactPresenceTuple> CREATOR;
16378    field public static final String SERVICE_ID_CALL_COMPOSER = "org.3gpp.urn:urn-7:3gpp-service.ims.icsi.gsma.callcomposer";
16379    field public static final String SERVICE_ID_CHATBOT = "org.3gpp.urn:urn-7:3gpp-application.ims.iari.rcs.chatbot";
16380    field public static final String SERVICE_ID_CHATBOT_ROLE = "org.gsma.rcs.isbot";
16381    field public static final String SERVICE_ID_CHATBOT_STANDALONE = " org.3gpp.urn:urn-7:3gpp-application.ims.iari.rcs.chatbot.sa";
16382    field public static final String SERVICE_ID_CHAT_V1 = "org.openmobilealliance:IM-session";
16383    field public static final String SERVICE_ID_CHAT_V2 = "org.openmobilealliance:ChatSession";
16384    field public static final String SERVICE_ID_FT = "org.openmobilealliance:File-Transfer-HTTP";
16385    field public static final String SERVICE_ID_FT_OVER_SMS = "org.3gpp.urn:urn-7:3gpp-application.ims.iari.rcs.ftsms";
16386    field public static final String SERVICE_ID_GEO_PUSH = "org.3gpp.urn:urn-7:3gpp-application.ims.iari.rcs.geopush";
16387    field public static final String SERVICE_ID_GEO_PUSH_VIA_SMS = "org.3gpp.urn:urn-7:3gpp-application.ims.iari.rcs.geosms";
16388    field public static final String SERVICE_ID_MMTEL = "org.3gpp.urn:urn-7:3gpp-service.ims.icsi.mmtel";
16389    field public static final String SERVICE_ID_POST_CALL = "org.3gpp.urn:urn-7:3gpp-service.ims.icsi.gsma.callunanswered";
16390    field public static final String SERVICE_ID_SHARED_MAP = "org.3gpp.urn:urn-7:3gpp-service.ims.icsi.gsma.sharedmap";
16391    field public static final String SERVICE_ID_SHARED_SKETCH = "org.3gpp.urn:urn-7:3gpp-service.ims.icsi.gsma.sharedsketch";
16392    field public static final String SERVICE_ID_SLM = "org.openmobilealliance:StandaloneMsg";
16393    field public static final String TUPLE_BASIC_STATUS_CLOSED = "closed";
16394    field public static final String TUPLE_BASIC_STATUS_OPEN = "open";
16395  }
16396
16397  public static final class RcsContactPresenceTuple.Builder {
16398    ctor public RcsContactPresenceTuple.Builder(@NonNull String, @NonNull String, @NonNull String);
16399    method @NonNull public android.telephony.ims.RcsContactPresenceTuple build();
16400    method @NonNull public android.telephony.ims.RcsContactPresenceTuple.Builder setContactUri(@NonNull android.net.Uri);
16401    method @NonNull public android.telephony.ims.RcsContactPresenceTuple.Builder setServiceCapabilities(@NonNull android.telephony.ims.RcsContactPresenceTuple.ServiceCapabilities);
16402    method @NonNull public android.telephony.ims.RcsContactPresenceTuple.Builder setServiceDescription(@NonNull String);
16403    method @NonNull public android.telephony.ims.RcsContactPresenceTuple.Builder setTime(@NonNull java.time.Instant);
16404  }
16405
16406  public static final class RcsContactPresenceTuple.ServiceCapabilities implements android.os.Parcelable {
16407    method public int describeContents();
16408    method @NonNull public java.util.List<java.lang.String> getSupportedDuplexModes();
16409    method @NonNull public java.util.List<java.lang.String> getUnsupportedDuplexModes();
16410    method public boolean isAudioCapable();
16411    method public boolean isVideoCapable();
16412    method public void writeToParcel(@NonNull android.os.Parcel, int);
16413    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.RcsContactPresenceTuple.ServiceCapabilities> CREATOR;
16414    field public static final String DUPLEX_MODE_FULL = "full";
16415    field public static final String DUPLEX_MODE_HALF = "half";
16416    field public static final String DUPLEX_MODE_RECEIVE_ONLY = "receive-only";
16417    field public static final String DUPLEX_MODE_SEND_ONLY = "send-only";
16418  }
16419
16420  public static final class RcsContactPresenceTuple.ServiceCapabilities.Builder {
16421    ctor public RcsContactPresenceTuple.ServiceCapabilities.Builder(boolean, boolean);
16422    method @NonNull public android.telephony.ims.RcsContactPresenceTuple.ServiceCapabilities.Builder addSupportedDuplexMode(@NonNull String);
16423    method @NonNull public android.telephony.ims.RcsContactPresenceTuple.ServiceCapabilities.Builder addUnsupportedDuplexMode(@NonNull String);
16424    method @NonNull public android.telephony.ims.RcsContactPresenceTuple.ServiceCapabilities build();
16425  }
16426
16427  public final class RcsContactUceCapability implements android.os.Parcelable {
16428    method public int describeContents();
16429    method public int getCapabilityMechanism();
16430    method @Nullable public android.telephony.ims.RcsContactPresenceTuple getCapabilityTuple(@NonNull String);
16431    method @NonNull public java.util.List<android.telephony.ims.RcsContactPresenceTuple> getCapabilityTuples();
16432    method @NonNull public android.net.Uri getContactUri();
16433    method @Nullable public android.net.Uri getEntityUri();
16434    method @NonNull public java.util.Set<java.lang.String> getFeatureTags();
16435    method public int getRequestResult();
16436    method public int getSourceType();
16437    method public void writeToParcel(@NonNull android.os.Parcel, int);
16438    field public static final int CAPABILITY_MECHANISM_OPTIONS = 2; // 0x2
16439    field public static final int CAPABILITY_MECHANISM_PRESENCE = 1; // 0x1
16440    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.RcsContactUceCapability> CREATOR;
16441    field public static final int REQUEST_RESULT_FOUND = 3; // 0x3
16442    field public static final int REQUEST_RESULT_NOT_FOUND = 2; // 0x2
16443    field public static final int REQUEST_RESULT_NOT_ONLINE = 1; // 0x1
16444    field public static final int REQUEST_RESULT_UNKNOWN = 0; // 0x0
16445    field public static final int SOURCE_TYPE_CACHED = 1; // 0x1
16446    field public static final int SOURCE_TYPE_NETWORK = 0; // 0x0
16447  }
16448
16449  public static final class RcsContactUceCapability.OptionsBuilder {
16450    ctor public RcsContactUceCapability.OptionsBuilder(@NonNull android.net.Uri);
16451    method @NonNull public android.telephony.ims.RcsContactUceCapability.OptionsBuilder addFeatureTag(@NonNull String);
16452    method @NonNull public android.telephony.ims.RcsContactUceCapability.OptionsBuilder addFeatureTags(@NonNull java.util.Set<java.lang.String>);
16453    method @NonNull public android.telephony.ims.RcsContactUceCapability build();
16454    method @NonNull public android.telephony.ims.RcsContactUceCapability.OptionsBuilder setRequestResult(int);
16455  }
16456
16457  public static final class RcsContactUceCapability.PresenceBuilder {
16458    ctor public RcsContactUceCapability.PresenceBuilder(@NonNull android.net.Uri, int, int);
16459    method @NonNull public android.telephony.ims.RcsContactUceCapability.PresenceBuilder addCapabilityTuple(@NonNull android.telephony.ims.RcsContactPresenceTuple);
16460    method @NonNull public android.telephony.ims.RcsContactUceCapability.PresenceBuilder addCapabilityTuples(@NonNull java.util.List<android.telephony.ims.RcsContactPresenceTuple>);
16461    method @NonNull public android.telephony.ims.RcsContactUceCapability build();
16462    method @NonNull public android.telephony.ims.RcsContactUceCapability.PresenceBuilder setEntityUri(@NonNull android.net.Uri);
16463  }
16464
16465  public class RcsUceAdapter {
16466    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;
16467    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getUcePublishState() throws android.telephony.ims.ImsException;
16468    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void removeOnPublishStateChangedListener(@NonNull android.telephony.ims.RcsUceAdapter.OnPublishStateChangedListener) throws android.telephony.ims.ImsException;
16469    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;
16470    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;
16471    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setUceSettingEnabled(boolean) throws android.telephony.ims.ImsException;
16472    field @Deprecated public static final int CAPABILITY_TYPE_PRESENCE_UCE = 2; // 0x2
16473    field public static final int CAPABILITY_UPDATE_TRIGGER_ETAG_EXPIRED = 1; // 0x1
16474    field public static final int CAPABILITY_UPDATE_TRIGGER_MOVE_TO_2G = 7; // 0x7
16475    field public static final int CAPABILITY_UPDATE_TRIGGER_MOVE_TO_3G = 6; // 0x6
16476    field public static final int CAPABILITY_UPDATE_TRIGGER_MOVE_TO_EHRPD = 4; // 0x4
16477    field public static final int CAPABILITY_UPDATE_TRIGGER_MOVE_TO_HSPAPLUS = 5; // 0x5
16478    field public static final int CAPABILITY_UPDATE_TRIGGER_MOVE_TO_INTERNET_PDN = 12; // 0xc
16479    field public static final int CAPABILITY_UPDATE_TRIGGER_MOVE_TO_IWLAN = 9; // 0x9
16480    field public static final int CAPABILITY_UPDATE_TRIGGER_MOVE_TO_LTE_VOPS_DISABLED = 2; // 0x2
16481    field public static final int CAPABILITY_UPDATE_TRIGGER_MOVE_TO_LTE_VOPS_ENABLED = 3; // 0x3
16482    field public static final int CAPABILITY_UPDATE_TRIGGER_MOVE_TO_NR5G_VOPS_DISABLED = 10; // 0xa
16483    field public static final int CAPABILITY_UPDATE_TRIGGER_MOVE_TO_NR5G_VOPS_ENABLED = 11; // 0xb
16484    field public static final int CAPABILITY_UPDATE_TRIGGER_MOVE_TO_WLAN = 8; // 0x8
16485    field public static final int CAPABILITY_UPDATE_TRIGGER_UNKNOWN = 0; // 0x0
16486    field public static final int ERROR_FORBIDDEN = 6; // 0x6
16487    field public static final int ERROR_GENERIC_FAILURE = 1; // 0x1
16488    field public static final int ERROR_INSUFFICIENT_MEMORY = 10; // 0xa
16489    field public static final int ERROR_LOST_NETWORK = 11; // 0xb
16490    field public static final int ERROR_NOT_AUTHORIZED = 5; // 0x5
16491    field public static final int ERROR_NOT_AVAILABLE = 3; // 0x3
16492    field public static final int ERROR_NOT_ENABLED = 2; // 0x2
16493    field public static final int ERROR_NOT_FOUND = 7; // 0x7
16494    field public static final int ERROR_NOT_REGISTERED = 4; // 0x4
16495    field public static final int ERROR_REQUEST_TIMEOUT = 9; // 0x9
16496    field public static final int ERROR_REQUEST_TOO_LARGE = 8; // 0x8
16497    field public static final int ERROR_SERVER_UNAVAILABLE = 12; // 0xc
16498    field public static final int PUBLISH_STATE_NOT_PUBLISHED = 2; // 0x2
16499    field public static final int PUBLISH_STATE_OK = 1; // 0x1
16500    field public static final int PUBLISH_STATE_OTHER_ERROR = 6; // 0x6
16501    field public static final int PUBLISH_STATE_PUBLISHING = 7; // 0x7
16502    field public static final int PUBLISH_STATE_RCS_PROVISION_ERROR = 4; // 0x4
16503    field public static final int PUBLISH_STATE_REQUEST_TIMEOUT = 5; // 0x5
16504    field public static final int PUBLISH_STATE_VOICE_PROVISION_ERROR = 3; // 0x3
16505  }
16506
16507  public static interface RcsUceAdapter.CapabilitiesCallback {
16508    method public void onCapabilitiesReceived(@NonNull java.util.List<android.telephony.ims.RcsContactUceCapability>);
16509    method public default void onComplete();
16510    method public default void onComplete(@Nullable android.telephony.ims.SipDetails);
16511    method public default void onError(int, long);
16512    method public default void onError(int, long, @Nullable android.telephony.ims.SipDetails);
16513  }
16514
16515  public static interface RcsUceAdapter.OnPublishStateChangedListener {
16516    method @Deprecated public void onPublishStateChange(int);
16517    method public default void onPublishStateChange(@NonNull android.telephony.ims.PublishAttributes);
16518  }
16519
16520  public interface RegistrationManager {
16521    field public static final int SUGGESTED_ACTION_NONE = 0; // 0x0
16522    field public static final int SUGGESTED_ACTION_TRIGGER_PLMN_BLOCK = 1; // 0x1
16523    field public static final int SUGGESTED_ACTION_TRIGGER_PLMN_BLOCK_WITH_TIMEOUT = 2; // 0x2
16524  }
16525
16526  public static class RegistrationManager.RegistrationCallback {
16527    method public void onUnregistered(@NonNull android.telephony.ims.ImsReasonInfo, @NonNull android.telephony.ims.SipDetails);
16528  }
16529
16530  public final class RtpHeaderExtension implements android.os.Parcelable {
16531    ctor public RtpHeaderExtension(@IntRange(from=1, to=14) int, @NonNull byte[]);
16532    method public int describeContents();
16533    method @NonNull public byte[] getExtensionData();
16534    method @IntRange(from=1, to=14) public int getLocalIdentifier();
16535    method public void writeToParcel(@NonNull android.os.Parcel, int);
16536    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.RtpHeaderExtension> CREATOR;
16537  }
16538
16539  public final class RtpHeaderExtensionType implements android.os.Parcelable {
16540    ctor public RtpHeaderExtensionType(@IntRange(from=1, to=14) int, @NonNull android.net.Uri);
16541    method public int describeContents();
16542    method @IntRange(from=1, to=14) public int getLocalIdentifier();
16543    method @NonNull public android.net.Uri getUri();
16544    method public void writeToParcel(@NonNull android.os.Parcel, int);
16545    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.RtpHeaderExtensionType> CREATOR;
16546  }
16547
16548  public final class SipDelegateConfiguration implements android.os.Parcelable {
16549    method public int describeContents();
16550    method @Nullable public String getHomeDomain();
16551    method @Nullable public String getImei();
16552    method @Nullable public android.telephony.ims.SipDelegateConfiguration.IpSecConfiguration getIpSecConfiguration();
16553    method @NonNull public java.net.InetSocketAddress getLocalAddress();
16554    method public int getMaxUdpPayloadSizeBytes();
16555    method @Nullable public java.net.InetSocketAddress getNatSocketAddress();
16556    method @Nullable public String getPrivateUserIdentifier();
16557    method @Nullable public android.net.Uri getPublicGruuUri();
16558    method @Nullable public String getPublicUserIdentifier();
16559    method @Nullable public String getSipAssociatedUriHeader();
16560    method @Nullable public String getSipAuthenticationHeader();
16561    method @Nullable public String getSipAuthenticationNonce();
16562    method @Nullable public String getSipCniHeader();
16563    method @Nullable public String getSipContactUserParameter();
16564    method @Nullable public String getSipPaniHeader();
16565    method @Nullable public String getSipPathHeader();
16566    method @Nullable public String getSipPlaniHeader();
16567    method @NonNull public java.net.InetSocketAddress getSipServerAddress();
16568    method @Nullable public String getSipServiceRouteHeader();
16569    method @Nullable public String getSipUserAgentHeader();
16570    method public int getTransportType();
16571    method @IntRange(from=0) public long getVersion();
16572    method public boolean isSipCompactFormEnabled();
16573    method public boolean isSipKeepaliveEnabled();
16574    method public void writeToParcel(@NonNull android.os.Parcel, int);
16575    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.SipDelegateConfiguration> CREATOR;
16576    field public static final int SIP_TRANSPORT_TCP = 1; // 0x1
16577    field public static final int SIP_TRANSPORT_UDP = 0; // 0x0
16578    field public static final int UDP_PAYLOAD_SIZE_UNDEFINED = -1; // 0xffffffff
16579  }
16580
16581  public static final class SipDelegateConfiguration.Builder {
16582    ctor public SipDelegateConfiguration.Builder(@IntRange(from=0) long, int, @NonNull java.net.InetSocketAddress, @NonNull java.net.InetSocketAddress);
16583    ctor public SipDelegateConfiguration.Builder(@NonNull android.telephony.ims.SipDelegateConfiguration);
16584    method @NonNull public android.telephony.ims.SipDelegateConfiguration build();
16585    method @NonNull public android.telephony.ims.SipDelegateConfiguration.Builder setHomeDomain(@Nullable String);
16586    method @NonNull public android.telephony.ims.SipDelegateConfiguration.Builder setImei(@Nullable String);
16587    method @NonNull public android.telephony.ims.SipDelegateConfiguration.Builder setIpSecConfiguration(@Nullable android.telephony.ims.SipDelegateConfiguration.IpSecConfiguration);
16588    method @NonNull public android.telephony.ims.SipDelegateConfiguration.Builder setMaxUdpPayloadSizeBytes(@IntRange(from=1) int);
16589    method @NonNull public android.telephony.ims.SipDelegateConfiguration.Builder setNatSocketAddress(@Nullable java.net.InetSocketAddress);
16590    method @NonNull public android.telephony.ims.SipDelegateConfiguration.Builder setPrivateUserIdentifier(@Nullable String);
16591    method @NonNull public android.telephony.ims.SipDelegateConfiguration.Builder setPublicGruuUri(@Nullable android.net.Uri);
16592    method @NonNull public android.telephony.ims.SipDelegateConfiguration.Builder setPublicUserIdentifier(@Nullable String);
16593    method @NonNull public android.telephony.ims.SipDelegateConfiguration.Builder setSipAssociatedUriHeader(@Nullable String);
16594    method @NonNull public android.telephony.ims.SipDelegateConfiguration.Builder setSipAuthenticationHeader(@Nullable String);
16595    method @NonNull public android.telephony.ims.SipDelegateConfiguration.Builder setSipAuthenticationNonce(@Nullable String);
16596    method @NonNull public android.telephony.ims.SipDelegateConfiguration.Builder setSipCniHeader(@Nullable String);
16597    method @NonNull public android.telephony.ims.SipDelegateConfiguration.Builder setSipCompactFormEnabled(boolean);
16598    method @NonNull public android.telephony.ims.SipDelegateConfiguration.Builder setSipContactUserParameter(@Nullable String);
16599    method @NonNull public android.telephony.ims.SipDelegateConfiguration.Builder setSipKeepaliveEnabled(boolean);
16600    method @NonNull public android.telephony.ims.SipDelegateConfiguration.Builder setSipPaniHeader(@Nullable String);
16601    method @NonNull public android.telephony.ims.SipDelegateConfiguration.Builder setSipPathHeader(@Nullable String);
16602    method @NonNull public android.telephony.ims.SipDelegateConfiguration.Builder setSipPlaniHeader(@Nullable String);
16603    method @NonNull public android.telephony.ims.SipDelegateConfiguration.Builder setSipServiceRouteHeader(@Nullable String);
16604    method @NonNull public android.telephony.ims.SipDelegateConfiguration.Builder setSipUserAgentHeader(@Nullable String);
16605  }
16606
16607  public static final class SipDelegateConfiguration.IpSecConfiguration {
16608    ctor public SipDelegateConfiguration.IpSecConfiguration(int, int, int, int, int, int, @NonNull String);
16609    method public int getLastLocalTxPort();
16610    method public int getLastRemoteTxPort();
16611    method public int getLocalRxPort();
16612    method public int getLocalTxPort();
16613    method public int getRemoteRxPort();
16614    method public int getRemoteTxPort();
16615    method @NonNull public String getSipSecurityVerifyHeader();
16616  }
16617
16618  public interface SipDelegateConnection {
16619    method public void cleanupSession(@NonNull String);
16620    method public void notifyMessageReceiveError(@NonNull String, int);
16621    method public void notifyMessageReceived(@NonNull String);
16622    method public void sendMessage(@NonNull android.telephony.ims.SipMessage, long);
16623  }
16624
16625  public class SipDelegateManager {
16626    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;
16627    method @RequiresPermission(android.Manifest.permission.PERFORM_IMS_SINGLE_REGISTRATION) public void destroySipDelegate(@NonNull android.telephony.ims.SipDelegateConnection, int);
16628    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;
16629    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;
16630    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;
16631    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);
16632    method public void unregisterImsStateCallback(@NonNull android.telephony.ims.ImsStateCallback);
16633    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void unregisterSipDialogStateCallback(@NonNull android.telephony.ims.SipDialogStateCallback) throws android.telephony.ims.ImsException;
16634    field public static final int DENIED_REASON_INVALID = 4; // 0x4
16635    field public static final int DENIED_REASON_IN_USE_BY_ANOTHER_DELEGATE = 1; // 0x1
16636    field public static final int DENIED_REASON_NOT_ALLOWED = 2; // 0x2
16637    field public static final int DENIED_REASON_SINGLE_REGISTRATION_NOT_ALLOWED = 3; // 0x3
16638    field public static final int DENIED_REASON_UNKNOWN = 0; // 0x0
16639    field public static final int MESSAGE_FAILURE_REASON_DELEGATE_CLOSED = 2; // 0x2
16640    field public static final int MESSAGE_FAILURE_REASON_DELEGATE_DEAD = 1; // 0x1
16641    field public static final int MESSAGE_FAILURE_REASON_INTERNAL_DELEGATE_STATE_TRANSITION = 11; // 0xb
16642    field public static final int MESSAGE_FAILURE_REASON_INVALID_BODY_CONTENT = 5; // 0x5
16643    field public static final int MESSAGE_FAILURE_REASON_INVALID_FEATURE_TAG = 6; // 0x6
16644    field public static final int MESSAGE_FAILURE_REASON_INVALID_HEADER_FIELDS = 4; // 0x4
16645    field public static final int MESSAGE_FAILURE_REASON_INVALID_START_LINE = 3; // 0x3
16646    field public static final int MESSAGE_FAILURE_REASON_NETWORK_NOT_AVAILABLE = 8; // 0x8
16647    field public static final int MESSAGE_FAILURE_REASON_NOT_REGISTERED = 9; // 0x9
16648    field public static final int MESSAGE_FAILURE_REASON_STALE_IMS_CONFIGURATION = 10; // 0xa
16649    field public static final int MESSAGE_FAILURE_REASON_TAG_NOT_ENABLED_FOR_DELEGATE = 7; // 0x7
16650    field public static final int MESSAGE_FAILURE_REASON_UNKNOWN = 0; // 0x0
16651    field public static final int SIP_DELEGATE_DESTROY_REASON_REQUESTED_BY_APP = 2; // 0x2
16652    field public static final int SIP_DELEGATE_DESTROY_REASON_SERVICE_DEAD = 1; // 0x1
16653    field public static final int SIP_DELEGATE_DESTROY_REASON_SUBSCRIPTION_TORN_DOWN = 4; // 0x4
16654    field public static final int SIP_DELEGATE_DESTROY_REASON_UNKNOWN = 0; // 0x0
16655    field public static final int SIP_DELEGATE_DESTROY_REASON_USER_DISABLED_RCS = 3; // 0x3
16656  }
16657
16658  public final class SipDialogState implements android.os.Parcelable {
16659    method public int describeContents();
16660    method public int getState();
16661    method public void writeToParcel(@NonNull android.os.Parcel, int);
16662    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.SipDialogState> CREATOR;
16663    field public static final int STATE_CLOSED = 2; // 0x2
16664    field public static final int STATE_CONFIRMED = 1; // 0x1
16665    field public static final int STATE_EARLY = 0; // 0x0
16666  }
16667
16668  public abstract class SipDialogStateCallback {
16669    ctor public SipDialogStateCallback();
16670    method public abstract void onActiveSipDialogsChanged(@NonNull java.util.List<android.telephony.ims.SipDialogState>);
16671    method public abstract void onError();
16672  }
16673
16674  public final class SipMessage implements android.os.Parcelable {
16675    ctor public SipMessage(@NonNull String, @NonNull String, @NonNull byte[]);
16676    method public int describeContents();
16677    method @Nullable public String getCallIdParameter();
16678    method @NonNull public byte[] getContent();
16679    method @NonNull public String getHeaderSection();
16680    method @NonNull public String getStartLine();
16681    method @NonNull public String getViaBranchParameter();
16682    method @NonNull public byte[] toEncodedMessage();
16683    method public void writeToParcel(@NonNull android.os.Parcel, int);
16684    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.SipMessage> CREATOR;
16685  }
16686
16687  public final class SrvccCall implements android.os.Parcelable {
16688    ctor public SrvccCall(@NonNull String, int, @NonNull android.telephony.ims.ImsCallProfile);
16689    method public int describeContents();
16690    method @NonNull public String getCallId();
16691    method @NonNull public android.telephony.ims.ImsCallProfile getImsCallProfile();
16692    method public int getPreciseCallState();
16693    method public void writeToParcel(@NonNull android.os.Parcel, int);
16694    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.SrvccCall> CREATOR;
16695  }
16696
16697}
16698
16699package android.telephony.ims.feature {
16700
16701  public final class CapabilityChangeRequest implements android.os.Parcelable {
16702    method public void addCapabilitiesToDisableForTech(int, int);
16703    method public void addCapabilitiesToEnableForTech(int, int);
16704    method public int describeContents();
16705    method public java.util.List<android.telephony.ims.feature.CapabilityChangeRequest.CapabilityPair> getCapabilitiesToDisable();
16706    method public java.util.List<android.telephony.ims.feature.CapabilityChangeRequest.CapabilityPair> getCapabilitiesToEnable();
16707    method public void writeToParcel(android.os.Parcel, int);
16708    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.feature.CapabilityChangeRequest> CREATOR;
16709  }
16710
16711  public static class CapabilityChangeRequest.CapabilityPair {
16712    ctor public CapabilityChangeRequest.CapabilityPair(int, int);
16713    method public int getCapability();
16714    method public int getRadioTech();
16715  }
16716
16717  public abstract class ImsFeature {
16718    ctor public ImsFeature();
16719    method public abstract void changeEnabledCapabilities(android.telephony.ims.feature.CapabilityChangeRequest, android.telephony.ims.feature.ImsFeature.CapabilityCallbackProxy);
16720    method public int getFeatureState();
16721    method public final int getSlotIndex();
16722    method public abstract void onFeatureReady();
16723    method public abstract void onFeatureRemoved();
16724    method public final void setFeatureState(int);
16725    field public static final int CAPABILITY_ERROR_GENERIC = -1; // 0xffffffff
16726    field public static final int CAPABILITY_SUCCESS = 0; // 0x0
16727    field public static final int FEATURE_EMERGENCY_MMTEL = 0; // 0x0
16728    field public static final int FEATURE_MMTEL = 1; // 0x1
16729    field public static final int FEATURE_RCS = 2; // 0x2
16730    field public static final int STATE_INITIALIZING = 1; // 0x1
16731    field public static final int STATE_READY = 2; // 0x2
16732    field public static final int STATE_UNAVAILABLE = 0; // 0x0
16733  }
16734
16735  @Deprecated public static class ImsFeature.Capabilities {
16736    field @Deprecated protected int mCapabilities;
16737  }
16738
16739  protected static class ImsFeature.CapabilityCallbackProxy {
16740    method public void onChangeCapabilityConfigurationError(int, int, int);
16741  }
16742
16743  public class MmTelFeature extends android.telephony.ims.feature.ImsFeature {
16744    ctor public MmTelFeature();
16745    ctor public MmTelFeature(@NonNull java.util.concurrent.Executor);
16746    method public void changeEnabledCapabilities(@NonNull android.telephony.ims.feature.CapabilityChangeRequest, @NonNull android.telephony.ims.feature.ImsFeature.CapabilityCallbackProxy);
16747    method public void changeOfferedRtpHeaderExtensionTypes(@NonNull java.util.Set<android.telephony.ims.RtpHeaderExtensionType>);
16748    method public void clearMediaThreshold(int);
16749    method @Nullable public android.telephony.ims.ImsCallProfile createCallProfile(int, int);
16750    method @Nullable public android.telephony.ims.stub.ImsCallSessionImplBase createCallSession(@NonNull android.telephony.ims.ImsCallProfile);
16751    method @NonNull public android.telephony.ims.stub.ImsEcbmImplBase getEcbm();
16752    method @NonNull public android.telephony.ims.stub.ImsMultiEndpointImplBase getMultiEndpoint();
16753    method @NonNull public android.telephony.ims.stub.ImsSmsImplBase getSmsImplementation();
16754    method @NonNull public android.telephony.ims.stub.ImsUtImplBase getUt();
16755    method public final void notifyCapabilitiesStatusChanged(@NonNull android.telephony.ims.feature.MmTelFeature.MmTelCapabilities);
16756    method @Deprecated public final void notifyIncomingCall(@NonNull android.telephony.ims.stub.ImsCallSessionImplBase, @NonNull android.os.Bundle);
16757    method @Nullable public final android.telephony.ims.ImsCallSessionListener notifyIncomingCall(@NonNull android.telephony.ims.stub.ImsCallSessionImplBase, @NonNull String, @NonNull android.os.Bundle);
16758    method public final void notifyMediaQualityStatusChanged(@NonNull android.telephony.ims.MediaQualityStatus);
16759    method public final void notifyRejectedCall(@NonNull android.telephony.ims.ImsCallProfile, @NonNull android.telephony.ims.ImsReasonInfo);
16760    method public void notifySrvccCanceled();
16761    method public void notifySrvccCompleted();
16762    method public void notifySrvccFailed();
16763    method public void notifySrvccStarted(@NonNull java.util.function.Consumer<java.util.List<android.telephony.ims.SrvccCall>>);
16764    method public final void notifyVoiceMessageCountUpdate(int);
16765    method public void onFeatureReady();
16766    method public void onFeatureRemoved();
16767    method public boolean queryCapabilityConfiguration(int, int);
16768    method @NonNull public final android.telephony.ims.feature.MmTelFeature.MmTelCapabilities queryCapabilityStatus();
16769    method @Nullable public android.telephony.ims.MediaQualityStatus queryMediaQualityStatus(int);
16770    method public final void setCallAudioHandler(int);
16771    method public void setMediaThreshold(int, @NonNull android.telephony.ims.MediaThreshold);
16772    method public void setTerminalBasedCallWaitingStatus(boolean);
16773    method public void setUiTtyMode(int, @Nullable android.os.Message);
16774    method public int shouldProcessCall(@NonNull String[]);
16775    field public static final int AUDIO_HANDLER_ANDROID = 0; // 0x0
16776    field public static final int AUDIO_HANDLER_BASEBAND = 1; // 0x1
16777    field public static final String EXTRA_IS_UNKNOWN_CALL = "android.telephony.ims.feature.extra.IS_UNKNOWN_CALL";
16778    field public static final String EXTRA_IS_USSD = "android.telephony.ims.feature.extra.IS_USSD";
16779    field public static final int PROCESS_CALL_CSFB = 1; // 0x1
16780    field public static final int PROCESS_CALL_IMS = 0; // 0x0
16781  }
16782
16783  public static class MmTelFeature.MmTelCapabilities extends android.telephony.ims.feature.ImsFeature.Capabilities {
16784    ctor public MmTelFeature.MmTelCapabilities();
16785    ctor @Deprecated public MmTelFeature.MmTelCapabilities(android.telephony.ims.feature.ImsFeature.Capabilities);
16786    ctor public MmTelFeature.MmTelCapabilities(int);
16787    method public final void addCapabilities(int);
16788    method public final void removeCapabilities(int);
16789  }
16790
16791  public class RcsFeature extends android.telephony.ims.feature.ImsFeature {
16792    ctor public RcsFeature();
16793    ctor public RcsFeature(@NonNull java.util.concurrent.Executor);
16794    method public void changeEnabledCapabilities(@NonNull android.telephony.ims.feature.CapabilityChangeRequest, @NonNull android.telephony.ims.feature.ImsFeature.CapabilityCallbackProxy);
16795    method @NonNull public android.telephony.ims.stub.RcsCapabilityExchangeImplBase createCapabilityExchangeImpl(@NonNull android.telephony.ims.stub.CapabilityExchangeEventListener);
16796    method public void destroyCapabilityExchangeImpl(@NonNull android.telephony.ims.stub.RcsCapabilityExchangeImplBase);
16797    method public final void notifyCapabilitiesStatusChanged(@NonNull android.telephony.ims.feature.RcsFeature.RcsImsCapabilities);
16798    method public void onFeatureReady();
16799    method public void onFeatureRemoved();
16800    method public boolean queryCapabilityConfiguration(int, int);
16801    method @NonNull public final android.telephony.ims.feature.RcsFeature.RcsImsCapabilities queryCapabilityStatus();
16802  }
16803
16804  public static class RcsFeature.RcsImsCapabilities extends android.telephony.ims.feature.ImsFeature.Capabilities {
16805    ctor public RcsFeature.RcsImsCapabilities(int);
16806    method public void addCapabilities(int);
16807    method public boolean isCapable(int);
16808    method public void removeCapabilities(int);
16809    field public static final int CAPABILITY_TYPE_NONE = 0; // 0x0
16810    field public static final int CAPABILITY_TYPE_OPTIONS_UCE = 1; // 0x1
16811    field public static final int CAPABILITY_TYPE_PRESENCE_UCE = 2; // 0x2
16812  }
16813
16814}
16815
16816package android.telephony.ims.stub {
16817
16818  public interface CapabilityExchangeEventListener {
16819    method @Deprecated public default void onPublishUpdated(int, @NonNull String, int, @NonNull String) throws android.telephony.ims.ImsException;
16820    method public default void onPublishUpdated(@NonNull android.telephony.ims.SipDetails) throws android.telephony.ims.ImsException;
16821    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;
16822    method public void onRequestPublishCapabilities(int) throws android.telephony.ims.ImsException;
16823    method public void onUnpublish() throws android.telephony.ims.ImsException;
16824  }
16825
16826  public static interface CapabilityExchangeEventListener.OptionsRequestCallback {
16827    method public void onRespondToCapabilityRequest(@NonNull android.telephony.ims.RcsContactUceCapability, boolean);
16828    method public void onRespondToCapabilityRequestWithError(@IntRange(from=100, to=699) int, @NonNull String);
16829  }
16830
16831  public interface DelegateConnectionMessageCallback {
16832    method public void onMessageReceived(@NonNull android.telephony.ims.SipMessage);
16833    method public void onMessageSendFailure(@NonNull String, int);
16834    method public void onMessageSent(@NonNull String);
16835  }
16836
16837  public interface DelegateConnectionStateCallback {
16838    method public void onConfigurationChanged(@NonNull android.telephony.ims.SipDelegateConfiguration);
16839    method public void onCreated(@NonNull android.telephony.ims.SipDelegateConnection);
16840    method public void onDestroyed(int);
16841    method public void onFeatureTagStatusChanged(@NonNull android.telephony.ims.DelegateRegistrationState, @NonNull java.util.Set<android.telephony.ims.FeatureTagState>);
16842  }
16843
16844  public class ImsCallSessionImplBase implements java.lang.AutoCloseable {
16845    ctor public ImsCallSessionImplBase();
16846    method public void accept(int, android.telephony.ims.ImsStreamMediaProfile);
16847    method public void close();
16848    method public void deflect(String);
16849    method public void extendToConference(String[]);
16850    method public String getCallId();
16851    method public android.telephony.ims.ImsCallProfile getCallProfile();
16852    method public android.telephony.ims.ImsVideoCallProvider getImsVideoCallProvider();
16853    method public android.telephony.ims.ImsCallProfile getLocalCallProfile();
16854    method public String getProperty(String);
16855    method public android.telephony.ims.ImsCallProfile getRemoteCallProfile();
16856    method public int getState();
16857    method public void hold(android.telephony.ims.ImsStreamMediaProfile);
16858    method public void inviteParticipants(String[]);
16859    method public boolean isInCall();
16860    method public boolean isMultiparty();
16861    method public void merge();
16862    method public void reject(int);
16863    method public void removeParticipants(String[]);
16864    method public void resume(android.telephony.ims.ImsStreamMediaProfile);
16865    method public void sendDtmf(char, android.os.Message);
16866    method public void sendRtpHeaderExtensions(@NonNull java.util.Set<android.telephony.ims.RtpHeaderExtension>);
16867    method public void sendRttMessage(String);
16868    method public void sendRttModifyRequest(android.telephony.ims.ImsCallProfile);
16869    method public void sendRttModifyResponse(boolean);
16870    method public void sendUssd(String);
16871    method @Deprecated public void setListener(android.telephony.ims.ImsCallSessionListener);
16872    method public void setMute(boolean);
16873    method public void start(String, android.telephony.ims.ImsCallProfile);
16874    method public void startConference(String[], android.telephony.ims.ImsCallProfile);
16875    method public void startDtmf(char);
16876    method public void stopDtmf();
16877    method public void terminate(int);
16878    method public void update(int, android.telephony.ims.ImsStreamMediaProfile);
16879    field public static final int USSD_MODE_NOTIFY = 0; // 0x0
16880    field public static final int USSD_MODE_REQUEST = 1; // 0x1
16881  }
16882
16883  public static class ImsCallSessionImplBase.State {
16884    method public static String toString(int);
16885    field public static final int ESTABLISHED = 4; // 0x4
16886    field public static final int ESTABLISHING = 3; // 0x3
16887    field public static final int IDLE = 0; // 0x0
16888    field public static final int INITIATED = 1; // 0x1
16889    field public static final int INVALID = -1; // 0xffffffff
16890    field public static final int NEGOTIATING = 2; // 0x2
16891    field public static final int REESTABLISHING = 6; // 0x6
16892    field public static final int RENEGOTIATING = 5; // 0x5
16893    field public static final int TERMINATED = 8; // 0x8
16894    field public static final int TERMINATING = 7; // 0x7
16895  }
16896
16897  public class ImsConfigImplBase {
16898    ctor public ImsConfigImplBase(@NonNull java.util.concurrent.Executor);
16899    ctor public ImsConfigImplBase();
16900    method public int getConfigInt(int);
16901    method public String getConfigString(int);
16902    method public final void notifyAutoConfigurationErrorReceived(int, @NonNull String);
16903    method public final void notifyPreProvisioningReceived(@NonNull byte[]);
16904    method public final void notifyProvisionedValueChanged(int, int);
16905    method public final void notifyProvisionedValueChanged(int, String);
16906    method public void notifyRcsAutoConfigurationReceived(@NonNull byte[], boolean);
16907    method public void notifyRcsAutoConfigurationRemoved();
16908    method public int setConfig(int, int);
16909    method public int setConfig(int, String);
16910    method public void setRcsClientConfiguration(@NonNull android.telephony.ims.RcsClientConfiguration);
16911    method public void triggerAutoConfiguration();
16912    field public static final int CONFIG_RESULT_FAILED = 1; // 0x1
16913    field public static final int CONFIG_RESULT_SUCCESS = 0; // 0x0
16914    field public static final int CONFIG_RESULT_UNKNOWN = -1; // 0xffffffff
16915  }
16916
16917  public class ImsEcbmImplBase {
16918    ctor public ImsEcbmImplBase();
16919    method public final void enteredEcbm();
16920    method public void exitEmergencyCallbackMode();
16921    method public final void exitedEcbm();
16922  }
16923
16924  public final class ImsFeatureConfiguration implements android.os.Parcelable {
16925    method public int describeContents();
16926    method public java.util.Set<android.telephony.ims.stub.ImsFeatureConfiguration.FeatureSlotPair> getServiceFeatures();
16927    method public void writeToParcel(android.os.Parcel, int);
16928    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.stub.ImsFeatureConfiguration> CREATOR;
16929  }
16930
16931  public static class ImsFeatureConfiguration.Builder {
16932    ctor public ImsFeatureConfiguration.Builder();
16933    method public android.telephony.ims.stub.ImsFeatureConfiguration.Builder addFeature(int, int);
16934    method public android.telephony.ims.stub.ImsFeatureConfiguration build();
16935  }
16936
16937  public static final class ImsFeatureConfiguration.FeatureSlotPair {
16938    ctor public ImsFeatureConfiguration.FeatureSlotPair(int, int);
16939    field public final int featureType;
16940    field public final int slotId;
16941  }
16942
16943  public class ImsMultiEndpointImplBase {
16944    ctor public ImsMultiEndpointImplBase();
16945    method public final void onImsExternalCallStateUpdate(java.util.List<android.telephony.ims.ImsExternalCallState>);
16946    method public void requestImsExternalCallStateInfo();
16947  }
16948
16949  public class ImsRegistrationImplBase {
16950    ctor public ImsRegistrationImplBase();
16951    ctor public ImsRegistrationImplBase(@NonNull java.util.concurrent.Executor);
16952    method public final void onDeregistered(android.telephony.ims.ImsReasonInfo);
16953    method public final void onDeregistered(@Nullable android.telephony.ims.ImsReasonInfo, int, int);
16954    method public final void onDeregistered(@Nullable android.telephony.ims.ImsReasonInfo, @NonNull android.telephony.ims.SipDetails);
16955    method public final void onDeregistered(@Nullable android.telephony.ims.ImsReasonInfo, int, int, @NonNull android.telephony.ims.SipDetails);
16956    method public final void onRegistered(int);
16957    method public final void onRegistered(@NonNull android.telephony.ims.ImsRegistrationAttributes);
16958    method public final void onRegistering(int);
16959    method public final void onRegistering(@NonNull android.telephony.ims.ImsRegistrationAttributes);
16960    method public final void onSubscriberAssociatedUriChanged(android.net.Uri[]);
16961    method public final void onTechnologyChangeFailed(int, android.telephony.ims.ImsReasonInfo);
16962    method public void triggerFullNetworkRegistration(@IntRange(from=100, to=699) int, @Nullable String);
16963    method public void triggerSipDelegateDeregistration();
16964    method public void updateSipDelegateRegistration();
16965  }
16966
16967  public class ImsSmsImplBase {
16968    ctor public ImsSmsImplBase();
16969    ctor public ImsSmsImplBase(@NonNull java.util.concurrent.Executor);
16970    method public void acknowledgeSms(int, @IntRange(from=0, to=65535) int, int);
16971    method public void acknowledgeSms(int, @IntRange(from=0, to=65535) int, int, @NonNull byte[]);
16972    method public void acknowledgeSmsReport(int, @IntRange(from=0, to=65535) int, int);
16973    method public String getSmsFormat();
16974    method public void onReady();
16975    method @Deprecated public final void onSendSmsResult(int, @IntRange(from=0, to=65535) int, int, int) throws java.lang.RuntimeException;
16976    method public final void onSendSmsResultError(int, @IntRange(from=0, to=65535) int, int, int, int) throws java.lang.RuntimeException;
16977    method public final void onSendSmsResultSuccess(int, @IntRange(from=0, to=65535) int) throws java.lang.RuntimeException;
16978    method public final void onSmsReceived(int, String, byte[]) throws java.lang.RuntimeException;
16979    method @Deprecated public final void onSmsStatusReportReceived(int, @IntRange(from=0, to=65535) int, String, byte[]) throws java.lang.RuntimeException;
16980    method public final void onSmsStatusReportReceived(int, String, byte[]) throws java.lang.RuntimeException;
16981    method public void sendSms(int, @IntRange(from=0, to=65535) int, String, String, boolean, byte[]);
16982    field public static final int DELIVER_STATUS_ERROR_GENERIC = 2; // 0x2
16983    field public static final int DELIVER_STATUS_ERROR_NO_MEMORY = 3; // 0x3
16984    field public static final int DELIVER_STATUS_ERROR_REQUEST_NOT_SUPPORTED = 4; // 0x4
16985    field public static final int DELIVER_STATUS_OK = 1; // 0x1
16986    field public static final int RESULT_NO_NETWORK_ERROR = -1; // 0xffffffff
16987    field public static final int SEND_STATUS_ERROR = 2; // 0x2
16988    field public static final int SEND_STATUS_ERROR_FALLBACK = 4; // 0x4
16989    field public static final int SEND_STATUS_ERROR_RETRY = 3; // 0x3
16990    field public static final int SEND_STATUS_OK = 1; // 0x1
16991    field public static final int STATUS_REPORT_STATUS_ERROR = 2; // 0x2
16992    field public static final int STATUS_REPORT_STATUS_OK = 1; // 0x1
16993  }
16994
16995  public class ImsUtImplBase {
16996    ctor public ImsUtImplBase();
16997    method public void close();
16998    method public int queryCallBarring(int);
16999    method public int queryCallBarringForServiceClass(int, int);
17000    method public int queryCallForward(int, String);
17001    method public int queryCallWaiting();
17002    method public int queryClip();
17003    method public int queryClir();
17004    method public int queryColp();
17005    method public int queryColr();
17006    method public void setListener(android.telephony.ims.ImsUtListener);
17007    method public int transact(android.os.Bundle);
17008    method public int updateCallBarring(int, int, String[]);
17009    method public int updateCallBarringForServiceClass(int, int, String[], int);
17010    method public int updateCallForward(int, int, String, int, int);
17011    method public int updateCallWaiting(boolean, int);
17012    method public int updateClip(boolean);
17013    method public int updateClir(int);
17014    method public int updateColp(boolean);
17015    method public int updateColr(int);
17016  }
17017
17018  public class RcsCapabilityExchangeImplBase {
17019    ctor public RcsCapabilityExchangeImplBase();
17020    method public void publishCapabilities(@NonNull String, @NonNull android.telephony.ims.stub.RcsCapabilityExchangeImplBase.PublishResponseCallback);
17021    method public void sendOptionsCapabilityRequest(@NonNull android.net.Uri, @NonNull java.util.Set<java.lang.String>, @NonNull android.telephony.ims.stub.RcsCapabilityExchangeImplBase.OptionsResponseCallback);
17022    method public void subscribeForCapabilities(@NonNull java.util.Collection<android.net.Uri>, @NonNull android.telephony.ims.stub.RcsCapabilityExchangeImplBase.SubscribeResponseCallback);
17023    field public static final int COMMAND_CODE_FETCH_ERROR = 3; // 0x3
17024    field public static final int COMMAND_CODE_GENERIC_FAILURE = 1; // 0x1
17025    field public static final int COMMAND_CODE_INSUFFICIENT_MEMORY = 5; // 0x5
17026    field public static final int COMMAND_CODE_INVALID_PARAM = 2; // 0x2
17027    field public static final int COMMAND_CODE_LOST_NETWORK_CONNECTION = 6; // 0x6
17028    field public static final int COMMAND_CODE_NOT_FOUND = 8; // 0x8
17029    field public static final int COMMAND_CODE_NOT_SUPPORTED = 7; // 0x7
17030    field public static final int COMMAND_CODE_NO_CHANGE = 10; // 0xa
17031    field public static final int COMMAND_CODE_REQUEST_TIMEOUT = 4; // 0x4
17032    field public static final int COMMAND_CODE_SERVICE_UNAVAILABLE = 9; // 0x9
17033    field public static final int COMMAND_CODE_SERVICE_UNKNOWN = 0; // 0x0
17034  }
17035
17036  public static interface RcsCapabilityExchangeImplBase.OptionsResponseCallback {
17037    method public void onCommandError(int) throws android.telephony.ims.ImsException;
17038    method public void onNetworkResponse(int, @NonNull String, @NonNull java.util.List<java.lang.String>) throws android.telephony.ims.ImsException;
17039  }
17040
17041  public static interface RcsCapabilityExchangeImplBase.PublishResponseCallback {
17042    method public void onCommandError(int) throws android.telephony.ims.ImsException;
17043    method @Deprecated public void onNetworkResponse(@IntRange(from=100, to=699) int, @NonNull String) throws android.telephony.ims.ImsException;
17044    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;
17045    method public default void onNetworkResponse(@NonNull android.telephony.ims.SipDetails) throws android.telephony.ims.ImsException;
17046  }
17047
17048  public static interface RcsCapabilityExchangeImplBase.SubscribeResponseCallback {
17049    method public void onCommandError(int) throws android.telephony.ims.ImsException;
17050    method @Deprecated public void onNetworkResponse(@IntRange(from=100, to=699) int, @NonNull String) throws android.telephony.ims.ImsException;
17051    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;
17052    method public default void onNetworkResponse(@NonNull android.telephony.ims.SipDetails) throws android.telephony.ims.ImsException;
17053    method public void onNotifyCapabilitiesUpdate(@NonNull java.util.List<java.lang.String>) throws android.telephony.ims.ImsException;
17054    method public void onResourceTerminated(@NonNull java.util.List<android.util.Pair<android.net.Uri,java.lang.String>>) throws android.telephony.ims.ImsException;
17055    method public void onTerminated(@NonNull String, long) throws android.telephony.ims.ImsException;
17056  }
17057
17058  public interface SipDelegate {
17059    method public void cleanupSession(@NonNull String);
17060    method public void notifyMessageReceiveError(@NonNull String, int);
17061    method public void notifyMessageReceived(@NonNull String);
17062    method public void sendMessage(@NonNull android.telephony.ims.SipMessage, long);
17063  }
17064
17065  public class SipTransportImplBase {
17066    ctor public SipTransportImplBase();
17067    ctor public SipTransportImplBase(@NonNull java.util.concurrent.Executor);
17068    method public void createSipDelegate(int, @NonNull android.telephony.ims.DelegateRequest, @NonNull android.telephony.ims.DelegateStateCallback, @NonNull android.telephony.ims.DelegateMessageCallback);
17069    method public void destroySipDelegate(@NonNull android.telephony.ims.stub.SipDelegate, int);
17070  }
17071
17072}
17073
17074package android.telephony.mbms {
17075
17076  public static class DownloadRequest.Builder {
17077    method public android.telephony.mbms.DownloadRequest.Builder setServiceId(String);
17078  }
17079
17080  public final class FileInfo implements android.os.Parcelable {
17081    ctor public FileInfo(android.net.Uri, String);
17082  }
17083
17084  public final class FileServiceInfo extends android.telephony.mbms.ServiceInfo implements android.os.Parcelable {
17085    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>);
17086  }
17087
17088  public class MbmsDownloadReceiver extends android.content.BroadcastReceiver {
17089    field public static final int RESULT_APP_NOTIFICATION_ERROR = 6; // 0x6
17090    field public static final int RESULT_BAD_TEMP_FILE_ROOT = 3; // 0x3
17091    field public static final int RESULT_DOWNLOAD_FINALIZATION_ERROR = 4; // 0x4
17092    field public static final int RESULT_INVALID_ACTION = 1; // 0x1
17093    field public static final int RESULT_MALFORMED_INTENT = 2; // 0x2
17094    field public static final int RESULT_OK = 0; // 0x0
17095    field public static final int RESULT_TEMP_FILE_GENERATION_ERROR = 5; // 0x5
17096  }
17097
17098  public final class StreamingServiceInfo extends android.telephony.mbms.ServiceInfo implements android.os.Parcelable {
17099    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);
17100  }
17101
17102  public final class UriPathPair implements android.os.Parcelable {
17103    method public int describeContents();
17104    method public android.net.Uri getContentUri();
17105    method public android.net.Uri getFilePathUri();
17106    method public void writeToParcel(android.os.Parcel, int);
17107    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.mbms.UriPathPair> CREATOR;
17108  }
17109
17110}
17111
17112package android.telephony.mbms.vendor {
17113
17114  public class MbmsDownloadServiceBase extends android.os.Binder implements android.os.IInterface {
17115    ctor public MbmsDownloadServiceBase();
17116    method public int addProgressListener(android.telephony.mbms.DownloadRequest, android.telephony.mbms.DownloadProgressListener) throws android.os.RemoteException;
17117    method public int addServiceAnnouncement(int, @NonNull byte[]);
17118    method public int addStatusListener(android.telephony.mbms.DownloadRequest, android.telephony.mbms.DownloadStatusListener) throws android.os.RemoteException;
17119    method public android.os.IBinder asBinder();
17120    method public int cancelDownload(android.telephony.mbms.DownloadRequest) throws android.os.RemoteException;
17121    method public void dispose(int) throws android.os.RemoteException;
17122    method public int download(android.telephony.mbms.DownloadRequest) throws android.os.RemoteException;
17123    method public int initialize(int, android.telephony.mbms.MbmsDownloadSessionCallback) throws android.os.RemoteException;
17124    method @NonNull public java.util.List<android.telephony.mbms.DownloadRequest> listPendingDownloads(int) throws android.os.RemoteException;
17125    method public void onAppCallbackDied(int, int);
17126    method public boolean onTransact(int, android.os.Parcel, android.os.Parcel, int) throws android.os.RemoteException;
17127    method public int removeProgressListener(android.telephony.mbms.DownloadRequest, android.telephony.mbms.DownloadProgressListener) throws android.os.RemoteException;
17128    method public int removeStatusListener(android.telephony.mbms.DownloadRequest, android.telephony.mbms.DownloadStatusListener) throws android.os.RemoteException;
17129    method public int requestDownloadState(android.telephony.mbms.DownloadRequest, android.telephony.mbms.FileInfo) throws android.os.RemoteException;
17130    method public int requestUpdateFileServices(int, java.util.List<java.lang.String>) throws android.os.RemoteException;
17131    method public int resetDownloadKnowledge(android.telephony.mbms.DownloadRequest) throws android.os.RemoteException;
17132    method public int setTempFileRootDirectory(int, String) throws android.os.RemoteException;
17133  }
17134
17135  public class MbmsGroupCallServiceBase extends android.app.Service {
17136    ctor public MbmsGroupCallServiceBase();
17137    method public void dispose(int) throws android.os.RemoteException;
17138    method public int initialize(@NonNull android.telephony.mbms.MbmsGroupCallSessionCallback, int) throws android.os.RemoteException;
17139    method public void onAppCallbackDied(int, int);
17140    method public android.os.IBinder onBind(android.content.Intent);
17141    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);
17142    method public void stopGroupCall(int, long);
17143    method public void updateGroupCall(int, long, @NonNull java.util.List<java.lang.Integer>, @NonNull java.util.List<java.lang.Integer>);
17144  }
17145
17146  public class MbmsStreamingServiceBase extends android.os.Binder implements android.os.IInterface {
17147    ctor public MbmsStreamingServiceBase();
17148    method public android.os.IBinder asBinder();
17149    method public void dispose(int) throws android.os.RemoteException;
17150    method @Nullable public android.net.Uri getPlaybackUri(int, String) throws android.os.RemoteException;
17151    method public int initialize(android.telephony.mbms.MbmsStreamingSessionCallback, int) throws android.os.RemoteException;
17152    method public void onAppCallbackDied(int, int);
17153    method public boolean onTransact(int, android.os.Parcel, android.os.Parcel, int) throws android.os.RemoteException;
17154    method public int requestUpdateStreamingServices(int, java.util.List<java.lang.String>) throws android.os.RemoteException;
17155    method public int startStreaming(int, String, android.telephony.mbms.StreamingServiceCallback) throws android.os.RemoteException;
17156    method public void stopStreaming(int, String) throws android.os.RemoteException;
17157  }
17158
17159  public class VendorUtils {
17160    ctor public VendorUtils();
17161    method public static android.content.ComponentName getAppReceiverFromPackageName(android.content.Context, String);
17162    field public static final String ACTION_CLEANUP = "android.telephony.mbms.action.CLEANUP";
17163    field public static final String ACTION_DOWNLOAD_RESULT_INTERNAL = "android.telephony.mbms.action.DOWNLOAD_RESULT_INTERNAL";
17164    field public static final String ACTION_FILE_DESCRIPTOR_REQUEST = "android.telephony.mbms.action.FILE_DESCRIPTOR_REQUEST";
17165    field public static final String EXTRA_FD_COUNT = "android.telephony.mbms.extra.FD_COUNT";
17166    field public static final String EXTRA_FINAL_URI = "android.telephony.mbms.extra.FINAL_URI";
17167    field public static final String EXTRA_FREE_URI_LIST = "android.telephony.mbms.extra.FREE_URI_LIST";
17168    field public static final String EXTRA_PAUSED_LIST = "android.telephony.mbms.extra.PAUSED_LIST";
17169    field public static final String EXTRA_PAUSED_URI_LIST = "android.telephony.mbms.extra.PAUSED_URI_LIST";
17170    field public static final String EXTRA_SERVICE_ID = "android.telephony.mbms.extra.SERVICE_ID";
17171    field public static final String EXTRA_TEMP_FILES_IN_USE = "android.telephony.mbms.extra.TEMP_FILES_IN_USE";
17172    field public static final String EXTRA_TEMP_FILE_ROOT = "android.telephony.mbms.extra.TEMP_FILE_ROOT";
17173    field public static final String EXTRA_TEMP_LIST = "android.telephony.mbms.extra.TEMP_LIST";
17174  }
17175
17176}
17177
17178package android.text {
17179
17180  public final class FontConfig implements android.os.Parcelable {
17181    method public int describeContents();
17182    method @NonNull public java.util.List<android.text.FontConfig.Alias> getAliases();
17183    method @IntRange(from=0) public int getConfigVersion();
17184    method @NonNull public java.util.List<android.text.FontConfig.FontFamily> getFontFamilies();
17185    method public long getLastModifiedTimeMillis();
17186    method @NonNull public java.util.List<android.text.FontConfig.NamedFamilyList> getNamedFamilyLists();
17187    method public void writeToParcel(@NonNull android.os.Parcel, int);
17188    field @NonNull public static final android.os.Parcelable.Creator<android.text.FontConfig> CREATOR;
17189  }
17190
17191  public static final class FontConfig.Alias implements android.os.Parcelable {
17192    method public int describeContents();
17193    method @NonNull public String getName();
17194    method @NonNull public String getOriginal();
17195    method @IntRange(from=0, to=1000) public int getWeight();
17196    method public void writeToParcel(@NonNull android.os.Parcel, int);
17197    field @NonNull public static final android.os.Parcelable.Creator<android.text.FontConfig.Alias> CREATOR;
17198  }
17199
17200  public static final class FontConfig.Font implements android.os.Parcelable {
17201    method public int describeContents();
17202    method @NonNull public java.io.File getFile();
17203    method @Nullable public String getFontFamilyName();
17204    method @NonNull public String getFontVariationSettings();
17205    method @NonNull public String getPostScriptName();
17206    method @NonNull public android.graphics.fonts.FontStyle getStyle();
17207    method public int getTtcIndex();
17208    method public void writeToParcel(@NonNull android.os.Parcel, int);
17209    field @NonNull public static final android.os.Parcelable.Creator<android.text.FontConfig.Font> CREATOR;
17210  }
17211
17212  public static final class FontConfig.FontFamily implements android.os.Parcelable {
17213    method public int describeContents();
17214    method @NonNull public java.util.List<android.text.FontConfig.Font> getFontList();
17215    method @NonNull public android.os.LocaleList getLocaleList();
17216    method @Deprecated @Nullable public String getName();
17217    method public int getVariant();
17218    method public void writeToParcel(@NonNull android.os.Parcel, int);
17219    field @NonNull public static final android.os.Parcelable.Creator<android.text.FontConfig.FontFamily> CREATOR;
17220    field public static final int VARIANT_COMPACT = 1; // 0x1
17221    field public static final int VARIANT_DEFAULT = 0; // 0x0
17222    field public static final int VARIANT_ELEGANT = 2; // 0x2
17223  }
17224
17225  public static final class FontConfig.NamedFamilyList implements android.os.Parcelable {
17226    method public int describeContents();
17227    method @NonNull public java.util.List<android.text.FontConfig.FontFamily> getFamilies();
17228    method @NonNull public String getName();
17229    method public void writeToParcel(@NonNull android.os.Parcel, int);
17230    field @NonNull public static final android.os.Parcelable.Creator<android.text.FontConfig.NamedFamilyList> CREATOR;
17231  }
17232
17233}
17234
17235package android.util {
17236
17237  public class EventLog {
17238    method public static void readEventsOnWrapping(int[], long, java.util.Collection<android.util.EventLog.Event>) throws java.io.IOException;
17239  }
17240
17241  public static final class EventLog.Event {
17242    method public int getUid();
17243  }
17244
17245}
17246
17247package android.view {
17248
17249  @UiThread public class View implements android.view.accessibility.AccessibilityEventSource android.graphics.drawable.Drawable.Callback android.view.KeyEvent.Callback {
17250    method @NonNull public final java.util.List<android.graphics.Rect> getUnrestrictedPreferKeepClearRects();
17251    method @RequiresPermission(android.Manifest.permission.SET_UNRESTRICTED_KEEP_CLEAR_AREAS) public final void setUnrestrictedPreferKeepClearRects(@NonNull java.util.List<android.graphics.Rect>);
17252  }
17253
17254  public abstract class Window {
17255    method public void addSystemFlags(@android.view.WindowManager.LayoutParams.SystemFlags int);
17256  }
17257
17258  public interface WindowManager extends android.view.ViewManager {
17259    method @RequiresPermission(android.Manifest.permission.RESTRICTED_VR_ACCESS) public android.graphics.Region getCurrentImeTouchRegion();
17260    method @NonNull public default java.util.List<android.content.ComponentName> notifyScreenshotListeners(int);
17261    method public default void registerTaskFpsCallback(@IntRange(from=0) int, @NonNull java.util.concurrent.Executor, @NonNull android.window.TaskFpsCallback);
17262    method public default void unregisterTaskFpsCallback(@NonNull android.window.TaskFpsCallback);
17263  }
17264
17265  public static class WindowManager.LayoutParams extends android.view.ViewGroup.LayoutParams implements android.os.Parcelable {
17266    method public final long getUserActivityTimeout();
17267    method public boolean isSystemApplicationOverlay();
17268    method @RequiresPermission(android.Manifest.permission.SYSTEM_APPLICATION_OVERLAY) public void setSystemApplicationOverlay(boolean);
17269    method public final void setUserActivityTimeout(long);
17270    field @RequiresPermission(android.Manifest.permission.HIDE_NON_SYSTEM_OVERLAY_WINDOWS) public static final int SYSTEM_FLAG_HIDE_NON_SYSTEM_OVERLAY_WINDOWS = 524288; // 0x80000
17271    field @RequiresPermission(android.Manifest.permission.INTERNAL_SYSTEM_WINDOW) public static final int SYSTEM_FLAG_SHOW_FOR_ALL_USERS = 16; // 0x10
17272  }
17273
17274  @IntDef(flag=true, prefix={"SYSTEM_FLAG_"}, value={android.view.WindowManager.LayoutParams.SYSTEM_FLAG_HIDE_NON_SYSTEM_OVERLAY_WINDOWS, android.view.WindowManager.LayoutParams.SYSTEM_FLAG_SHOW_FOR_ALL_USERS}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface WindowManager.LayoutParams.SystemFlags {
17275  }
17276
17277}
17278
17279package android.view.accessibility {
17280
17281  public abstract class AccessibilityDisplayProxy {
17282    ctor public AccessibilityDisplayProxy(int, @NonNull java.util.concurrent.Executor, @NonNull java.util.List<android.accessibilityservice.AccessibilityServiceInfo>);
17283    method @Nullable public android.view.accessibility.AccessibilityNodeInfo findFocus(int);
17284    method public int getDisplayId();
17285    method @NonNull public final java.util.List<android.accessibilityservice.AccessibilityServiceInfo> getInstalledAndEnabledServices();
17286    method @NonNull public java.util.List<android.view.accessibility.AccessibilityWindowInfo> getWindows();
17287    method public void interrupt();
17288    method public void onAccessibilityEvent(@NonNull android.view.accessibility.AccessibilityEvent);
17289    method public void onProxyConnected();
17290    method public void setAccessibilityFocusAppearance(int, @ColorInt int);
17291    method public void setInstalledAndEnabledServices(@NonNull java.util.List<android.accessibilityservice.AccessibilityServiceInfo>);
17292  }
17293
17294  public final class AccessibilityManager {
17295    method public int getAccessibilityWindowId(@Nullable android.os.IBinder);
17296    method @RequiresPermission(android.Manifest.permission.MANAGE_ACCESSIBILITY) public void performAccessibilityShortcut();
17297    method @RequiresPermission(allOf={android.Manifest.permission.MANAGE_ACCESSIBILITY, android.Manifest.permission.CREATE_VIRTUAL_DEVICE}) public boolean registerDisplayProxy(@NonNull android.view.accessibility.AccessibilityDisplayProxy);
17298    method @RequiresPermission(android.Manifest.permission.MANAGE_ACCESSIBILITY) public void registerSystemAction(@NonNull android.app.RemoteAction, int);
17299    method @RequiresPermission(allOf={android.Manifest.permission.MANAGE_ACCESSIBILITY, android.Manifest.permission.CREATE_VIRTUAL_DEVICE}) public boolean unregisterDisplayProxy(@NonNull android.view.accessibility.AccessibilityDisplayProxy);
17300    method @RequiresPermission(android.Manifest.permission.MANAGE_ACCESSIBILITY) public void unregisterSystemAction(int);
17301  }
17302
17303  public class CaptioningManager {
17304    method @RequiresPermission(android.Manifest.permission.SET_SYSTEM_AUDIO_CAPTION) public final void setSystemAudioCaptioningEnabled(boolean);
17305    method @RequiresPermission(android.Manifest.permission.SET_SYSTEM_AUDIO_CAPTION) public final void setSystemAudioCaptioningUiEnabled(boolean);
17306  }
17307
17308}
17309
17310package android.view.autofill {
17311
17312  public final class AutofillManager {
17313    method public void setAugmentedAutofillWhitelist(@Nullable java.util.Set<java.lang.String>, @Nullable java.util.Set<android.content.ComponentName>);
17314  }
17315
17316}
17317
17318package android.view.contentcapture {
17319
17320  public final class ContentCaptureContext implements android.os.Parcelable {
17321    method @Nullable public android.content.ComponentName getActivityComponent();
17322    method @Nullable public android.app.assist.ActivityId getActivityId();
17323    method public int getDisplayId();
17324    method public int getFlags();
17325    method @Nullable public android.view.contentcapture.ContentCaptureSessionId getParentSessionId();
17326    method public int getTaskId();
17327    method @Nullable public android.os.IBinder getWindowToken();
17328    field public static final int FLAG_DISABLED_BY_APP = 1; // 0x1
17329    field public static final int FLAG_DISABLED_BY_FLAG_SECURE = 2; // 0x2
17330    field public static final int FLAG_RECONNECTED = 4; // 0x4
17331  }
17332
17333  public final class ContentCaptureEvent implements android.os.Parcelable {
17334    method public int describeContents();
17335    method @Nullable public android.graphics.Rect getBounds();
17336    method @Nullable public android.view.contentcapture.ContentCaptureContext getContentCaptureContext();
17337    method public long getEventTime();
17338    method @Nullable public android.view.autofill.AutofillId getId();
17339    method @Nullable public java.util.List<android.view.autofill.AutofillId> getIds();
17340    method @Nullable public android.graphics.Insets getInsets();
17341    method @Nullable public CharSequence getText();
17342    method public int getType();
17343    method @Nullable public android.view.contentcapture.ViewNode getViewNode();
17344    method public void writeToParcel(android.os.Parcel, int);
17345    field @NonNull public static final android.os.Parcelable.Creator<android.view.contentcapture.ContentCaptureEvent> CREATOR;
17346    field public static final int TYPE_CONTEXT_UPDATED = 6; // 0x6
17347    field public static final int TYPE_SESSION_PAUSED = 8; // 0x8
17348    field public static final int TYPE_SESSION_RESUMED = 7; // 0x7
17349    field public static final int TYPE_VIEW_APPEARED = 1; // 0x1
17350    field public static final int TYPE_VIEW_DISAPPEARED = 2; // 0x2
17351    field public static final int TYPE_VIEW_INSETS_CHANGED = 9; // 0x9
17352    field public static final int TYPE_VIEW_TEXT_CHANGED = 3; // 0x3
17353    field public static final int TYPE_VIEW_TREE_APPEARED = 5; // 0x5
17354    field public static final int TYPE_VIEW_TREE_APPEARING = 4; // 0x4
17355    field public static final int TYPE_WINDOW_BOUNDS_CHANGED = 10; // 0xa
17356  }
17357
17358  public final class ContentCaptureManager {
17359    method public boolean isContentCaptureFeatureEnabled();
17360    field public static final int NO_SESSION_ID = 0; // 0x0
17361  }
17362
17363  public final class ViewNode extends android.app.assist.AssistStructure.ViewNode {
17364    method @Nullable public android.view.autofill.AutofillId getParentAutofillId();
17365  }
17366
17367}
17368
17369package android.view.displayhash {
17370
17371  public final class DisplayHash implements android.os.Parcelable {
17372    ctor public DisplayHash(long, @NonNull android.graphics.Rect, @NonNull String, @NonNull byte[], @NonNull byte[]);
17373    method public int describeContents();
17374    method @NonNull public android.graphics.Rect getBoundsInWindow();
17375    method @NonNull public String getHashAlgorithm();
17376    method @NonNull public byte[] getHmac();
17377    method @NonNull public byte[] getImageHash();
17378    method public long getTimeMillis();
17379    method public void writeToParcel(@NonNull android.os.Parcel, int);
17380  }
17381
17382}
17383
17384package android.view.inputmethod {
17385
17386  public final class InputMethodManager {
17387    method @Nullable @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS_FULL) public android.view.inputmethod.InputMethodInfo getCurrentInputMethodInfoAsUser(@NonNull android.os.UserHandle);
17388  }
17389
17390}
17391
17392package android.view.translation {
17393
17394  public final class TranslationCapability implements android.os.Parcelable {
17395    ctor public TranslationCapability(int, @NonNull android.view.translation.TranslationSpec, @NonNull android.view.translation.TranslationSpec, boolean, int);
17396  }
17397
17398  public final class TranslationContext implements android.os.Parcelable {
17399    method @Nullable public android.app.assist.ActivityId getActivityId();
17400  }
17401
17402  public final class UiTranslationManager {
17403    method @RequiresPermission(android.Manifest.permission.MANAGE_UI_TRANSLATION) public void finishTranslation(@NonNull android.app.assist.ActivityId);
17404    method @RequiresPermission(android.Manifest.permission.MANAGE_UI_TRANSLATION) public void pauseTranslation(@NonNull android.app.assist.ActivityId);
17405    method @RequiresPermission(android.Manifest.permission.MANAGE_UI_TRANSLATION) public void resumeTranslation(@NonNull android.app.assist.ActivityId);
17406    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);
17407  }
17408
17409  public final class UiTranslationSpec implements android.os.Parcelable {
17410    method public int describeContents();
17411    method public boolean shouldPadContentForCompat();
17412    method public void writeToParcel(@NonNull android.os.Parcel, int);
17413    field @NonNull public static final android.os.Parcelable.Creator<android.view.translation.UiTranslationSpec> CREATOR;
17414  }
17415
17416  public static final class UiTranslationSpec.Builder {
17417    ctor public UiTranslationSpec.Builder();
17418    method @NonNull public android.view.translation.UiTranslationSpec build();
17419    method @NonNull public android.view.translation.UiTranslationSpec.Builder setShouldPadContentForCompat(boolean);
17420  }
17421
17422}
17423
17424package android.webkit {
17425
17426  public abstract class CookieManager {
17427    method protected abstract boolean allowFileSchemeCookiesImpl();
17428    method public abstract String getCookie(String, boolean);
17429    method public String getCookie(android.net.WebAddress);
17430    method public abstract boolean hasCookies(boolean);
17431    method protected abstract void setAcceptFileSchemeCookiesImpl(boolean);
17432  }
17433
17434  public class FindActionModeCallback implements android.view.ActionMode.Callback android.text.TextWatcher android.view.View.OnClickListener android.webkit.WebView.FindListener {
17435    ctor public FindActionModeCallback(android.content.Context);
17436    method public void afterTextChanged(android.text.Editable);
17437    method public void beforeTextChanged(CharSequence, int, int, int);
17438    method public void findAll();
17439    method public void finish();
17440    method public int getActionModeGlobalBottom();
17441    method public boolean onActionItemClicked(android.view.ActionMode, android.view.MenuItem);
17442    method public void onClick(android.view.View);
17443    method public boolean onCreateActionMode(android.view.ActionMode, android.view.Menu);
17444    method public void onDestroyActionMode(android.view.ActionMode);
17445    method public void onFindResultReceived(int, int, boolean);
17446    method public boolean onPrepareActionMode(android.view.ActionMode, android.view.Menu);
17447    method public void onTextChanged(CharSequence, int, int, int);
17448    method public void setText(String);
17449    method public void setWebView(@NonNull android.webkit.WebView);
17450    method public void showSoftInput();
17451    method public void updateMatchCount(int, int, boolean);
17452  }
17453
17454  public static class FindActionModeCallback.NoAction implements android.view.ActionMode.Callback {
17455    ctor public FindActionModeCallback.NoAction();
17456    method public boolean onActionItemClicked(android.view.ActionMode, android.view.MenuItem);
17457    method public boolean onCreateActionMode(android.view.ActionMode, android.view.Menu);
17458    method public void onDestroyActionMode(android.view.ActionMode);
17459    method public boolean onPrepareActionMode(android.view.ActionMode, android.view.Menu);
17460  }
17461
17462  public class GeolocationPermissions {
17463    ctor public GeolocationPermissions();
17464  }
17465
17466  public class HttpAuthHandler extends android.os.Handler {
17467    ctor public HttpAuthHandler();
17468  }
17469
17470  public class JsDialogHelper {
17471    ctor public JsDialogHelper(android.webkit.JsPromptResult, int, String, String, String);
17472    ctor public JsDialogHelper(android.webkit.JsPromptResult, android.os.Message);
17473    method public boolean invokeCallback(android.webkit.WebChromeClient, android.webkit.WebView);
17474    method public void showDialog(android.content.Context);
17475    field public static final int ALERT = 1; // 0x1
17476    field public static final int CONFIRM = 2; // 0x2
17477    field public static final int PROMPT = 3; // 0x3
17478    field public static final int UNLOAD = 4; // 0x4
17479  }
17480
17481  public class JsPromptResult extends android.webkit.JsResult {
17482    ctor public JsPromptResult(android.webkit.JsResult.ResultReceiver);
17483    method public String getStringResult();
17484  }
17485
17486  public class JsResult {
17487    ctor public JsResult(android.webkit.JsResult.ResultReceiver);
17488    method public final boolean getResult();
17489  }
17490
17491  public static interface JsResult.ResultReceiver {
17492    method public void onJsResultComplete(android.webkit.JsResult);
17493  }
17494
17495  public interface PacProcessor {
17496    method @NonNull public static android.webkit.PacProcessor createInstance();
17497    method @Nullable public String findProxyForUrl(@NonNull String);
17498    method @NonNull public static android.webkit.PacProcessor getInstance();
17499    method @Nullable public default android.net.Network getNetwork();
17500    method public default void release();
17501    method public default void setNetwork(@Nullable android.net.Network);
17502    method public boolean setProxyScript(@NonNull String);
17503  }
17504
17505  public class SslErrorHandler extends android.os.Handler {
17506    ctor public SslErrorHandler();
17507  }
17508
17509  @Deprecated public abstract class TokenBindingService {
17510    ctor @Deprecated public TokenBindingService();
17511  }
17512
17513  public class WebChromeClient {
17514    method @Deprecated public void openFileChooser(android.webkit.ValueCallback<android.net.Uri>, String, String);
17515  }
17516
17517  public abstract class WebHistoryItem implements java.lang.Cloneable {
17518    method @Deprecated public abstract int getId();
17519  }
17520
17521  @Deprecated public abstract class WebIconDatabase {
17522    method @Deprecated public abstract void bulkRequestIconForPageUrl(android.content.ContentResolver, String, android.webkit.WebIconDatabase.IconListener);
17523  }
17524
17525  public abstract class WebMessagePort {
17526    ctor public WebMessagePort();
17527  }
17528
17529  public abstract class WebResourceError {
17530    ctor public WebResourceError();
17531  }
17532
17533  public class WebResourceResponse {
17534    ctor public WebResourceResponse(boolean, String, String, int, String, java.util.Map<java.lang.String,java.lang.String>, java.io.InputStream);
17535  }
17536
17537  public abstract class WebSettings {
17538    method public abstract boolean getAcceptThirdPartyCookies();
17539    method @Deprecated public abstract boolean getNavDump();
17540    method @Deprecated public abstract boolean getPluginsEnabled();
17541    method @Deprecated public abstract boolean getUseWebViewBackgroundForOverscrollBackground();
17542    method @Deprecated public abstract int getUserAgent();
17543    method public abstract boolean getVideoOverlayForEmbeddedEncryptedVideoEnabled();
17544    method public abstract void setAcceptThirdPartyCookies(boolean);
17545    method @Deprecated public abstract void setNavDump(boolean);
17546    method @Deprecated public abstract void setPluginsEnabled(boolean);
17547    method @Deprecated public abstract void setUseWebViewBackgroundForOverscrollBackground(boolean);
17548    method @Deprecated public abstract void setUserAgent(int);
17549    method public abstract void setVideoOverlayForEmbeddedEncryptedVideoEnabled(boolean);
17550    field public static final long ENABLE_SIMPLIFIED_DARK_MODE = 214741472L; // 0xcccb1e0L
17551  }
17552
17553  public class WebStorage {
17554    ctor public WebStorage();
17555  }
17556
17557  public static class WebStorage.Origin {
17558    ctor protected WebStorage.Origin(String, long, long);
17559  }
17560
17561  public class WebView extends android.widget.AbsoluteLayout implements android.view.ViewGroup.OnHierarchyChangeListener android.view.ViewTreeObserver.OnGlobalFocusChangeListener {
17562    method public android.webkit.WebViewProvider getWebViewProvider();
17563  }
17564
17565  public static class WebView.HitTestResult {
17566    ctor public WebView.HitTestResult();
17567    method public void setExtra(String);
17568    method public void setType(int);
17569  }
17570
17571  public class WebView.PrivateAccess {
17572    ctor public WebView.PrivateAccess();
17573    method public void awakenScrollBars(int);
17574    method public void awakenScrollBars(int, boolean);
17575    method public float getHorizontalScrollFactor();
17576    method public int getHorizontalScrollbarHeight();
17577    method public float getVerticalScrollFactor();
17578    method public void onScrollChanged(int, int, int, int);
17579    method public void overScrollBy(int, int, int, int, int, int, int, int, boolean);
17580    method public void setMeasuredDimension(int, int);
17581    method public void setScrollXRaw(int);
17582    method public void setScrollYRaw(int);
17583    method public void super_computeScroll();
17584    method public boolean super_dispatchKeyEvent(android.view.KeyEvent);
17585    method public int super_getScrollBarStyle();
17586    method @Nullable public android.view.WindowInsets super_onApplyWindowInsets(@Nullable android.view.WindowInsets);
17587    method public void super_onDrawVerticalScrollBar(android.graphics.Canvas, android.graphics.drawable.Drawable, int, int, int, int);
17588    method public boolean super_onGenericMotionEvent(android.view.MotionEvent);
17589    method public boolean super_onHoverEvent(android.view.MotionEvent);
17590    method public boolean super_performAccessibilityAction(int, android.os.Bundle);
17591    method public boolean super_performLongClick();
17592    method public boolean super_requestFocus(int, android.graphics.Rect);
17593    method public void super_scrollTo(int, int);
17594    method public boolean super_setFrame(int, int, int, int);
17595    method public void super_setLayoutParams(android.view.ViewGroup.LayoutParams);
17596    method public void super_startActivityForResult(android.content.Intent, int);
17597  }
17598
17599  public final class WebViewDelegate {
17600    method public void addWebViewAssetPath(android.content.Context);
17601    method @Deprecated public void callDrawGlFunction(android.graphics.Canvas, long);
17602    method @Deprecated public void callDrawGlFunction(@NonNull android.graphics.Canvas, long, @Nullable Runnable);
17603    method @Deprecated public boolean canInvokeDrawGlFunctor(android.view.View);
17604    method @Deprecated public void detachDrawGlFunctor(android.view.View, long);
17605    method public void drawWebViewFunctor(@NonNull android.graphics.Canvas, int);
17606    method public android.app.Application getApplication();
17607    method public String getDataDirectorySuffix();
17608    method public String getErrorString(android.content.Context, int);
17609    method public int getPackageId(android.content.res.Resources, String);
17610    method @NonNull public android.webkit.WebViewFactory.StartupTimestamps getStartupTimestamps();
17611    method @Deprecated public void invokeDrawGlFunctor(android.view.View, long, boolean);
17612    method public boolean isMultiProcessEnabled();
17613    method public boolean isTraceTagEnabled();
17614    method public void setOnTraceEnabledChangeListener(android.webkit.WebViewDelegate.OnTraceEnabledChangeListener);
17615  }
17616
17617  public static interface WebViewDelegate.OnTraceEnabledChangeListener {
17618    method public void onTraceEnabledChange(boolean);
17619  }
17620
17621  public final class WebViewFactory {
17622    ctor public WebViewFactory();
17623    method public static android.content.pm.PackageInfo getLoadedPackageInfo();
17624    method public static int loadWebViewNativeLibraryFromPackage(String, ClassLoader);
17625    method public static void prepareWebViewInZygote();
17626    field public static final int LIBLOAD_ADDRESS_SPACE_NOT_RESERVED = 2; // 0x2
17627    field public static final int LIBLOAD_FAILED_JNI_CALL = 7; // 0x7
17628    field public static final int LIBLOAD_FAILED_LISTING_WEBVIEW_PACKAGES = 4; // 0x4
17629    field public static final int LIBLOAD_FAILED_TO_FIND_NAMESPACE = 10; // 0xa
17630    field public static final int LIBLOAD_FAILED_TO_LOAD_LIBRARY = 6; // 0x6
17631    field public static final int LIBLOAD_FAILED_TO_OPEN_RELRO_FILE = 5; // 0x5
17632    field public static final int LIBLOAD_FAILED_WAITING_FOR_RELRO = 3; // 0x3
17633    field public static final int LIBLOAD_FAILED_WAITING_FOR_WEBVIEW_REASON_UNKNOWN = 8; // 0x8
17634    field public static final int LIBLOAD_SUCCESS = 0; // 0x0
17635    field public static final int LIBLOAD_WRONG_PACKAGE_NAME = 1; // 0x1
17636  }
17637
17638  public static class WebViewFactory.StartupTimestamps {
17639    method public long getAddAssetsEnd();
17640    method public long getAddAssetsStart();
17641    method public long getCreateContextEnd();
17642    method public long getCreateContextStart();
17643    method public long getGetClassLoaderEnd();
17644    method public long getGetClassLoaderStart();
17645    method public long getNativeLoadEnd();
17646    method public long getNativeLoadStart();
17647    method public long getProviderClassForNameEnd();
17648    method public long getProviderClassForNameStart();
17649    method public long getWebViewLoadStart();
17650  }
17651
17652  public interface WebViewFactoryProvider {
17653    method @NonNull public default android.webkit.PacProcessor createPacProcessor();
17654    method public android.webkit.WebViewProvider createWebView(android.webkit.WebView, android.webkit.WebView.PrivateAccess);
17655    method public android.webkit.CookieManager getCookieManager();
17656    method public android.webkit.GeolocationPermissions getGeolocationPermissions();
17657    method @NonNull public default android.webkit.PacProcessor getPacProcessor();
17658    method public android.webkit.ServiceWorkerController getServiceWorkerController();
17659    method public android.webkit.WebViewFactoryProvider.Statics getStatics();
17660    method @Deprecated public android.webkit.TokenBindingService getTokenBindingService();
17661    method public android.webkit.TracingController getTracingController();
17662    method public android.webkit.WebIconDatabase getWebIconDatabase();
17663    method public android.webkit.WebStorage getWebStorage();
17664    method public ClassLoader getWebViewClassLoader();
17665    method public android.webkit.WebViewDatabase getWebViewDatabase(android.content.Context);
17666  }
17667
17668  public static interface WebViewFactoryProvider.Statics {
17669    method public void clearClientCertPreferences(Runnable);
17670    method public void enableSlowWholeDocumentDraw();
17671    method public String findAddress(String);
17672    method public void freeMemoryForTests();
17673    method public String getDefaultUserAgent(android.content.Context);
17674    method @NonNull public android.net.Uri getSafeBrowsingPrivacyPolicyUrl();
17675    method public void initSafeBrowsing(android.content.Context, android.webkit.ValueCallback<java.lang.Boolean>);
17676    method public android.net.Uri[] parseFileChooserResult(int, android.content.Intent);
17677    method public void setSafeBrowsingWhitelist(java.util.List<java.lang.String>, android.webkit.ValueCallback<java.lang.Boolean>);
17678    method public void setWebContentsDebuggingEnabled(boolean);
17679  }
17680
17681  public interface WebViewProvider {
17682    method public void addJavascriptInterface(Object, String);
17683    method public boolean canGoBack();
17684    method public boolean canGoBackOrForward(int);
17685    method public boolean canGoForward();
17686    method public boolean canZoomIn();
17687    method public boolean canZoomOut();
17688    method public android.graphics.Picture capturePicture();
17689    method public void clearCache(boolean);
17690    method public void clearFormData();
17691    method public void clearHistory();
17692    method public void clearMatches();
17693    method public void clearSslPreferences();
17694    method public void clearView();
17695    method public android.webkit.WebBackForwardList copyBackForwardList();
17696    method public android.print.PrintDocumentAdapter createPrintDocumentAdapter(String);
17697    method public android.webkit.WebMessagePort[] createWebMessageChannel();
17698    method public void destroy();
17699    method public void documentHasImages(android.os.Message);
17700    method public void dumpViewHierarchyWithProperties(java.io.BufferedWriter, int);
17701    method public void evaluateJavaScript(String, android.webkit.ValueCallback<java.lang.String>);
17702    method public int findAll(String);
17703    method public void findAllAsync(String);
17704    method public android.view.View findHierarchyView(String, int);
17705    method public void findNext(boolean);
17706    method public void flingScroll(int, int);
17707    method public void freeMemory();
17708    method public android.net.http.SslCertificate getCertificate();
17709    method public int getContentHeight();
17710    method public int getContentWidth();
17711    method public android.graphics.Bitmap getFavicon();
17712    method public android.webkit.WebView.HitTestResult getHitTestResult();
17713    method public String[] getHttpAuthUsernamePassword(String, String);
17714    method public String getOriginalUrl();
17715    method public int getProgress();
17716    method public boolean getRendererPriorityWaivedWhenNotVisible();
17717    method public int getRendererRequestedPriority();
17718    method public float getScale();
17719    method public android.webkit.WebViewProvider.ScrollDelegate getScrollDelegate();
17720    method public android.webkit.WebSettings getSettings();
17721    method @NonNull public default android.view.textclassifier.TextClassifier getTextClassifier();
17722    method public String getTitle();
17723    method public String getTouchIconUrl();
17724    method public String getUrl();
17725    method public android.webkit.WebViewProvider.ViewDelegate getViewDelegate();
17726    method public int getVisibleTitleHeight();
17727    method public android.webkit.WebChromeClient getWebChromeClient();
17728    method public android.webkit.WebViewClient getWebViewClient();
17729    method @Nullable public android.webkit.WebViewRenderProcess getWebViewRenderProcess();
17730    method @Nullable public android.webkit.WebViewRenderProcessClient getWebViewRenderProcessClient();
17731    method public android.view.View getZoomControls();
17732    method public void goBack();
17733    method public void goBackOrForward(int);
17734    method public void goForward();
17735    method public void init(java.util.Map<java.lang.String,java.lang.Object>, boolean);
17736    method public void insertVisualStateCallback(long, android.webkit.WebView.VisualStateCallback);
17737    method public void invokeZoomPicker();
17738    method public boolean isPaused();
17739    method public boolean isPrivateBrowsingEnabled();
17740    method public void loadData(String, String, String);
17741    method public void loadDataWithBaseURL(String, String, String, String, String);
17742    method public void loadUrl(String, java.util.Map<java.lang.String,java.lang.String>);
17743    method public void loadUrl(String);
17744    method public void notifyFindDialogDismissed();
17745    method public void onPause();
17746    method public void onResume();
17747    method public boolean overlayHorizontalScrollbar();
17748    method public boolean overlayVerticalScrollbar();
17749    method public boolean pageDown(boolean);
17750    method public boolean pageUp(boolean);
17751    method public void pauseTimers();
17752    method public void postMessageToMainFrame(android.webkit.WebMessage, android.net.Uri);
17753    method public void postUrl(String, byte[]);
17754    method public void reload();
17755    method public void removeJavascriptInterface(String);
17756    method public void requestFocusNodeHref(android.os.Message);
17757    method public void requestImageRef(android.os.Message);
17758    method public boolean restorePicture(android.os.Bundle, java.io.File);
17759    method public android.webkit.WebBackForwardList restoreState(android.os.Bundle);
17760    method public void resumeTimers();
17761    method public void savePassword(String, String, String);
17762    method public boolean savePicture(android.os.Bundle, java.io.File);
17763    method public android.webkit.WebBackForwardList saveState(android.os.Bundle);
17764    method public void saveWebArchive(String);
17765    method public void saveWebArchive(String, boolean, android.webkit.ValueCallback<java.lang.String>);
17766    method public void setCertificate(android.net.http.SslCertificate);
17767    method public void setDownloadListener(android.webkit.DownloadListener);
17768    method public void setFindListener(android.webkit.WebView.FindListener);
17769    method public void setHorizontalScrollbarOverlay(boolean);
17770    method public void setHttpAuthUsernamePassword(String, String, String, String);
17771    method public void setInitialScale(int);
17772    method public void setMapTrackballToArrowKeys(boolean);
17773    method public void setNetworkAvailable(boolean);
17774    method public void setPictureListener(android.webkit.WebView.PictureListener);
17775    method public void setRendererPriorityPolicy(int, boolean);
17776    method public default void setTextClassifier(@Nullable android.view.textclassifier.TextClassifier);
17777    method public void setVerticalScrollbarOverlay(boolean);
17778    method public void setWebChromeClient(android.webkit.WebChromeClient);
17779    method public void setWebViewClient(android.webkit.WebViewClient);
17780    method public void setWebViewRenderProcessClient(@Nullable java.util.concurrent.Executor, @Nullable android.webkit.WebViewRenderProcessClient);
17781    method public boolean showFindDialog(String, boolean);
17782    method public void stopLoading();
17783    method public boolean zoomBy(float);
17784    method public boolean zoomIn();
17785    method public boolean zoomOut();
17786  }
17787
17788  public static interface WebViewProvider.ScrollDelegate {
17789    method public int computeHorizontalScrollOffset();
17790    method public int computeHorizontalScrollRange();
17791    method public void computeScroll();
17792    method public int computeVerticalScrollExtent();
17793    method public int computeVerticalScrollOffset();
17794    method public int computeVerticalScrollRange();
17795  }
17796
17797  public static interface WebViewProvider.ViewDelegate {
17798    method public default void autofill(android.util.SparseArray<android.view.autofill.AutofillValue>);
17799    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>);
17800    method public boolean dispatchKeyEvent(android.view.KeyEvent);
17801    method public android.view.View findFocus(android.view.View);
17802    method public android.view.accessibility.AccessibilityNodeProvider getAccessibilityNodeProvider();
17803    method public android.os.Handler getHandler(android.os.Handler);
17804    method public default boolean isVisibleToUserForAutofill(int);
17805    method public void onActivityResult(int, int, android.content.Intent);
17806    method @Nullable public default android.view.WindowInsets onApplyWindowInsets(@Nullable android.view.WindowInsets);
17807    method public void onAttachedToWindow();
17808    method public default boolean onCheckIsTextEditor();
17809    method public void onConfigurationChanged(android.content.res.Configuration);
17810    method public android.view.inputmethod.InputConnection onCreateInputConnection(android.view.inputmethod.EditorInfo);
17811    method public default void onCreateVirtualViewTranslationRequests(@NonNull long[], @NonNull int[], @NonNull java.util.function.Consumer<android.view.translation.ViewTranslationRequest>);
17812    method public void onDetachedFromWindow();
17813    method public boolean onDragEvent(android.view.DragEvent);
17814    method public void onDraw(android.graphics.Canvas);
17815    method public void onDrawVerticalScrollBar(android.graphics.Canvas, android.graphics.drawable.Drawable, int, int, int, int);
17816    method public void onFinishTemporaryDetach();
17817    method public void onFocusChanged(boolean, int, android.graphics.Rect);
17818    method public boolean onGenericMotionEvent(android.view.MotionEvent);
17819    method public boolean onHoverEvent(android.view.MotionEvent);
17820    method public void onInitializeAccessibilityEvent(android.view.accessibility.AccessibilityEvent);
17821    method public void onInitializeAccessibilityNodeInfo(android.view.accessibility.AccessibilityNodeInfo);
17822    method public boolean onKeyDown(int, android.view.KeyEvent);
17823    method public boolean onKeyMultiple(int, int, android.view.KeyEvent);
17824    method public boolean onKeyUp(int, android.view.KeyEvent);
17825    method public void onMeasure(int, int);
17826    method public default void onMovedToDisplay(int, android.content.res.Configuration);
17827    method public void onOverScrolled(int, int, boolean, boolean);
17828    method public default void onProvideAutofillVirtualStructure(android.view.ViewStructure, int);
17829    method public default void onProvideContentCaptureStructure(@NonNull android.view.ViewStructure, int);
17830    method public void onProvideVirtualStructure(android.view.ViewStructure);
17831    method public void onScrollChanged(int, int, int, int);
17832    method public void onSizeChanged(int, int, int, int);
17833    method public void onStartTemporaryDetach();
17834    method public boolean onTouchEvent(android.view.MotionEvent);
17835    method public boolean onTrackballEvent(android.view.MotionEvent);
17836    method public default void onVirtualViewTranslationResponses(@NonNull android.util.LongSparseArray<android.view.translation.ViewTranslationResponse>);
17837    method public void onVisibilityChanged(android.view.View, int);
17838    method public void onWindowFocusChanged(boolean);
17839    method public void onWindowVisibilityChanged(int);
17840    method public boolean performAccessibilityAction(int, android.os.Bundle);
17841    method public boolean performLongClick();
17842    method public void preDispatchDraw(android.graphics.Canvas);
17843    method public boolean requestChildRectangleOnScreen(android.view.View, android.graphics.Rect, boolean);
17844    method public boolean requestFocus(int, android.graphics.Rect);
17845    method public void setBackgroundColor(int);
17846    method public boolean setFrame(int, int, int, int);
17847    method public void setLayerType(int, android.graphics.Paint);
17848    method public void setLayoutParams(android.view.ViewGroup.LayoutParams);
17849    method public void setOverScrollMode(int);
17850    method public void setScrollBarStyle(int);
17851    method public boolean shouldDelayChildPressedState();
17852  }
17853
17854  public final class WebViewProviderInfo implements android.os.Parcelable {
17855    ctor public WebViewProviderInfo(String, String, boolean, boolean, String[]);
17856    method public int describeContents();
17857    method public void writeToParcel(android.os.Parcel, int);
17858    field @NonNull public static final android.os.Parcelable.Creator<android.webkit.WebViewProviderInfo> CREATOR;
17859    field public final boolean availableByDefault;
17860    field public final String description;
17861    field public final boolean isFallback;
17862    field public final String packageName;
17863    field public final android.content.pm.Signature[] signatures;
17864  }
17865
17866  public final class WebViewUpdateService {
17867    method public static android.webkit.WebViewProviderInfo[] getAllWebViewPackages();
17868    method public static String getCurrentWebViewPackageName();
17869    method public static android.webkit.WebViewProviderInfo[] getValidWebViewPackages();
17870  }
17871
17872}
17873
17874package android.window {
17875
17876  public abstract class TaskFpsCallback {
17877    ctor public TaskFpsCallback();
17878    method public abstract void onFpsReported(float);
17879  }
17880
17881}
17882
17883