xref: /aosp_15_r20/prebuilts/sdk/29/system/api/android.txt (revision 344a7f5ef16c479e7a7f54ee6567a9d112f9e72b)
1// Signature format: 2.0
2package android {
3
4  public static final class Manifest.permission {
5    field public static final String ACCESS_AMBIENT_LIGHT_STATS = "android.permission.ACCESS_AMBIENT_LIGHT_STATS";
6    field public static final String ACCESS_BROADCAST_RADIO = "android.permission.ACCESS_BROADCAST_RADIO";
7    field public static final String ACCESS_CACHE_FILESYSTEM = "android.permission.ACCESS_CACHE_FILESYSTEM";
8    field public static final String ACCESS_DRM_CERTIFICATES = "android.permission.ACCESS_DRM_CERTIFICATES";
9    field @Deprecated public static final String ACCESS_FM_RADIO = "android.permission.ACCESS_FM_RADIO";
10    field public static final String ACCESS_INSTANT_APPS = "android.permission.ACCESS_INSTANT_APPS";
11    field public static final String ACCESS_MOCK_LOCATION = "android.permission.ACCESS_MOCK_LOCATION";
12    field public static final String ACCESS_MTP = "android.permission.ACCESS_MTP";
13    field public static final String ACCESS_NETWORK_CONDITIONS = "android.permission.ACCESS_NETWORK_CONDITIONS";
14    field public static final String ACCESS_NOTIFICATIONS = "android.permission.ACCESS_NOTIFICATIONS";
15    field public static final String ACCESS_SHARED_LIBRARIES = "android.permission.ACCESS_SHARED_LIBRARIES";
16    field public static final String ACCESS_SHORTCUTS = "android.permission.ACCESS_SHORTCUTS";
17    field public static final String ACCESS_SURFACE_FLINGER = "android.permission.ACCESS_SURFACE_FLINGER";
18    field public static final String ACTIVITY_EMBEDDING = "android.permission.ACTIVITY_EMBEDDING";
19    field public static final String ADJUST_RUNTIME_PERMISSIONS_POLICY = "android.permission.ADJUST_RUNTIME_PERMISSIONS_POLICY";
20    field public static final String ALLOCATE_AGGRESSIVE = "android.permission.ALLOCATE_AGGRESSIVE";
21    field public static final String ALLOW_ANY_CODEC_FOR_PLAYBACK = "android.permission.ALLOW_ANY_CODEC_FOR_PLAYBACK";
22    field public static final String AMBIENT_WALLPAPER = "android.permission.AMBIENT_WALLPAPER";
23    field public static final String APPROVE_INCIDENT_REPORTS = "android.permission.APPROVE_INCIDENT_REPORTS";
24    field public static final String BACKUP = "android.permission.BACKUP";
25    field public static final String BIND_ATTENTION_SERVICE = "android.permission.BIND_ATTENTION_SERVICE";
26    field public static final String BIND_AUGMENTED_AUTOFILL_SERVICE = "android.permission.BIND_AUGMENTED_AUTOFILL_SERVICE";
27    field @Deprecated public static final String BIND_CONNECTION_SERVICE = "android.permission.BIND_CONNECTION_SERVICE";
28    field public static final String BIND_CONTENT_CAPTURE_SERVICE = "android.permission.BIND_CONTENT_CAPTURE_SERVICE";
29    field public static final String BIND_CONTENT_SUGGESTIONS_SERVICE = "android.permission.BIND_CONTENT_SUGGESTIONS_SERVICE";
30    field public static final String BIND_DIRECTORY_SEARCH = "android.permission.BIND_DIRECTORY_SEARCH";
31    field public static final String BIND_EUICC_SERVICE = "android.permission.BIND_EUICC_SERVICE";
32    field public static final String BIND_IMS_SERVICE = "android.permission.BIND_IMS_SERVICE";
33    field public static final String BIND_KEYGUARD_APPWIDGET = "android.permission.BIND_KEYGUARD_APPWIDGET";
34    field public static final String BIND_NETWORK_RECOMMENDATION_SERVICE = "android.permission.BIND_NETWORK_RECOMMENDATION_SERVICE";
35    field public static final String BIND_NOTIFICATION_ASSISTANT_SERVICE = "android.permission.BIND_NOTIFICATION_ASSISTANT_SERVICE";
36    field public static final String BIND_PHONE_ACCOUNT_SUGGESTION_SERVICE = "android.permission.BIND_PHONE_ACCOUNT_SUGGESTION_SERVICE";
37    field public static final String BIND_PRINT_RECOMMENDATION_SERVICE = "android.permission.BIND_PRINT_RECOMMENDATION_SERVICE";
38    field public static final String BIND_RESOLVER_RANKER_SERVICE = "android.permission.BIND_RESOLVER_RANKER_SERVICE";
39    field public static final String BIND_RUNTIME_PERMISSION_PRESENTER_SERVICE = "android.permission.BIND_RUNTIME_PERMISSION_PRESENTER_SERVICE";
40    field public static final String BIND_SETTINGS_SUGGESTIONS_SERVICE = "android.permission.BIND_SETTINGS_SUGGESTIONS_SERVICE";
41    field public static final String BIND_SOUND_TRIGGER_DETECTION_SERVICE = "android.permission.BIND_SOUND_TRIGGER_DETECTION_SERVICE";
42    field public static final String BIND_TELEPHONY_DATA_SERVICE = "android.permission.BIND_TELEPHONY_DATA_SERVICE";
43    field public static final String BIND_TELEPHONY_NETWORK_SERVICE = "android.permission.BIND_TELEPHONY_NETWORK_SERVICE";
44    field public static final String BIND_TEXTCLASSIFIER_SERVICE = "android.permission.BIND_TEXTCLASSIFIER_SERVICE";
45    field public static final String BIND_TRUST_AGENT = "android.permission.BIND_TRUST_AGENT";
46    field public static final String BIND_TV_REMOTE_SERVICE = "android.permission.BIND_TV_REMOTE_SERVICE";
47    field public static final String BRICK = "android.permission.BRICK";
48    field public static final String BRIGHTNESS_SLIDER_USAGE = "android.permission.BRIGHTNESS_SLIDER_USAGE";
49    field @Deprecated public static final String BROADCAST_NETWORK_PRIVILEGED = "android.permission.BROADCAST_NETWORK_PRIVILEGED";
50    field public static final String CAMERA_DISABLE_TRANSMIT_LED = "android.permission.CAMERA_DISABLE_TRANSMIT_LED";
51    field public static final String CAPTURE_AUDIO_HOTWORD = "android.permission.CAPTURE_AUDIO_HOTWORD";
52    field public static final String CAPTURE_MEDIA_OUTPUT = "android.permission.CAPTURE_MEDIA_OUTPUT";
53    field public static final String CAPTURE_TV_INPUT = "android.permission.CAPTURE_TV_INPUT";
54    field public static final String CHANGE_APP_IDLE_STATE = "android.permission.CHANGE_APP_IDLE_STATE";
55    field public static final String CHANGE_DEVICE_IDLE_TEMP_WHITELIST = "android.permission.CHANGE_DEVICE_IDLE_TEMP_WHITELIST";
56    field public static final String CLEAR_APP_USER_DATA = "android.permission.CLEAR_APP_USER_DATA";
57    field public static final String CONFIGURE_DISPLAY_BRIGHTNESS = "android.permission.CONFIGURE_DISPLAY_BRIGHTNESS";
58    field public static final String CONNECTIVITY_INTERNAL = "android.permission.CONNECTIVITY_INTERNAL";
59    field public static final String CONNECTIVITY_USE_RESTRICTED_NETWORKS = "android.permission.CONNECTIVITY_USE_RESTRICTED_NETWORKS";
60    field public static final String CONTROL_DISPLAY_COLOR_TRANSFORMS = "android.permission.CONTROL_DISPLAY_COLOR_TRANSFORMS";
61    field public static final String CONTROL_DISPLAY_SATURATION = "android.permission.CONTROL_DISPLAY_SATURATION";
62    field public static final String CONTROL_INCALL_EXPERIENCE = "android.permission.CONTROL_INCALL_EXPERIENCE";
63    field public static final String CONTROL_KEYGUARD_SECURE_NOTIFICATIONS = "android.permission.CONTROL_KEYGUARD_SECURE_NOTIFICATIONS";
64    field public static final String CONTROL_VPN = "android.permission.CONTROL_VPN";
65    field public static final String CRYPT_KEEPER = "android.permission.CRYPT_KEEPER";
66    field public static final String DEVICE_POWER = "android.permission.DEVICE_POWER";
67    field public static final String DISPATCH_PROVISIONING_MESSAGE = "android.permission.DISPATCH_PROVISIONING_MESSAGE";
68    field public static final String FORCE_BACK = "android.permission.FORCE_BACK";
69    field public static final String FORCE_STOP_PACKAGES = "android.permission.FORCE_STOP_PACKAGES";
70    field public static final String GET_APP_OPS_STATS = "android.permission.GET_APP_OPS_STATS";
71    field public static final String GET_PROCESS_STATE_AND_OOM_SCORE = "android.permission.GET_PROCESS_STATE_AND_OOM_SCORE";
72    field public static final String GET_RUNTIME_PERMISSIONS = "android.permission.GET_RUNTIME_PERMISSIONS";
73    field public static final String GET_TOP_ACTIVITY_INFO = "android.permission.GET_TOP_ACTIVITY_INFO";
74    field public static final String GRANT_PROFILE_OWNER_DEVICE_IDS_ACCESS = "android.permission.GRANT_PROFILE_OWNER_DEVICE_IDS_ACCESS";
75    field public static final String GRANT_RUNTIME_PERMISSIONS = "android.permission.GRANT_RUNTIME_PERMISSIONS";
76    field public static final String HARDWARE_TEST = "android.permission.HARDWARE_TEST";
77    field public static final String HDMI_CEC = "android.permission.HDMI_CEC";
78    field public static final String HIDE_NON_SYSTEM_OVERLAY_WINDOWS = "android.permission.HIDE_NON_SYSTEM_OVERLAY_WINDOWS";
79    field public static final String INJECT_EVENTS = "android.permission.INJECT_EVENTS";
80    field public static final String INSTALL_DYNAMIC_SYSTEM = "android.permission.INSTALL_DYNAMIC_SYSTEM";
81    field public static final String INSTALL_GRANT_RUNTIME_PERMISSIONS = "android.permission.INSTALL_GRANT_RUNTIME_PERMISSIONS";
82    field public static final String INSTALL_PACKAGE_UPDATES = "android.permission.INSTALL_PACKAGE_UPDATES";
83    field public static final String INSTALL_SELF_UPDATES = "android.permission.INSTALL_SELF_UPDATES";
84    field public static final String INTENT_FILTER_VERIFICATION_AGENT = "android.permission.INTENT_FILTER_VERIFICATION_AGENT";
85    field public static final String INTERACT_ACROSS_PROFILES = "android.permission.INTERACT_ACROSS_PROFILES";
86    field public static final String INTERACT_ACROSS_USERS = "android.permission.INTERACT_ACROSS_USERS";
87    field public static final String INTERACT_ACROSS_USERS_FULL = "android.permission.INTERACT_ACROSS_USERS_FULL";
88    field public static final String INTERNAL_SYSTEM_WINDOW = "android.permission.INTERNAL_SYSTEM_WINDOW";
89    field public static final String INVOKE_CARRIER_SETUP = "android.permission.INVOKE_CARRIER_SETUP";
90    field public static final String KILL_UID = "android.permission.KILL_UID";
91    field public static final String LOCAL_MAC_ADDRESS = "android.permission.LOCAL_MAC_ADDRESS";
92    field public static final String LOCK_DEVICE = "android.permission.LOCK_DEVICE";
93    field public static final String LOOP_RADIO = "android.permission.LOOP_RADIO";
94    field public static final String MANAGE_ACCESSIBILITY = "android.permission.MANAGE_ACCESSIBILITY";
95    field public static final String MANAGE_ACTIVITY_STACKS = "android.permission.MANAGE_ACTIVITY_STACKS";
96    field public static final String MANAGE_APP_OPS_RESTRICTIONS = "android.permission.MANAGE_APP_OPS_RESTRICTIONS";
97    field public static final String MANAGE_APP_PREDICTIONS = "android.permission.MANAGE_APP_PREDICTIONS";
98    field public static final String MANAGE_APP_TOKENS = "android.permission.MANAGE_APP_TOKENS";
99    field public static final String MANAGE_AUTO_FILL = "android.permission.MANAGE_AUTO_FILL";
100    field public static final String MANAGE_CARRIER_OEM_UNLOCK_STATE = "android.permission.MANAGE_CARRIER_OEM_UNLOCK_STATE";
101    field public static final String MANAGE_CA_CERTIFICATES = "android.permission.MANAGE_CA_CERTIFICATES";
102    field public static final String MANAGE_CONTENT_CAPTURE = "android.permission.MANAGE_CONTENT_CAPTURE";
103    field public static final String MANAGE_CONTENT_SUGGESTIONS = "android.permission.MANAGE_CONTENT_SUGGESTIONS";
104    field public static final String MANAGE_DEBUGGING = "android.permission.MANAGE_DEBUGGING";
105    field public static final String MANAGE_IPSEC_TUNNELS = "android.permission.MANAGE_IPSEC_TUNNELS";
106    field public static final String MANAGE_ROLE_HOLDERS = "android.permission.MANAGE_ROLE_HOLDERS";
107    field public static final String MANAGE_ROLLBACKS = "android.permission.MANAGE_ROLLBACKS";
108    field public static final String MANAGE_SENSOR_PRIVACY = "android.permission.MANAGE_SENSOR_PRIVACY";
109    field public static final String MANAGE_SOUND_TRIGGER = "android.permission.MANAGE_SOUND_TRIGGER";
110    field public static final String MANAGE_SUBSCRIPTION_PLANS = "android.permission.MANAGE_SUBSCRIPTION_PLANS";
111    field public static final String MANAGE_USB = "android.permission.MANAGE_USB";
112    field public static final String MANAGE_USERS = "android.permission.MANAGE_USERS";
113    field public static final String MANAGE_USER_OEM_UNLOCK_STATE = "android.permission.MANAGE_USER_OEM_UNLOCK_STATE";
114    field public static final String MODIFY_APPWIDGET_BIND_PERMISSIONS = "android.permission.MODIFY_APPWIDGET_BIND_PERMISSIONS";
115    field public static final String MODIFY_AUDIO_ROUTING = "android.permission.MODIFY_AUDIO_ROUTING";
116    field public static final String MODIFY_CELL_BROADCASTS = "android.permission.MODIFY_CELL_BROADCASTS";
117    field public static final String MODIFY_DAY_NIGHT_MODE = "android.permission.MODIFY_DAY_NIGHT_MODE";
118    field @Deprecated public static final String MODIFY_NETWORK_ACCOUNTING = "android.permission.MODIFY_NETWORK_ACCOUNTING";
119    field public static final String MODIFY_PARENTAL_CONTROLS = "android.permission.MODIFY_PARENTAL_CONTROLS";
120    field public static final String MODIFY_QUIET_MODE = "android.permission.MODIFY_QUIET_MODE";
121    field public static final String MOVE_PACKAGE = "android.permission.MOVE_PACKAGE";
122    field public static final String NETWORK_CARRIER_PROVISIONING = "android.permission.NETWORK_CARRIER_PROVISIONING";
123    field public static final String NETWORK_MANAGED_PROVISIONING = "android.permission.NETWORK_MANAGED_PROVISIONING";
124    field public static final String NETWORK_SCAN = "android.permission.NETWORK_SCAN";
125    field public static final String NETWORK_SETUP_WIZARD = "android.permission.NETWORK_SETUP_WIZARD";
126    field public static final String NETWORK_SIGNAL_STRENGTH_WAKEUP = "android.permission.NETWORK_SIGNAL_STRENGTH_WAKEUP";
127    field public static final String NOTIFICATION_DURING_SETUP = "android.permission.NOTIFICATION_DURING_SETUP";
128    field public static final String NOTIFY_TV_INPUTS = "android.permission.NOTIFY_TV_INPUTS";
129    field public static final String OBSERVE_APP_USAGE = "android.permission.OBSERVE_APP_USAGE";
130    field public static final String OBSERVE_ROLE_HOLDERS = "android.permission.OBSERVE_ROLE_HOLDERS";
131    field public static final String OPEN_ACCESSIBILITY_DETAILS_SETTINGS = "android.permission.OPEN_ACCESSIBILITY_DETAILS_SETTINGS";
132    field public static final String OVERRIDE_WIFI_CONFIG = "android.permission.OVERRIDE_WIFI_CONFIG";
133    field public static final String PACKAGE_VERIFICATION_AGENT = "android.permission.PACKAGE_VERIFICATION_AGENT";
134    field public static final String PACKET_KEEPALIVE_OFFLOAD = "android.permission.PACKET_KEEPALIVE_OFFLOAD";
135    field public static final String PEERS_MAC_ADDRESS = "android.permission.PEERS_MAC_ADDRESS";
136    field public static final String PERFORM_CDMA_PROVISIONING = "android.permission.PERFORM_CDMA_PROVISIONING";
137    field public static final String PERFORM_SIM_ACTIVATION = "android.permission.PERFORM_SIM_ACTIVATION";
138    field public static final String POWER_SAVER = "android.permission.POWER_SAVER";
139    field public static final String PROVIDE_RESOLVER_RANKER_SERVICE = "android.permission.PROVIDE_RESOLVER_RANKER_SERVICE";
140    field public static final String PROVIDE_TRUST_AGENT = "android.permission.PROVIDE_TRUST_AGENT";
141    field public static final String QUERY_TIME_ZONE_RULES = "android.permission.QUERY_TIME_ZONE_RULES";
142    field public static final String READ_CELL_BROADCASTS = "android.permission.READ_CELL_BROADCASTS";
143    field public static final String READ_CONTENT_RATING_SYSTEMS = "android.permission.READ_CONTENT_RATING_SYSTEMS";
144    field public static final String READ_DEVICE_CONFIG = "android.permission.READ_DEVICE_CONFIG";
145    field public static final String READ_DREAM_STATE = "android.permission.READ_DREAM_STATE";
146    field public static final String READ_INSTALL_SESSIONS = "android.permission.READ_INSTALL_SESSIONS";
147    field public static final String READ_NETWORK_USAGE_HISTORY = "android.permission.READ_NETWORK_USAGE_HISTORY";
148    field public static final String READ_OEM_UNLOCK_STATE = "android.permission.READ_OEM_UNLOCK_STATE";
149    field public static final String READ_PRINT_SERVICES = "android.permission.READ_PRINT_SERVICES";
150    field public static final String READ_PRINT_SERVICE_RECOMMENDATIONS = "android.permission.READ_PRINT_SERVICE_RECOMMENDATIONS";
151    field public static final String READ_PRIVILEGED_PHONE_STATE = "android.permission.READ_PRIVILEGED_PHONE_STATE";
152    field public static final String READ_RUNTIME_PROFILES = "android.permission.READ_RUNTIME_PROFILES";
153    field public static final String READ_SEARCH_INDEXABLES = "android.permission.READ_SEARCH_INDEXABLES";
154    field public static final String READ_SYSTEM_UPDATE_INFO = "android.permission.READ_SYSTEM_UPDATE_INFO";
155    field public static final String READ_WALLPAPER_INTERNAL = "android.permission.READ_WALLPAPER_INTERNAL";
156    field public static final String READ_WIFI_CREDENTIAL = "android.permission.READ_WIFI_CREDENTIAL";
157    field public static final String REAL_GET_TASKS = "android.permission.REAL_GET_TASKS";
158    field public static final String RECEIVE_DATA_ACTIVITY_CHANGE = "android.permission.RECEIVE_DATA_ACTIVITY_CHANGE";
159    field public static final String RECEIVE_DEVICE_CUSTOMIZATION_READY = "android.permission.RECEIVE_DEVICE_CUSTOMIZATION_READY";
160    field public static final String RECEIVE_EMERGENCY_BROADCAST = "android.permission.RECEIVE_EMERGENCY_BROADCAST";
161    field public static final String RECEIVE_WIFI_CREDENTIAL_CHANGE = "android.permission.RECEIVE_WIFI_CREDENTIAL_CHANGE";
162    field public static final String RECOVERY = "android.permission.RECOVERY";
163    field public static final String RECOVER_KEYSTORE = "android.permission.RECOVER_KEYSTORE";
164    field public static final String REGISTER_CALL_PROVIDER = "android.permission.REGISTER_CALL_PROVIDER";
165    field public static final String REGISTER_CONNECTION_MANAGER = "android.permission.REGISTER_CONNECTION_MANAGER";
166    field public static final String REGISTER_SIM_SUBSCRIPTION = "android.permission.REGISTER_SIM_SUBSCRIPTION";
167    field public static final String REMOTE_DISPLAY_PROVIDER = "android.permission.REMOTE_DISPLAY_PROVIDER";
168    field public static final String REMOVE_DRM_CERTIFICATES = "android.permission.REMOVE_DRM_CERTIFICATES";
169    field public static final String REMOVE_TASKS = "android.permission.REMOVE_TASKS";
170    field public static final String REQUEST_NOTIFICATION_ASSISTANT_SERVICE = "android.permission.REQUEST_NOTIFICATION_ASSISTANT_SERVICE";
171    field public static final String RESET_PASSWORD = "android.permission.RESET_PASSWORD";
172    field public static final String RESTRICTED_VR_ACCESS = "android.permission.RESTRICTED_VR_ACCESS";
173    field public static final String RETRIEVE_WINDOW_CONTENT = "android.permission.RETRIEVE_WINDOW_CONTENT";
174    field public static final String REVIEW_ACCESSIBILITY_SERVICES = "android.permission.REVIEW_ACCESSIBILITY_SERVICES";
175    field public static final String REVOKE_RUNTIME_PERMISSIONS = "android.permission.REVOKE_RUNTIME_PERMISSIONS";
176    field public static final String SCORE_NETWORKS = "android.permission.SCORE_NETWORKS";
177    field public static final String SEND_DEVICE_CUSTOMIZATION_READY = "android.permission.SEND_DEVICE_CUSTOMIZATION_READY";
178    field public static final String SEND_SHOW_SUSPENDED_APP_DETAILS = "android.permission.SEND_SHOW_SUSPENDED_APP_DETAILS";
179    field public static final String SEND_SMS_NO_CONFIRMATION = "android.permission.SEND_SMS_NO_CONFIRMATION";
180    field public static final String SERIAL_PORT = "android.permission.SERIAL_PORT";
181    field public static final String SET_ACTIVITY_WATCHER = "android.permission.SET_ACTIVITY_WATCHER";
182    field public static final String SET_HARMFUL_APP_WARNINGS = "android.permission.SET_HARMFUL_APP_WARNINGS";
183    field public static final String SET_MEDIA_KEY_LISTENER = "android.permission.SET_MEDIA_KEY_LISTENER";
184    field public static final String SET_ORIENTATION = "android.permission.SET_ORIENTATION";
185    field public static final String SET_POINTER_SPEED = "android.permission.SET_POINTER_SPEED";
186    field public static final String SET_SCREEN_COMPATIBILITY = "android.permission.SET_SCREEN_COMPATIBILITY";
187    field public static final String SET_VOLUME_KEY_LONG_PRESS_LISTENER = "android.permission.SET_VOLUME_KEY_LONG_PRESS_LISTENER";
188    field public static final String SET_WALLPAPER_COMPONENT = "android.permission.SET_WALLPAPER_COMPONENT";
189    field public static final String SHOW_KEYGUARD_MESSAGE = "android.permission.SHOW_KEYGUARD_MESSAGE";
190    field public static final String SHUTDOWN = "android.permission.SHUTDOWN";
191    field public static final String STOP_APP_SWITCHES = "android.permission.STOP_APP_SWITCHES";
192    field public static final String SUBSTITUTE_NOTIFICATION_APP_NAME = "android.permission.SUBSTITUTE_NOTIFICATION_APP_NAME";
193    field public static final String SUBSTITUTE_SHARE_TARGET_APP_NAME_AND_ICON = "android.permission.SUBSTITUTE_SHARE_TARGET_APP_NAME_AND_ICON";
194    field public static final String SUSPEND_APPS = "android.permission.SUSPEND_APPS";
195    field public static final String TETHER_PRIVILEGED = "android.permission.TETHER_PRIVILEGED";
196    field public static final String TV_INPUT_HARDWARE = "android.permission.TV_INPUT_HARDWARE";
197    field public static final String TV_VIRTUAL_REMOTE_CONTROLLER = "android.permission.TV_VIRTUAL_REMOTE_CONTROLLER";
198    field public static final String UNLIMITED_SHORTCUTS_API_CALLS = "android.permission.UNLIMITED_SHORTCUTS_API_CALLS";
199    field public static final String UPDATE_APP_OPS_STATS = "android.permission.UPDATE_APP_OPS_STATS";
200    field public static final String UPDATE_LOCK = "android.permission.UPDATE_LOCK";
201    field public static final String UPDATE_TIME_ZONE_RULES = "android.permission.UPDATE_TIME_ZONE_RULES";
202    field public static final String USER_ACTIVITY = "android.permission.USER_ACTIVITY";
203    field public static final String USE_RESERVED_DISK = "android.permission.USE_RESERVED_DISK";
204    field public static final String WHITELIST_RESTRICTED_PERMISSIONS = "android.permission.WHITELIST_RESTRICTED_PERMISSIONS";
205    field public static final String WRITE_DEVICE_CONFIG = "android.permission.WRITE_DEVICE_CONFIG";
206    field public static final String WRITE_DREAM_STATE = "android.permission.WRITE_DREAM_STATE";
207    field public static final String WRITE_EMBEDDED_SUBSCRIPTIONS = "android.permission.WRITE_EMBEDDED_SUBSCRIPTIONS";
208    field public static final String WRITE_MEDIA_STORAGE = "android.permission.WRITE_MEDIA_STORAGE";
209    field public static final String WRITE_OBB = "android.permission.WRITE_OBB";
210  }
211
212  public static final class Manifest.permission_group {
213    field public static final String UNDEFINED = "android.permission-group.UNDEFINED";
214  }
215
216  public static final class R.array {
217    field public static final int config_keySystemUuidMapping = 17235973; // 0x1070005
218  }
219
220  public static final class R.attr {
221    field public static final int allowClearUserDataOnFailedRestore = 16844288; // 0x1010600
222    field public static final int isVrOnly = 16844152; // 0x1010578
223    field public static final int requiredSystemPropertyName = 16844133; // 0x1010565
224    field public static final int requiredSystemPropertyValue = 16844134; // 0x1010566
225    field public static final int supportsAmbientMode = 16844173; // 0x101058d
226    field public static final int userRestriction = 16844164; // 0x1010584
227  }
228
229  public static final class R.bool {
230    field public static final int config_sendPackageName = 17891328; // 0x1110000
231    field public static final int config_showDefaultAssistant = 17891329; // 0x1110001
232    field public static final int config_showDefaultEmergency = 17891330; // 0x1110002
233    field public static final int config_showDefaultHome = 17891331; // 0x1110003
234  }
235
236  public static final class R.color {
237    field public static final int system_notification_accent_color = 17170460; // 0x106001c
238  }
239
240  public static final class R.dimen {
241    field public static final int config_restrictedIconSize = 17104903; // 0x1050007
242  }
243
244  public static final class R.drawable {
245    field public static final int ic_info = 17301684; // 0x10800b4
246  }
247
248  public static final class R.raw {
249    field public static final int loaderror = 17825792; // 0x1100000
250    field public static final int nodomain = 17825793; // 0x1100001
251  }
252
253  public static final class R.string {
254    field public static final int config_defaultAssistant = 17039393; // 0x1040021
255    field public static final int config_defaultBrowser = 17039394; // 0x1040022
256    field public static final int config_defaultDialer = 17039395; // 0x1040023
257    field public static final int config_defaultSms = 17039396; // 0x1040024
258    field public static final int config_feedbackIntentExtraKey = 17039391; // 0x104001f
259    field public static final int config_feedbackIntentNameKey = 17039392; // 0x1040020
260    field public static final int config_helpIntentExtraKey = 17039389; // 0x104001d
261    field public static final int config_helpIntentNameKey = 17039390; // 0x104001e
262    field public static final int config_helpPackageNameKey = 17039387; // 0x104001b
263    field public static final int config_helpPackageNameValue = 17039388; // 0x104001c
264  }
265
266  public static final class R.style {
267    field public static final int Theme_DeviceDefault_DocumentsUI = 16974562; // 0x10302e2
268    field public static final int Theme_Leanback_FormWizard = 16974544; // 0x10302d0
269  }
270
271}
272
273package android.accounts {
274
275  public class AccountManager {
276    method @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS_FULL) public android.accounts.AccountManagerFuture<android.os.Bundle> finishSessionAsUser(android.os.Bundle, android.app.Activity, android.os.UserHandle, android.accounts.AccountManagerCallback<android.os.Bundle>, android.os.Handler);
277  }
278
279}
280
281package android.app {
282
283  public class Activity extends android.view.ContextThemeWrapper implements android.content.ComponentCallbacks2 android.view.KeyEvent.Callback android.view.LayoutInflater.Factory2 android.view.View.OnCreateContextMenuListener android.view.Window.Callback {
284    method public void convertFromTranslucent();
285    method public boolean convertToTranslucent(android.app.Activity.TranslucentConversionListener, android.app.ActivityOptions);
286    method @Deprecated public boolean isBackgroundVisibleBehind();
287    method @Deprecated public void onBackgroundVisibleBehindChanged(boolean);
288  }
289
290  public static interface Activity.TranslucentConversionListener {
291    method public void onTranslucentConversionComplete(boolean);
292  }
293
294  public class ActivityManager {
295    method @RequiresPermission(android.Manifest.permission.PACKAGE_USAGE_STATS) public void addOnUidImportanceListener(android.app.ActivityManager.OnUidImportanceListener, int);
296    method @RequiresPermission(android.Manifest.permission.FORCE_STOP_PACKAGES) public void forceStopPackage(String);
297    method @RequiresPermission(anyOf={"android.permission.INTERACT_ACROSS_USERS", "android.permission.INTERACT_ACROSS_USERS_FULL"}) public static int getCurrentUser();
298    method @RequiresPermission(android.Manifest.permission.PACKAGE_USAGE_STATS) public int getPackageImportance(String);
299    method @NonNull public java.util.Collection<java.util.Locale> getSupportedLocales();
300    method @RequiresPermission(android.Manifest.permission.PACKAGE_USAGE_STATS) public int getUidImportance(int);
301    method @RequiresPermission(android.Manifest.permission.KILL_UID) public void killUid(int, String);
302    method @RequiresPermission(android.Manifest.permission.PACKAGE_USAGE_STATS) public void removeOnUidImportanceListener(android.app.ActivityManager.OnUidImportanceListener);
303    method public void setDeviceLocales(@NonNull android.os.LocaleList);
304    method @RequiresPermission(android.Manifest.permission.RESTRICTED_VR_ACCESS) public static void setPersistentVrThread(int);
305    method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public boolean switchUser(@NonNull android.os.UserHandle);
306  }
307
308  public static interface ActivityManager.OnUidImportanceListener {
309    method public void onUidImportance(int, int);
310  }
311
312  public class AlarmManager {
313    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void set(int, long, long, long, android.app.PendingIntent, android.os.WorkSource);
314    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void set(int, long, long, long, android.app.AlarmManager.OnAlarmListener, android.os.Handler, android.os.WorkSource);
315  }
316
317  public class AppOpsManager {
318    method @RequiresPermission(android.Manifest.permission.GET_APP_OPS_STATS) public void getHistoricalOps(@NonNull android.app.AppOpsManager.HistoricalOpsRequest, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<android.app.AppOpsManager.HistoricalOps>);
319    method public static String[] getOpStrs();
320    method @NonNull @RequiresPermission(android.Manifest.permission.GET_APP_OPS_STATS) public java.util.List<android.app.AppOpsManager.PackageOps> getOpsForPackage(int, @NonNull String, @Nullable java.lang.String...);
321    method @NonNull @RequiresPermission(android.Manifest.permission.GET_APP_OPS_STATS) public java.util.List<android.app.AppOpsManager.PackageOps> getPackagesForOps(@Nullable String[]);
322    method public static int opToDefaultMode(@NonNull String);
323    method @Nullable public static String opToPermission(@NonNull String);
324    method @RequiresPermission("android.permission.MANAGE_APP_OPS_MODES") public void setMode(String, int, String, int);
325    method @RequiresPermission("android.permission.MANAGE_APP_OPS_MODES") public void setUidMode(String, int, int);
326    field public static final String OPSTR_ACCEPT_HANDOVER = "android:accept_handover";
327    field public static final String OPSTR_ACCESS_ACCESSIBILITY = "android:access_accessibility";
328    field public static final String OPSTR_ACCESS_NOTIFICATIONS = "android:access_notifications";
329    field public static final String OPSTR_ACTIVATE_VPN = "android:activate_vpn";
330    field public static final String OPSTR_ASSIST_SCREENSHOT = "android:assist_screenshot";
331    field public static final String OPSTR_ASSIST_STRUCTURE = "android:assist_structure";
332    field public static final String OPSTR_AUDIO_ACCESSIBILITY_VOLUME = "android:audio_accessibility_volume";
333    field public static final String OPSTR_AUDIO_ALARM_VOLUME = "android:audio_alarm_volume";
334    field public static final String OPSTR_AUDIO_BLUETOOTH_VOLUME = "android:audio_bluetooth_volume";
335    field public static final String OPSTR_AUDIO_MASTER_VOLUME = "android:audio_master_volume";
336    field public static final String OPSTR_AUDIO_MEDIA_VOLUME = "android:audio_media_volume";
337    field public static final String OPSTR_AUDIO_NOTIFICATION_VOLUME = "android:audio_notification_volume";
338    field public static final String OPSTR_AUDIO_RING_VOLUME = "android:audio_ring_volume";
339    field public static final String OPSTR_AUDIO_VOICE_VOLUME = "android:audio_voice_volume";
340    field public static final String OPSTR_BIND_ACCESSIBILITY_SERVICE = "android:bind_accessibility_service";
341    field public static final String OPSTR_CHANGE_WIFI_STATE = "android:change_wifi_state";
342    field public static final String OPSTR_GET_ACCOUNTS = "android:get_accounts";
343    field public static final String OPSTR_GPS = "android:gps";
344    field public static final String OPSTR_INSTANT_APP_START_FOREGROUND = "android:instant_app_start_foreground";
345    field public static final String OPSTR_LEGACY_STORAGE = "android:legacy_storage";
346    field public static final String OPSTR_MANAGE_IPSEC_TUNNELS = "android:manage_ipsec_tunnels";
347    field public static final String OPSTR_MUTE_MICROPHONE = "android:mute_microphone";
348    field public static final String OPSTR_NEIGHBORING_CELLS = "android:neighboring_cells";
349    field public static final String OPSTR_PLAY_AUDIO = "android:play_audio";
350    field public static final String OPSTR_POST_NOTIFICATION = "android:post_notification";
351    field public static final String OPSTR_PROJECT_MEDIA = "android:project_media";
352    field public static final String OPSTR_READ_CLIPBOARD = "android:read_clipboard";
353    field public static final String OPSTR_READ_ICC_SMS = "android:read_icc_sms";
354    field public static final String OPSTR_RECEIVE_EMERGENCY_BROADCAST = "android:receive_emergency_broadcast";
355    field public static final String OPSTR_REQUEST_DELETE_PACKAGES = "android:request_delete_packages";
356    field public static final String OPSTR_REQUEST_INSTALL_PACKAGES = "android:request_install_packages";
357    field public static final String OPSTR_RUN_ANY_IN_BACKGROUND = "android:run_any_in_background";
358    field public static final String OPSTR_RUN_IN_BACKGROUND = "android:run_in_background";
359    field public static final String OPSTR_START_FOREGROUND = "android:start_foreground";
360    field public static final String OPSTR_TAKE_AUDIO_FOCUS = "android:take_audio_focus";
361    field public static final String OPSTR_TAKE_MEDIA_BUTTONS = "android:take_media_buttons";
362    field public static final String OPSTR_TOAST_WINDOW = "android:toast_window";
363    field public static final String OPSTR_TURN_SCREEN_ON = "android:turn_screen_on";
364    field public static final String OPSTR_VIBRATE = "android:vibrate";
365    field public static final String OPSTR_WAKE_LOCK = "android:wake_lock";
366    field public static final String OPSTR_WIFI_SCAN = "android:wifi_scan";
367    field public static final String OPSTR_WRITE_CLIPBOARD = "android:write_clipboard";
368    field public static final String OPSTR_WRITE_ICC_SMS = "android:write_icc_sms";
369    field public static final String OPSTR_WRITE_SMS = "android:write_sms";
370    field public static final String OPSTR_WRITE_WALLPAPER = "android:write_wallpaper";
371    field public static final int OP_FLAGS_ALL = 31; // 0x1f
372    field public static final int OP_FLAGS_ALL_TRUSTED = 13; // 0xd
373    field public static final int OP_FLAG_SELF = 1; // 0x1
374    field public static final int OP_FLAG_TRUSTED_PROXIED = 8; // 0x8
375    field public static final int OP_FLAG_TRUSTED_PROXY = 2; // 0x2
376    field public static final int OP_FLAG_UNTRUSTED_PROXIED = 16; // 0x10
377    field public static final int OP_FLAG_UNTRUSTED_PROXY = 4; // 0x4
378    field public static final int UID_STATE_BACKGROUND = 600; // 0x258
379    field public static final int UID_STATE_CACHED = 700; // 0x2bc
380    field public static final int UID_STATE_FOREGROUND = 500; // 0x1f4
381    field public static final int UID_STATE_FOREGROUND_SERVICE = 400; // 0x190
382    field public static final int UID_STATE_FOREGROUND_SERVICE_LOCATION = 300; // 0x12c
383    field public static final int UID_STATE_PERSISTENT = 100; // 0x64
384    field public static final int UID_STATE_TOP = 200; // 0xc8
385  }
386
387  public static final class AppOpsManager.HistoricalOp implements android.os.Parcelable {
388    method public int describeContents();
389    method public long getAccessCount(int, int, int);
390    method public long getAccessDuration(int, int, int);
391    method public long getBackgroundAccessCount(int);
392    method public long getBackgroundAccessDuration(int);
393    method public long getBackgroundRejectCount(int);
394    method public long getForegroundAccessCount(int);
395    method public long getForegroundAccessDuration(int);
396    method public long getForegroundRejectCount(int);
397    method @NonNull public String getOpName();
398    method public long getRejectCount(int, int, int);
399    method public void writeToParcel(android.os.Parcel, int);
400    field @NonNull public static final android.os.Parcelable.Creator<android.app.AppOpsManager.HistoricalOp> CREATOR;
401  }
402
403  public static final class AppOpsManager.HistoricalOps implements android.os.Parcelable {
404    method public int describeContents();
405    method public long getBeginTimeMillis();
406    method public long getEndTimeMillis();
407    method @IntRange(from=0) public int getUidCount();
408    method @Nullable public android.app.AppOpsManager.HistoricalUidOps getUidOps(int);
409    method @NonNull public android.app.AppOpsManager.HistoricalUidOps getUidOpsAt(@IntRange(from=0) int);
410    method public void writeToParcel(android.os.Parcel, int);
411    field @NonNull public static final android.os.Parcelable.Creator<android.app.AppOpsManager.HistoricalOps> CREATOR;
412  }
413
414  public static final class AppOpsManager.HistoricalOpsRequest {
415  }
416
417  public static final class AppOpsManager.HistoricalOpsRequest.Builder {
418    ctor public AppOpsManager.HistoricalOpsRequest.Builder(long, long);
419    method @NonNull public android.app.AppOpsManager.HistoricalOpsRequest build();
420    method @NonNull public android.app.AppOpsManager.HistoricalOpsRequest.Builder setFlags(int);
421    method @NonNull public android.app.AppOpsManager.HistoricalOpsRequest.Builder setOpNames(@Nullable java.util.List<java.lang.String>);
422    method @NonNull public android.app.AppOpsManager.HistoricalOpsRequest.Builder setPackageName(@Nullable String);
423    method @NonNull public android.app.AppOpsManager.HistoricalOpsRequest.Builder setUid(int);
424  }
425
426  public static final class AppOpsManager.HistoricalPackageOps implements android.os.Parcelable {
427    method public int describeContents();
428    method @Nullable public android.app.AppOpsManager.HistoricalOp getOp(@NonNull String);
429    method @NonNull public android.app.AppOpsManager.HistoricalOp getOpAt(@IntRange(from=0) int);
430    method @IntRange(from=0) public int getOpCount();
431    method @NonNull public String getPackageName();
432    method public void writeToParcel(@NonNull android.os.Parcel, int);
433    field @NonNull public static final android.os.Parcelable.Creator<android.app.AppOpsManager.HistoricalPackageOps> CREATOR;
434  }
435
436  public static final class AppOpsManager.HistoricalUidOps implements android.os.Parcelable {
437    method public int describeContents();
438    method @IntRange(from=0) public int getPackageCount();
439    method @Nullable public android.app.AppOpsManager.HistoricalPackageOps getPackageOps(@NonNull String);
440    method @NonNull public android.app.AppOpsManager.HistoricalPackageOps getPackageOpsAt(@IntRange(from=0) int);
441    method public int getUid();
442    method public void writeToParcel(android.os.Parcel, int);
443    field @NonNull public static final android.os.Parcelable.Creator<android.app.AppOpsManager.HistoricalUidOps> CREATOR;
444  }
445
446  public static final class AppOpsManager.OpEntry implements android.os.Parcelable {
447    method public int describeContents();
448    method public long getDuration();
449    method public long getLastAccessBackgroundTime(int);
450    method public long getLastAccessForegroundTime(int);
451    method public long getLastAccessTime(int);
452    method public long getLastAccessTime(int, int, int);
453    method public long getLastBackgroundDuration(int);
454    method public long getLastDuration(int, int, int);
455    method public long getLastForegroundDuration(int);
456    method public long getLastRejectBackgroundTime(int);
457    method public long getLastRejectForegroundTime(int);
458    method public long getLastRejectTime(int);
459    method public long getLastRejectTime(int, int, int);
460    method public int getMode();
461    method @NonNull public String getOpStr();
462    method @Nullable public String getProxyPackageName();
463    method @Nullable public String getProxyPackageName(int, int);
464    method public int getProxyUid();
465    method public int getProxyUid(int, int);
466    method public boolean isRunning();
467    method public void writeToParcel(android.os.Parcel, int);
468    field @NonNull public static final android.os.Parcelable.Creator<android.app.AppOpsManager.OpEntry> CREATOR;
469  }
470
471  public static final class AppOpsManager.PackageOps implements android.os.Parcelable {
472    method public int describeContents();
473    method @NonNull public java.util.List<android.app.AppOpsManager.OpEntry> getOps();
474    method @NonNull public String getPackageName();
475    method public int getUid();
476    method public void writeToParcel(android.os.Parcel, int);
477    field @NonNull public static final android.os.Parcelable.Creator<android.app.AppOpsManager.PackageOps> CREATOR;
478  }
479
480  public class BroadcastOptions {
481    method public static android.app.BroadcastOptions makeBasic();
482    method @RequiresPermission("android.permission.START_ACTIVITIES_FROM_BACKGROUND") public void setBackgroundActivityStartsAllowed(boolean);
483    method public void setDontSendToRestrictedApps(boolean);
484    method @RequiresPermission(android.Manifest.permission.CHANGE_DEVICE_IDLE_TEMP_WHITELIST) public void setTemporaryAppWhitelistDuration(long);
485    method public android.os.Bundle toBundle();
486  }
487
488  public class DownloadManager {
489    field public static final String ACTION_DOWNLOAD_COMPLETED = "android.intent.action.DOWNLOAD_COMPLETED";
490  }
491
492  public abstract class InstantAppResolverService extends android.app.Service {
493    ctor public InstantAppResolverService();
494    method public final void attachBaseContext(android.content.Context);
495    method public final android.os.IBinder onBind(android.content.Intent);
496    method @Deprecated public void onGetInstantAppIntentFilter(@Nullable int[], @NonNull String, @NonNull android.app.InstantAppResolverService.InstantAppResolutionCallback);
497    method @Deprecated public void onGetInstantAppIntentFilter(@NonNull android.content.Intent, @Nullable int[], @NonNull String, @NonNull android.app.InstantAppResolverService.InstantAppResolutionCallback);
498    method public void onGetInstantAppIntentFilter(@NonNull android.content.Intent, @Nullable int[], @NonNull android.os.UserHandle, @NonNull String, @NonNull android.app.InstantAppResolverService.InstantAppResolutionCallback);
499    method @Deprecated public void onGetInstantAppResolveInfo(@Nullable int[], @NonNull String, @NonNull android.app.InstantAppResolverService.InstantAppResolutionCallback);
500    method @Deprecated public void onGetInstantAppResolveInfo(@NonNull android.content.Intent, @Nullable int[], @NonNull String, @NonNull android.app.InstantAppResolverService.InstantAppResolutionCallback);
501    method public void onGetInstantAppResolveInfo(@NonNull android.content.Intent, @Nullable int[], @NonNull android.os.UserHandle, @NonNull String, @NonNull android.app.InstantAppResolverService.InstantAppResolutionCallback);
502  }
503
504  public static final class InstantAppResolverService.InstantAppResolutionCallback {
505    method public void onInstantAppResolveInfo(java.util.List<android.content.pm.InstantAppResolveInfo>);
506  }
507
508  public class KeyguardManager {
509    method public android.content.Intent createConfirmFactoryResetCredentialIntent(CharSequence, CharSequence, CharSequence);
510    method @RequiresPermission(android.Manifest.permission.CONTROL_KEYGUARD_SECURE_NOTIFICATIONS) public boolean getPrivateNotificationsAllowed();
511    method @RequiresPermission(android.Manifest.permission.SHOW_KEYGUARD_MESSAGE) public void requestDismissKeyguard(@NonNull android.app.Activity, @Nullable CharSequence, @Nullable android.app.KeyguardManager.KeyguardDismissCallback);
512    method @RequiresPermission(android.Manifest.permission.CONTROL_KEYGUARD_SECURE_NOTIFICATIONS) public void setPrivateNotificationsAllowed(boolean);
513  }
514
515  public class Notification implements android.os.Parcelable {
516    field public static final String CATEGORY_CAR_EMERGENCY = "car_emergency";
517    field public static final String CATEGORY_CAR_INFORMATION = "car_information";
518    field public static final String CATEGORY_CAR_WARNING = "car_warning";
519    field @RequiresPermission(android.Manifest.permission.NOTIFICATION_DURING_SETUP) public static final String EXTRA_ALLOW_DURING_SETUP = "android.allowDuringSetup";
520    field @RequiresPermission(android.Manifest.permission.SUBSTITUTE_NOTIFICATION_APP_NAME) public static final String EXTRA_SUBSTITUTE_APP_NAME = "android.substName";
521    field public static final int FLAG_AUTOGROUP_SUMMARY = 1024; // 0x400
522  }
523
524  public static final class Notification.TvExtender implements android.app.Notification.Extender {
525    ctor public Notification.TvExtender();
526    ctor public Notification.TvExtender(android.app.Notification);
527    method public android.app.Notification.Builder extend(android.app.Notification.Builder);
528    method public String getChannelId();
529    method public android.app.PendingIntent getContentIntent();
530    method public android.app.PendingIntent getDeleteIntent();
531    method public boolean getSuppressShowOverApps();
532    method public boolean isAvailableOnTv();
533    method public android.app.Notification.TvExtender setChannel(String);
534    method public android.app.Notification.TvExtender setChannelId(String);
535    method public android.app.Notification.TvExtender setContentIntent(android.app.PendingIntent);
536    method public android.app.Notification.TvExtender setDeleteIntent(android.app.PendingIntent);
537    method public android.app.Notification.TvExtender setSuppressShowOverApps(boolean);
538  }
539
540  public final class NotificationChannel implements android.os.Parcelable {
541    method public int getUserLockedFields();
542    method public boolean isDeleted();
543    method public void populateFromXml(org.xmlpull.v1.XmlPullParser);
544    method public org.json.JSONObject toJson() throws org.json.JSONException;
545    method public void writeXml(org.xmlpull.v1.XmlSerializer) throws java.io.IOException;
546  }
547
548  public final class NotificationChannelGroup implements android.os.Parcelable {
549    method public org.json.JSONObject toJson() throws org.json.JSONException;
550  }
551
552  public class NotificationManager {
553    method @NonNull public java.util.List<java.lang.String> getAllowedAssistantAdjustments();
554    method @Nullable public android.content.ComponentName getAllowedNotificationAssistant();
555    method public boolean isNotificationAssistantAccessGranted(@NonNull android.content.ComponentName);
556    method public void setNotificationAssistantAccessGranted(@Nullable android.content.ComponentName, boolean);
557  }
558
559  public final class StatsManager {
560    method @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public void addConfig(long, byte[]) throws android.app.StatsManager.StatsUnavailableException;
561    method @Deprecated @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public boolean addConfiguration(long, byte[]);
562    method @Deprecated @Nullable @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public byte[] getData(long);
563    method @Deprecated @Nullable @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public byte[] getMetadata();
564    method @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public long[] getRegisteredExperimentIds() throws android.app.StatsManager.StatsUnavailableException;
565    method @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public byte[] getReports(long) throws android.app.StatsManager.StatsUnavailableException;
566    method @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public byte[] getStatsMetadata() throws android.app.StatsManager.StatsUnavailableException;
567    method @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public void removeConfig(long) throws android.app.StatsManager.StatsUnavailableException;
568    method @Deprecated @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public boolean removeConfiguration(long);
569    method @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) @NonNull public long[] setActiveConfigsChangedOperation(@Nullable android.app.PendingIntent) throws android.app.StatsManager.StatsUnavailableException;
570    method @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public void setBroadcastSubscriber(android.app.PendingIntent, long, long) throws android.app.StatsManager.StatsUnavailableException;
571    method @Deprecated @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public boolean setBroadcastSubscriber(long, long, android.app.PendingIntent);
572    method @Deprecated @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public boolean setDataFetchOperation(long, android.app.PendingIntent);
573    method @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public void setFetchReportsOperation(android.app.PendingIntent, long) throws android.app.StatsManager.StatsUnavailableException;
574    field public static final String ACTION_STATSD_STARTED = "android.app.action.STATSD_STARTED";
575    field public static final String EXTRA_STATS_ACTIVE_CONFIG_KEYS = "android.app.extra.STATS_ACTIVE_CONFIG_KEYS";
576    field public static final String EXTRA_STATS_BROADCAST_SUBSCRIBER_COOKIES = "android.app.extra.STATS_BROADCAST_SUBSCRIBER_COOKIES";
577    field public static final String EXTRA_STATS_CONFIG_KEY = "android.app.extra.STATS_CONFIG_KEY";
578    field public static final String EXTRA_STATS_CONFIG_UID = "android.app.extra.STATS_CONFIG_UID";
579    field public static final String EXTRA_STATS_DIMENSIONS_VALUE = "android.app.extra.STATS_DIMENSIONS_VALUE";
580    field public static final String EXTRA_STATS_SUBSCRIPTION_ID = "android.app.extra.STATS_SUBSCRIPTION_ID";
581    field public static final String EXTRA_STATS_SUBSCRIPTION_RULE_ID = "android.app.extra.STATS_SUBSCRIPTION_RULE_ID";
582  }
583
584  public static class StatsManager.StatsUnavailableException extends android.util.AndroidException {
585    ctor public StatsManager.StatsUnavailableException(String);
586    ctor public StatsManager.StatsUnavailableException(String, Throwable);
587  }
588
589  public class StatusBarManager {
590    method @NonNull @RequiresPermission(android.Manifest.permission.STATUS_BAR) public android.app.StatusBarManager.DisableInfo getDisableInfo();
591    method @RequiresPermission(android.Manifest.permission.STATUS_BAR) public void setDisabledForSetup(boolean);
592  }
593
594  public static final class StatusBarManager.DisableInfo {
595    method public boolean areAllComponentsEnabled();
596    method public boolean isNavigateToHomeDisabled();
597    method public boolean isNotificationPeekingDisabled();
598    method public boolean isRecentsDisabled();
599    method public boolean isSearchDisabled();
600    method public boolean isStatusBarExpansionDisabled();
601  }
602
603  public final class Vr2dDisplayProperties implements android.os.Parcelable {
604    ctor public Vr2dDisplayProperties(int, int, int);
605    method public int describeContents();
606    method public void dump(@NonNull java.io.PrintWriter, @NonNull String);
607    method public int getAddedFlags();
608    method public int getDpi();
609    method public int getHeight();
610    method public int getRemovedFlags();
611    method public int getWidth();
612    method public void writeToParcel(android.os.Parcel, int);
613    field @NonNull public static final android.os.Parcelable.Creator<android.app.Vr2dDisplayProperties> CREATOR;
614    field public static final int FLAG_VIRTUAL_DISPLAY_ENABLED = 1; // 0x1
615  }
616
617  public static final class Vr2dDisplayProperties.Builder {
618    ctor public Vr2dDisplayProperties.Builder();
619    method @NonNull public android.app.Vr2dDisplayProperties.Builder addFlags(int);
620    method @NonNull public android.app.Vr2dDisplayProperties build();
621    method @NonNull public android.app.Vr2dDisplayProperties.Builder removeFlags(int);
622    method @NonNull public android.app.Vr2dDisplayProperties.Builder setDimensions(int, int, int);
623    method @NonNull public android.app.Vr2dDisplayProperties.Builder setEnabled(boolean);
624  }
625
626  public class VrManager {
627    method @RequiresPermission(android.Manifest.permission.RESTRICTED_VR_ACCESS) public int getVr2dDisplayId();
628    method @RequiresPermission(anyOf={android.Manifest.permission.RESTRICTED_VR_ACCESS, "android.permission.ACCESS_VR_STATE"}) public boolean isPersistentVrModeEnabled();
629    method @RequiresPermission(anyOf={android.Manifest.permission.RESTRICTED_VR_ACCESS, "android.permission.ACCESS_VR_STATE"}) public boolean isVrModeEnabled();
630    method @RequiresPermission(anyOf={android.Manifest.permission.RESTRICTED_VR_ACCESS, "android.permission.ACCESS_VR_STATE"}) public void registerVrStateCallback(@NonNull java.util.concurrent.Executor, @NonNull android.app.VrStateCallback);
631    method @RequiresPermission(android.Manifest.permission.RESTRICTED_VR_ACCESS) public void setAndBindVrCompositor(android.content.ComponentName);
632    method @RequiresPermission(android.Manifest.permission.RESTRICTED_VR_ACCESS) public void setPersistentVrModeEnabled(boolean);
633    method @RequiresPermission("android.permission.ACCESS_VR_MANAGER") public void setStandbyEnabled(boolean);
634    method @RequiresPermission(android.Manifest.permission.RESTRICTED_VR_ACCESS) public void setVr2dDisplayProperties(@NonNull android.app.Vr2dDisplayProperties);
635    method @RequiresPermission(android.Manifest.permission.RESTRICTED_VR_ACCESS) public void setVrInputMethod(@Nullable android.content.ComponentName);
636    method @RequiresPermission(anyOf={android.Manifest.permission.RESTRICTED_VR_ACCESS, "android.permission.ACCESS_VR_STATE"}) public void unregisterVrStateCallback(@NonNull android.app.VrStateCallback);
637  }
638
639  public abstract class VrStateCallback {
640    ctor public VrStateCallback();
641    method public void onPersistentVrStateChanged(boolean);
642    method public void onVrStateChanged(boolean);
643  }
644
645  public final class WallpaperColors implements android.os.Parcelable {
646    ctor public WallpaperColors(@NonNull android.graphics.Color, @Nullable android.graphics.Color, @Nullable android.graphics.Color, int);
647    method public int getColorHints();
648    field public static final int HINT_SUPPORTS_DARK_TEXT = 1; // 0x1
649    field public static final int HINT_SUPPORTS_DARK_THEME = 2; // 0x2
650  }
651
652  public final class WallpaperInfo implements android.os.Parcelable {
653    method public boolean supportsAmbientMode();
654  }
655
656  public class WallpaperManager {
657    method @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS_FULL) public void clearWallpaper(int, int);
658    method public void setDisplayOffset(android.os.IBinder, int, int);
659    method @RequiresPermission(android.Manifest.permission.SET_WALLPAPER_COMPONENT) public boolean setWallpaperComponent(android.content.ComponentName);
660  }
661
662}
663
664package android.app.admin {
665
666  public class DevicePolicyManager {
667    method @Nullable @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public String getDeviceOwner();
668    method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public android.content.ComponentName getDeviceOwnerComponentOnAnyUser();
669    method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public String getDeviceOwnerNameOnAnyUser();
670    method @Nullable public CharSequence getDeviceOwnerOrganizationName();
671    method @Nullable @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public android.os.UserHandle getDeviceOwnerUser();
672    method @Nullable @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public java.util.List<java.lang.String> getPermittedAccessibilityServices(int);
673    method @Nullable @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public java.util.List<java.lang.String> getPermittedInputMethodsForCurrentUser();
674    method @Nullable public android.content.ComponentName getProfileOwner() throws java.lang.IllegalArgumentException;
675    method @Nullable @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public String getProfileOwnerNameAsUser(int) throws java.lang.IllegalArgumentException;
676    method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public int getUserProvisioningState();
677    method public boolean isDeviceManaged();
678    method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public boolean isDeviceProvisioned();
679    method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public boolean isDeviceProvisioningConfigApplied();
680    method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public boolean isManagedKiosk();
681    method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public boolean isUnattendedManagedKiosk();
682    method @RequiresPermission("android.permission.NOTIFY_PENDING_SYSTEM_UPDATE") public void notifyPendingSystemUpdate(long);
683    method @RequiresPermission("android.permission.NOTIFY_PENDING_SYSTEM_UPDATE") public void notifyPendingSystemUpdate(long, boolean);
684    method @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS_FULL) public boolean packageHasActiveAdmins(String);
685    method @Deprecated @RequiresPermission("android.permission.MANAGE_DEVICE_ADMINS") public boolean setActiveProfileOwner(@NonNull android.content.ComponentName, String) throws java.lang.IllegalArgumentException;
686    method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public void setDeviceProvisioningConfigApplied();
687    method @RequiresPermission(value=android.Manifest.permission.GRANT_PROFILE_OWNER_DEVICE_IDS_ACCESS, conditional=true) public void setProfileOwnerCanAccessDeviceIds(@NonNull android.content.ComponentName);
688    field public static final String ACCOUNT_FEATURE_DEVICE_OR_PROFILE_OWNER_ALLOWED = "android.account.DEVICE_OR_PROFILE_OWNER_ALLOWED";
689    field public static final String ACCOUNT_FEATURE_DEVICE_OR_PROFILE_OWNER_DISALLOWED = "android.account.DEVICE_OR_PROFILE_OWNER_DISALLOWED";
690    field public static final String ACTION_PROVISION_FINALIZATION = "android.app.action.PROVISION_FINALIZATION";
691    field public static final String ACTION_PROVISION_MANAGED_DEVICE_FROM_TRUSTED_SOURCE = "android.app.action.PROVISION_MANAGED_DEVICE_FROM_TRUSTED_SOURCE";
692    field public static final String ACTION_SET_PROFILE_OWNER = "android.app.action.SET_PROFILE_OWNER";
693    field public static final String ACTION_STATE_USER_SETUP_COMPLETE = "android.app.action.STATE_USER_SETUP_COMPLETE";
694    field public static final String EXTRA_PROFILE_OWNER_NAME = "android.app.extra.PROFILE_OWNER_NAME";
695    field public static final String EXTRA_PROVISIONING_DEVICE_ADMIN_PACKAGE_ICON_URI = "android.app.extra.PROVISIONING_DEVICE_ADMIN_PACKAGE_ICON_URI";
696    field public static final String EXTRA_PROVISIONING_DEVICE_ADMIN_PACKAGE_LABEL = "android.app.extra.PROVISIONING_DEVICE_ADMIN_PACKAGE_LABEL";
697    field public static final String EXTRA_PROVISIONING_ORGANIZATION_NAME = "android.app.extra.PROVISIONING_ORGANIZATION_NAME";
698    field public static final String EXTRA_PROVISIONING_SUPPORT_URL = "android.app.extra.PROVISIONING_SUPPORT_URL";
699    field public static final String EXTRA_PROVISIONING_TRIGGER = "android.app.extra.PROVISIONING_TRIGGER";
700    field public static final String EXTRA_RESTRICTION = "android.app.extra.RESTRICTION";
701    field public static final int PROVISIONING_TRIGGER_CLOUD_ENROLLMENT = 1; // 0x1
702    field public static final int PROVISIONING_TRIGGER_PERSISTENT_DEVICE_OWNER = 3; // 0x3
703    field public static final int PROVISIONING_TRIGGER_QR_CODE = 2; // 0x2
704    field public static final int PROVISIONING_TRIGGER_UNSPECIFIED = 0; // 0x0
705    field public static final int STATE_USER_PROFILE_COMPLETE = 4; // 0x4
706    field public static final int STATE_USER_SETUP_COMPLETE = 2; // 0x2
707    field public static final int STATE_USER_SETUP_FINALIZED = 3; // 0x3
708    field public static final int STATE_USER_SETUP_INCOMPLETE = 1; // 0x1
709    field public static final int STATE_USER_UNMANAGED = 0; // 0x0
710  }
711
712  public final class SystemUpdatePolicy implements android.os.Parcelable {
713    method public android.app.admin.SystemUpdatePolicy.InstallationOption getInstallationOptionAt(long);
714    field public static final int TYPE_PAUSE = 4; // 0x4
715  }
716
717  public static class SystemUpdatePolicy.InstallationOption {
718    method public long getEffectiveTime();
719    method public int getType();
720  }
721
722}
723
724package android.app.assist {
725
726  public static class AssistStructure.ViewNode {
727    ctor public AssistStructure.ViewNode();
728  }
729
730}
731
732package android.app.backup {
733
734  public class BackupDataInput {
735    ctor public BackupDataInput(java.io.FileDescriptor);
736  }
737
738  public class BackupDataOutput {
739    ctor public BackupDataOutput(java.io.FileDescriptor);
740    ctor public BackupDataOutput(java.io.FileDescriptor, long);
741  }
742
743  public class BackupManager {
744    method @RequiresPermission(android.Manifest.permission.BACKUP) public void backupNow();
745    method @RequiresPermission(android.Manifest.permission.BACKUP) public android.app.backup.RestoreSession beginRestoreSession();
746    method @RequiresPermission(android.Manifest.permission.BACKUP) public void cancelBackups();
747    method @RequiresPermission(android.Manifest.permission.BACKUP) public long getAvailableRestoreToken(String);
748    method @RequiresPermission(android.Manifest.permission.BACKUP) public android.content.Intent getConfigurationIntent(String);
749    method @RequiresPermission(android.Manifest.permission.BACKUP) public String getCurrentTransport();
750    method @Nullable @RequiresPermission(android.Manifest.permission.BACKUP) public android.content.ComponentName getCurrentTransportComponent();
751    method @RequiresPermission(android.Manifest.permission.BACKUP) public android.content.Intent getDataManagementIntent(String);
752    method @Nullable @RequiresPermission(android.Manifest.permission.BACKUP) public CharSequence getDataManagementIntentLabel(@NonNull String);
753    method @Deprecated @Nullable @RequiresPermission(android.Manifest.permission.BACKUP) public String getDataManagementLabel(@NonNull String);
754    method @RequiresPermission(android.Manifest.permission.BACKUP) public String getDestinationString(String);
755    method @RequiresPermission(android.Manifest.permission.BACKUP) public boolean isAppEligibleForBackup(String);
756    method @RequiresPermission(android.Manifest.permission.BACKUP) public boolean isBackupEnabled();
757    method @RequiresPermission(android.Manifest.permission.BACKUP) public boolean isBackupServiceActive(android.os.UserHandle);
758    method @RequiresPermission(android.Manifest.permission.BACKUP) public String[] listAllTransports();
759    method @RequiresPermission(android.Manifest.permission.BACKUP) public int requestBackup(String[], android.app.backup.BackupObserver);
760    method @RequiresPermission(android.Manifest.permission.BACKUP) public int requestBackup(String[], android.app.backup.BackupObserver, android.app.backup.BackupManagerMonitor, int);
761    method @Deprecated public int requestRestore(android.app.backup.RestoreObserver, android.app.backup.BackupManagerMonitor);
762    method @Deprecated @RequiresPermission(android.Manifest.permission.BACKUP) public String selectBackupTransport(String);
763    method @RequiresPermission(android.Manifest.permission.BACKUP) public void selectBackupTransport(android.content.ComponentName, android.app.backup.SelectBackupTransportCallback);
764    method @RequiresPermission(android.Manifest.permission.BACKUP) public void setAncestralSerialNumber(long);
765    method @RequiresPermission(android.Manifest.permission.BACKUP) public void setAutoRestore(boolean);
766    method @RequiresPermission(android.Manifest.permission.BACKUP) public void setBackupEnabled(boolean);
767    method @Deprecated @RequiresPermission(android.Manifest.permission.BACKUP) public void updateTransportAttributes(@NonNull android.content.ComponentName, @NonNull String, @Nullable android.content.Intent, @NonNull String, @Nullable android.content.Intent, @Nullable String);
768    method @RequiresPermission(android.Manifest.permission.BACKUP) public void updateTransportAttributes(@NonNull android.content.ComponentName, @NonNull String, @Nullable android.content.Intent, @NonNull String, @Nullable android.content.Intent, @Nullable CharSequence);
769    field public static final int ERROR_AGENT_FAILURE = -1003; // 0xfffffc15
770    field public static final int ERROR_BACKUP_CANCELLED = -2003; // 0xfffff82d
771    field public static final int ERROR_BACKUP_NOT_ALLOWED = -2001; // 0xfffff82f
772    field public static final int ERROR_PACKAGE_NOT_FOUND = -2002; // 0xfffff82e
773    field public static final int ERROR_TRANSPORT_ABORTED = -1000; // 0xfffffc18
774    field public static final int ERROR_TRANSPORT_INVALID = -2; // 0xfffffffe
775    field public static final int ERROR_TRANSPORT_PACKAGE_REJECTED = -1002; // 0xfffffc16
776    field public static final int ERROR_TRANSPORT_QUOTA_EXCEEDED = -1005; // 0xfffffc13
777    field public static final int ERROR_TRANSPORT_UNAVAILABLE = -1; // 0xffffffff
778    field public static final int FLAG_NON_INCREMENTAL_BACKUP = 1; // 0x1
779    field public static final String PACKAGE_MANAGER_SENTINEL = "@pm@";
780    field public static final int SUCCESS = 0; // 0x0
781  }
782
783  public class BackupManagerMonitor {
784    ctor public BackupManagerMonitor();
785    method public void onEvent(android.os.Bundle);
786    field public static final String EXTRA_LOG_CANCEL_ALL = "android.app.backup.extra.LOG_CANCEL_ALL";
787    field public static final String EXTRA_LOG_EVENT_CATEGORY = "android.app.backup.extra.LOG_EVENT_CATEGORY";
788    field public static final String EXTRA_LOG_EVENT_ID = "android.app.backup.extra.LOG_EVENT_ID";
789    field public static final String EXTRA_LOG_EVENT_PACKAGE_LONG_VERSION = "android.app.backup.extra.LOG_EVENT_PACKAGE_FULL_VERSION";
790    field public static final String EXTRA_LOG_EVENT_PACKAGE_NAME = "android.app.backup.extra.LOG_EVENT_PACKAGE_NAME";
791    field @Deprecated public static final String EXTRA_LOG_EVENT_PACKAGE_VERSION = "android.app.backup.extra.LOG_EVENT_PACKAGE_VERSION";
792    field public static final String EXTRA_LOG_EXCEPTION_FULL_BACKUP = "android.app.backup.extra.LOG_EXCEPTION_FULL_BACKUP";
793    field public static final String EXTRA_LOG_ILLEGAL_KEY = "android.app.backup.extra.LOG_ILLEGAL_KEY";
794    field public static final String EXTRA_LOG_MANIFEST_PACKAGE_NAME = "android.app.backup.extra.LOG_MANIFEST_PACKAGE_NAME";
795    field public static final String EXTRA_LOG_OLD_VERSION = "android.app.backup.extra.LOG_OLD_VERSION";
796    field public static final String EXTRA_LOG_POLICY_ALLOW_APKS = "android.app.backup.extra.LOG_POLICY_ALLOW_APKS";
797    field public static final String EXTRA_LOG_PREFLIGHT_ERROR = "android.app.backup.extra.LOG_PREFLIGHT_ERROR";
798    field public static final String EXTRA_LOG_RESTORE_ANYWAY = "android.app.backup.extra.LOG_RESTORE_ANYWAY";
799    field public static final String EXTRA_LOG_RESTORE_VERSION = "android.app.backup.extra.LOG_RESTORE_VERSION";
800    field public static final String EXTRA_LOG_WIDGET_PACKAGE_NAME = "android.app.backup.extra.LOG_WIDGET_PACKAGE_NAME";
801    field public static final int LOG_EVENT_CATEGORY_AGENT = 2; // 0x2
802    field public static final int LOG_EVENT_CATEGORY_BACKUP_MANAGER_POLICY = 3; // 0x3
803    field public static final int LOG_EVENT_CATEGORY_TRANSPORT = 1; // 0x1
804    field public static final int LOG_EVENT_ID_APK_NOT_INSTALLED = 40; // 0x28
805    field public static final int LOG_EVENT_ID_APP_HAS_NO_AGENT = 28; // 0x1c
806    field public static final int LOG_EVENT_ID_BACKUP_DISABLED = 13; // 0xd
807    field public static final int LOG_EVENT_ID_CANNOT_RESTORE_WITHOUT_APK = 41; // 0x29
808    field public static final int LOG_EVENT_ID_CANT_FIND_AGENT = 30; // 0x1e
809    field public static final int LOG_EVENT_ID_CORRUPT_MANIFEST = 46; // 0x2e
810    field public static final int LOG_EVENT_ID_DEVICE_NOT_PROVISIONED = 14; // 0xe
811    field public static final int LOG_EVENT_ID_ERROR_PREFLIGHT = 16; // 0x10
812    field public static final int LOG_EVENT_ID_EXCEPTION_FULL_BACKUP = 19; // 0x13
813    field public static final int LOG_EVENT_ID_EXPECTED_DIFFERENT_PACKAGE = 43; // 0x2b
814    field public static final int LOG_EVENT_ID_FULL_BACKUP_CANCEL = 4; // 0x4
815    field public static final int LOG_EVENT_ID_FULL_RESTORE_ALLOW_BACKUP_FALSE = 39; // 0x27
816    field public static final int LOG_EVENT_ID_FULL_RESTORE_SIGNATURE_MISMATCH = 37; // 0x25
817    field public static final int LOG_EVENT_ID_FULL_RESTORE_TIMEOUT = 45; // 0x2d
818    field public static final int LOG_EVENT_ID_ILLEGAL_KEY = 5; // 0x5
819    field public static final int LOG_EVENT_ID_KEY_VALUE_BACKUP_CANCEL = 21; // 0x15
820    field public static final int LOG_EVENT_ID_KEY_VALUE_RESTORE_TIMEOUT = 31; // 0x1f
821    field public static final int LOG_EVENT_ID_LOST_TRANSPORT = 25; // 0x19
822    field public static final int LOG_EVENT_ID_MISSING_SIGNATURE = 42; // 0x2a
823    field public static final int LOG_EVENT_ID_NO_DATA_TO_SEND = 7; // 0x7
824    field public static final int LOG_EVENT_ID_NO_PACKAGES = 49; // 0x31
825    field public static final int LOG_EVENT_ID_NO_PM_METADATA_RECEIVED = 23; // 0x17
826    field public static final int LOG_EVENT_ID_NO_RESTORE_METADATA_AVAILABLE = 22; // 0x16
827    field public static final int LOG_EVENT_ID_PACKAGE_INELIGIBLE = 9; // 0x9
828    field public static final int LOG_EVENT_ID_PACKAGE_KEY_VALUE_PARTICIPANT = 10; // 0xa
829    field public static final int LOG_EVENT_ID_PACKAGE_NOT_FOUND = 12; // 0xc
830    field public static final int LOG_EVENT_ID_PACKAGE_NOT_PRESENT = 26; // 0x1a
831    field public static final int LOG_EVENT_ID_PACKAGE_STOPPED = 11; // 0xb
832    field public static final int LOG_EVENT_ID_PACKAGE_TRANSPORT_NOT_PRESENT = 15; // 0xf
833    field public static final int LOG_EVENT_ID_PM_AGENT_HAS_NO_METADATA = 24; // 0x18
834    field public static final int LOG_EVENT_ID_QUOTA_HIT_PREFLIGHT = 18; // 0x12
835    field public static final int LOG_EVENT_ID_RESTORE_ANY_VERSION = 34; // 0x22
836    field public static final int LOG_EVENT_ID_RESTORE_VERSION_HIGHER = 27; // 0x1b
837    field public static final int LOG_EVENT_ID_SIGNATURE_MISMATCH = 29; // 0x1d
838    field public static final int LOG_EVENT_ID_SYSTEM_APP_NO_AGENT = 38; // 0x26
839    field public static final int LOG_EVENT_ID_TRANSPORT_IS_NULL = 50; // 0x32
840    field public static final int LOG_EVENT_ID_TRANSPORT_NON_INCREMENTAL_BACKUP_REQUIRED = 51; // 0x33
841    field public static final int LOG_EVENT_ID_UNKNOWN_VERSION = 44; // 0x2c
842    field public static final int LOG_EVENT_ID_VERSIONS_MATCH = 35; // 0x23
843    field public static final int LOG_EVENT_ID_VERSION_OF_BACKUP_OLDER = 36; // 0x24
844    field public static final int LOG_EVENT_ID_WIDGET_METADATA_MISMATCH = 47; // 0x2f
845    field public static final int LOG_EVENT_ID_WIDGET_UNKNOWN_VERSION = 48; // 0x30
846  }
847
848  public abstract class BackupObserver {
849    ctor public BackupObserver();
850    method public void backupFinished(int);
851    method public void onResult(String, int);
852    method public void onUpdate(String, android.app.backup.BackupProgress);
853  }
854
855  public class BackupProgress implements android.os.Parcelable {
856    ctor public BackupProgress(long, long);
857    method public int describeContents();
858    method public void writeToParcel(android.os.Parcel, int);
859    field @NonNull public static final android.os.Parcelable.Creator<android.app.backup.BackupProgress> CREATOR;
860    field public final long bytesExpected;
861    field public final long bytesTransferred;
862  }
863
864  public class BackupTransport {
865    ctor public BackupTransport();
866    method public int abortFullRestore();
867    method public void cancelFullBackup();
868    method public int checkFullBackupSize(long);
869    method public int clearBackupData(android.content.pm.PackageInfo);
870    method public android.content.Intent configurationIntent();
871    method public String currentDestinationString();
872    method public android.content.Intent dataManagementIntent();
873    method @Nullable public CharSequence dataManagementIntentLabel();
874    method @Deprecated @Nullable public String dataManagementLabel();
875    method public int finishBackup();
876    method public void finishRestore();
877    method public android.app.backup.RestoreSet[] getAvailableRestoreSets();
878    method public long getBackupQuota(String, boolean);
879    method public android.os.IBinder getBinder();
880    method public long getCurrentRestoreSet();
881    method public int getNextFullRestoreDataChunk(android.os.ParcelFileDescriptor);
882    method public int getRestoreData(android.os.ParcelFileDescriptor);
883    method public int getTransportFlags();
884    method public int initializeDevice();
885    method public boolean isAppEligibleForBackup(android.content.pm.PackageInfo, boolean);
886    method public String name();
887    method public android.app.backup.RestoreDescription nextRestorePackage();
888    method public int performBackup(android.content.pm.PackageInfo, android.os.ParcelFileDescriptor, int);
889    method public int performBackup(android.content.pm.PackageInfo, android.os.ParcelFileDescriptor);
890    method public int performFullBackup(android.content.pm.PackageInfo, android.os.ParcelFileDescriptor, int);
891    method public int performFullBackup(android.content.pm.PackageInfo, android.os.ParcelFileDescriptor);
892    method public long requestBackupTime();
893    method public long requestFullBackupTime();
894    method public int sendBackupData(int);
895    method public int startRestore(long, android.content.pm.PackageInfo[]);
896    method public String transportDirName();
897    field public static final int AGENT_ERROR = -1003; // 0xfffffc15
898    field public static final int AGENT_UNKNOWN = -1004; // 0xfffffc14
899    field public static final String EXTRA_TRANSPORT_REGISTRATION = "android.app.backup.extra.TRANSPORT_REGISTRATION";
900    field public static final int FLAG_INCREMENTAL = 2; // 0x2
901    field public static final int FLAG_NON_INCREMENTAL = 4; // 0x4
902    field public static final int FLAG_USER_INITIATED = 1; // 0x1
903    field public static final int NO_MORE_DATA = -1; // 0xffffffff
904    field public static final int TRANSPORT_ERROR = -1000; // 0xfffffc18
905    field public static final int TRANSPORT_NON_INCREMENTAL_BACKUP_REQUIRED = -1006; // 0xfffffc12
906    field public static final int TRANSPORT_NOT_INITIALIZED = -1001; // 0xfffffc17
907    field public static final int TRANSPORT_OK = 0; // 0x0
908    field public static final int TRANSPORT_PACKAGE_REJECTED = -1002; // 0xfffffc16
909    field public static final int TRANSPORT_QUOTA_EXCEEDED = -1005; // 0xfffffc13
910  }
911
912  public class RestoreDescription implements android.os.Parcelable {
913    ctor public RestoreDescription(String, int);
914    method public int describeContents();
915    method public int getDataType();
916    method public String getPackageName();
917    method public void writeToParcel(android.os.Parcel, int);
918    field @NonNull public static final android.os.Parcelable.Creator<android.app.backup.RestoreDescription> CREATOR;
919    field public static final android.app.backup.RestoreDescription NO_MORE_PACKAGES;
920    field public static final int TYPE_FULL_STREAM = 2; // 0x2
921    field public static final int TYPE_KEY_VALUE = 1; // 0x1
922  }
923
924  public abstract class RestoreObserver {
925    method public void restoreSetsAvailable(android.app.backup.RestoreSet[]);
926  }
927
928  public class RestoreSession {
929    method public void endRestoreSession();
930    method public int getAvailableRestoreSets(android.app.backup.RestoreObserver, android.app.backup.BackupManagerMonitor);
931    method public int getAvailableRestoreSets(android.app.backup.RestoreObserver);
932    method public int restoreAll(long, android.app.backup.RestoreObserver, android.app.backup.BackupManagerMonitor);
933    method public int restoreAll(long, android.app.backup.RestoreObserver);
934    method public int restorePackage(String, android.app.backup.RestoreObserver, android.app.backup.BackupManagerMonitor);
935    method public int restorePackage(String, android.app.backup.RestoreObserver);
936    method public int restorePackages(long, @Nullable android.app.backup.RestoreObserver, @NonNull java.util.Set<java.lang.String>, @Nullable android.app.backup.BackupManagerMonitor);
937    method public int restorePackages(long, @Nullable android.app.backup.RestoreObserver, @NonNull java.util.Set<java.lang.String>);
938  }
939
940  public class RestoreSet implements android.os.Parcelable {
941    ctor public RestoreSet();
942    ctor public RestoreSet(String, String, long);
943    method public int describeContents();
944    method public void writeToParcel(android.os.Parcel, int);
945    field @NonNull public static final android.os.Parcelable.Creator<android.app.backup.RestoreSet> CREATOR;
946    field public String device;
947    field public String name;
948    field public long token;
949  }
950
951  public abstract class SelectBackupTransportCallback {
952    ctor public SelectBackupTransportCallback();
953    method public void onFailure(int);
954    method public void onSuccess(String);
955  }
956
957}
958
959package android.app.contentsuggestions {
960
961  public final class ClassificationsRequest implements android.os.Parcelable {
962    method public int describeContents();
963    method @NonNull public android.os.Bundle getExtras();
964    method @NonNull public java.util.List<android.app.contentsuggestions.ContentSelection> getSelections();
965    method public void writeToParcel(android.os.Parcel, int);
966    field @NonNull public static final android.os.Parcelable.Creator<android.app.contentsuggestions.ClassificationsRequest> CREATOR;
967  }
968
969  public static final class ClassificationsRequest.Builder {
970    ctor public ClassificationsRequest.Builder(@NonNull java.util.List<android.app.contentsuggestions.ContentSelection>);
971    method @NonNull public android.app.contentsuggestions.ClassificationsRequest build();
972    method @NonNull public android.app.contentsuggestions.ClassificationsRequest.Builder setExtras(@NonNull android.os.Bundle);
973  }
974
975  public final class ContentClassification implements android.os.Parcelable {
976    ctor public ContentClassification(@NonNull String, @NonNull android.os.Bundle);
977    method public int describeContents();
978    method @NonNull public android.os.Bundle getExtras();
979    method @NonNull public String getId();
980    method public void writeToParcel(android.os.Parcel, int);
981    field @NonNull public static final android.os.Parcelable.Creator<android.app.contentsuggestions.ContentClassification> CREATOR;
982  }
983
984  public final class ContentSelection implements android.os.Parcelable {
985    ctor public ContentSelection(@NonNull String, @NonNull android.os.Bundle);
986    method public int describeContents();
987    method @NonNull public android.os.Bundle getExtras();
988    method @NonNull public String getId();
989    method public void writeToParcel(android.os.Parcel, int);
990    field @NonNull public static final android.os.Parcelable.Creator<android.app.contentsuggestions.ContentSelection> CREATOR;
991  }
992
993  public final class ContentSuggestionsManager {
994    method public void classifyContentSelections(@NonNull android.app.contentsuggestions.ClassificationsRequest, @NonNull java.util.concurrent.Executor, @NonNull android.app.contentsuggestions.ContentSuggestionsManager.ClassificationsCallback);
995    method public boolean isEnabled();
996    method public void notifyInteraction(@NonNull String, @NonNull android.os.Bundle);
997    method public void provideContextImage(int, @NonNull android.os.Bundle);
998    method public void suggestContentSelections(@NonNull android.app.contentsuggestions.SelectionsRequest, @NonNull java.util.concurrent.Executor, @NonNull android.app.contentsuggestions.ContentSuggestionsManager.SelectionsCallback);
999  }
1000
1001  public static interface ContentSuggestionsManager.ClassificationsCallback {
1002    method public void onContentClassificationsAvailable(int, @NonNull java.util.List<android.app.contentsuggestions.ContentClassification>);
1003  }
1004
1005  public static interface ContentSuggestionsManager.SelectionsCallback {
1006    method public void onContentSelectionsAvailable(int, @NonNull java.util.List<android.app.contentsuggestions.ContentSelection>);
1007  }
1008
1009  public final class SelectionsRequest implements android.os.Parcelable {
1010    method public int describeContents();
1011    method @NonNull public android.os.Bundle getExtras();
1012    method @Nullable public android.graphics.Point getInterestPoint();
1013    method public int getTaskId();
1014    method public void writeToParcel(android.os.Parcel, int);
1015    field @NonNull public static final android.os.Parcelable.Creator<android.app.contentsuggestions.SelectionsRequest> CREATOR;
1016  }
1017
1018  public static final class SelectionsRequest.Builder {
1019    ctor public SelectionsRequest.Builder(int);
1020    method @NonNull public android.app.contentsuggestions.SelectionsRequest build();
1021    method @NonNull public android.app.contentsuggestions.SelectionsRequest.Builder setExtras(@NonNull android.os.Bundle);
1022    method @NonNull public android.app.contentsuggestions.SelectionsRequest.Builder setInterestPoint(@NonNull android.graphics.Point);
1023  }
1024
1025}
1026
1027package android.app.job {
1028
1029  public abstract class JobScheduler {
1030    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public abstract int scheduleAsPackage(@NonNull android.app.job.JobInfo, @NonNull String, int, String);
1031  }
1032
1033}
1034
1035package android.app.prediction {
1036
1037  public final class AppPredictionContext implements android.os.Parcelable {
1038    method public int describeContents();
1039    method @Nullable public android.os.Bundle getExtras();
1040    method @NonNull public String getPackageName();
1041    method @IntRange(from=0) public int getPredictedTargetCount();
1042    method @NonNull public String getUiSurface();
1043    method public void writeToParcel(@NonNull android.os.Parcel, int);
1044    field @NonNull public static final android.os.Parcelable.Creator<android.app.prediction.AppPredictionContext> CREATOR;
1045  }
1046
1047  public static final class AppPredictionContext.Builder {
1048    ctor public AppPredictionContext.Builder(@NonNull android.content.Context);
1049    method @NonNull public android.app.prediction.AppPredictionContext build();
1050    method @NonNull public android.app.prediction.AppPredictionContext.Builder setExtras(@Nullable android.os.Bundle);
1051    method @NonNull public android.app.prediction.AppPredictionContext.Builder setPredictedTargetCount(@IntRange(from=0) int);
1052    method @NonNull public android.app.prediction.AppPredictionContext.Builder setUiSurface(@NonNull String);
1053  }
1054
1055  public final class AppPredictionManager {
1056    method @NonNull public android.app.prediction.AppPredictor createAppPredictionSession(@NonNull android.app.prediction.AppPredictionContext);
1057  }
1058
1059  public final class AppPredictionSessionId implements android.os.Parcelable {
1060    method public int describeContents();
1061    method public void writeToParcel(android.os.Parcel, int);
1062    field @NonNull public static final android.os.Parcelable.Creator<android.app.prediction.AppPredictionSessionId> CREATOR;
1063  }
1064
1065  public final class AppPredictor {
1066    method public void destroy();
1067    method public void notifyAppTargetEvent(@NonNull android.app.prediction.AppTargetEvent);
1068    method public void notifyLaunchLocationShown(@NonNull String, @NonNull java.util.List<android.app.prediction.AppTargetId>);
1069    method public void registerPredictionUpdates(@NonNull java.util.concurrent.Executor, @NonNull android.app.prediction.AppPredictor.Callback);
1070    method public void requestPredictionUpdate();
1071    method @Nullable public void sortTargets(@NonNull java.util.List<android.app.prediction.AppTarget>, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.util.List<android.app.prediction.AppTarget>>);
1072    method public void unregisterPredictionUpdates(@NonNull android.app.prediction.AppPredictor.Callback);
1073  }
1074
1075  public static interface AppPredictor.Callback {
1076    method public void onTargetsAvailable(@NonNull java.util.List<android.app.prediction.AppTarget>);
1077  }
1078
1079  public final class AppTarget implements android.os.Parcelable {
1080    method public int describeContents();
1081    method @Nullable public String getClassName();
1082    method @NonNull public android.app.prediction.AppTargetId getId();
1083    method @NonNull public String getPackageName();
1084    method @IntRange(from=0) public int getRank();
1085    method @Nullable public android.content.pm.ShortcutInfo getShortcutInfo();
1086    method @NonNull public android.os.UserHandle getUser();
1087    method public void writeToParcel(android.os.Parcel, int);
1088    field @NonNull public static final android.os.Parcelable.Creator<android.app.prediction.AppTarget> CREATOR;
1089  }
1090
1091  public static final class AppTarget.Builder {
1092    ctor public AppTarget.Builder(@NonNull android.app.prediction.AppTargetId, @NonNull String, @NonNull android.os.UserHandle);
1093    ctor public AppTarget.Builder(@NonNull android.app.prediction.AppTargetId, @NonNull android.content.pm.ShortcutInfo);
1094    method @NonNull public android.app.prediction.AppTarget build();
1095    method @NonNull public android.app.prediction.AppTarget.Builder setClassName(@NonNull String);
1096    method @NonNull public android.app.prediction.AppTarget.Builder setRank(@IntRange(from=0) int);
1097  }
1098
1099  public final class AppTargetEvent implements android.os.Parcelable {
1100    method public int describeContents();
1101    method public int getAction();
1102    method @Nullable public String getLaunchLocation();
1103    method @Nullable public android.app.prediction.AppTarget getTarget();
1104    method public void writeToParcel(android.os.Parcel, int);
1105    field public static final int ACTION_DISMISS = 2; // 0x2
1106    field public static final int ACTION_LAUNCH = 1; // 0x1
1107    field public static final int ACTION_PIN = 3; // 0x3
1108    field @NonNull public static final android.os.Parcelable.Creator<android.app.prediction.AppTargetEvent> CREATOR;
1109  }
1110
1111  public static final class AppTargetEvent.Builder {
1112    ctor public AppTargetEvent.Builder(@Nullable android.app.prediction.AppTarget, int);
1113    method @NonNull public android.app.prediction.AppTargetEvent build();
1114    method @NonNull public android.app.prediction.AppTargetEvent.Builder setLaunchLocation(@Nullable String);
1115  }
1116
1117  public final class AppTargetId implements android.os.Parcelable {
1118    ctor public AppTargetId(@NonNull String);
1119    method public int describeContents();
1120    method public void writeToParcel(android.os.Parcel, int);
1121    field @NonNull public static final android.os.Parcelable.Creator<android.app.prediction.AppTargetId> CREATOR;
1122  }
1123
1124}
1125
1126package android.app.role {
1127
1128  public interface OnRoleHoldersChangedListener {
1129    method public void onRoleHoldersChanged(@NonNull String, @NonNull android.os.UserHandle);
1130  }
1131
1132  public abstract class RoleControllerService extends android.app.Service {
1133    ctor public RoleControllerService();
1134    method @WorkerThread public abstract boolean onAddRoleHolder(@NonNull String, @NonNull String, int);
1135    method @Nullable public final android.os.IBinder onBind(@Nullable android.content.Intent);
1136    method @WorkerThread public abstract boolean onClearRoleHolders(@NonNull String, int);
1137    method @WorkerThread public abstract boolean onGrantDefaultRoles();
1138    method public abstract boolean onIsApplicationQualifiedForRole(@NonNull String, @NonNull String);
1139    method public abstract boolean onIsRoleVisible(@NonNull String);
1140    method @WorkerThread public abstract boolean onRemoveRoleHolder(@NonNull String, @NonNull String, int);
1141    field public static final String SERVICE_INTERFACE = "android.app.role.RoleControllerService";
1142  }
1143
1144  public final class RoleManager {
1145    method @RequiresPermission(android.Manifest.permission.OBSERVE_ROLE_HOLDERS) public void addOnRoleHoldersChangedListenerAsUser(@NonNull java.util.concurrent.Executor, @NonNull android.app.role.OnRoleHoldersChangedListener, @NonNull android.os.UserHandle);
1146    method @RequiresPermission(android.Manifest.permission.MANAGE_ROLE_HOLDERS) public void addRoleHolderAsUser(@NonNull String, @NonNull String, int, @NonNull android.os.UserHandle, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Boolean>);
1147    method @RequiresPermission("com.android.permissioncontroller.permission.MANAGE_ROLES_FROM_CONTROLLER") public boolean addRoleHolderFromController(@NonNull String, @NonNull String);
1148    method @RequiresPermission(android.Manifest.permission.MANAGE_ROLE_HOLDERS) public void clearRoleHoldersAsUser(@NonNull String, int, @NonNull android.os.UserHandle, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Boolean>);
1149    method @NonNull @RequiresPermission("com.android.permissioncontroller.permission.MANAGE_ROLES_FROM_CONTROLLER") public java.util.List<java.lang.String> getHeldRolesFromController(@NonNull String);
1150    method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_ROLE_HOLDERS) public java.util.List<java.lang.String> getRoleHolders(@NonNull String);
1151    method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_ROLE_HOLDERS) public java.util.List<java.lang.String> getRoleHoldersAsUser(@NonNull String, @NonNull android.os.UserHandle);
1152    method @RequiresPermission(android.Manifest.permission.OBSERVE_ROLE_HOLDERS) public void removeOnRoleHoldersChangedListenerAsUser(@NonNull android.app.role.OnRoleHoldersChangedListener, @NonNull android.os.UserHandle);
1153    method @RequiresPermission(android.Manifest.permission.MANAGE_ROLE_HOLDERS) public void removeRoleHolderAsUser(@NonNull String, @NonNull String, int, @NonNull android.os.UserHandle, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Boolean>);
1154    method @RequiresPermission("com.android.permissioncontroller.permission.MANAGE_ROLES_FROM_CONTROLLER") public boolean removeRoleHolderFromController(@NonNull String, @NonNull String);
1155    method @RequiresPermission("com.android.permissioncontroller.permission.MANAGE_ROLES_FROM_CONTROLLER") public void setRoleNamesFromController(@NonNull java.util.List<java.lang.String>);
1156    field public static final int MANAGE_HOLDERS_FLAG_DONT_KILL_APP = 1; // 0x1
1157  }
1158
1159}
1160
1161package android.app.usage {
1162
1163  public final class CacheQuotaHint implements android.os.Parcelable {
1164    ctor public CacheQuotaHint(android.app.usage.CacheQuotaHint.Builder);
1165    method public int describeContents();
1166    method public long getQuota();
1167    method public int getUid();
1168    method public android.app.usage.UsageStats getUsageStats();
1169    method public String getVolumeUuid();
1170    method public void writeToParcel(android.os.Parcel, int);
1171    field @NonNull public static final android.os.Parcelable.Creator<android.app.usage.CacheQuotaHint> CREATOR;
1172    field public static final long QUOTA_NOT_SET = -1L; // 0xffffffffffffffffL
1173  }
1174
1175  public static final class CacheQuotaHint.Builder {
1176    ctor public CacheQuotaHint.Builder();
1177    ctor public CacheQuotaHint.Builder(android.app.usage.CacheQuotaHint);
1178    method @NonNull public android.app.usage.CacheQuotaHint build();
1179    method @NonNull public android.app.usage.CacheQuotaHint.Builder setQuota(long);
1180    method @NonNull public android.app.usage.CacheQuotaHint.Builder setUid(int);
1181    method @NonNull public android.app.usage.CacheQuotaHint.Builder setUsageStats(@Nullable android.app.usage.UsageStats);
1182    method @NonNull public android.app.usage.CacheQuotaHint.Builder setVolumeUuid(@Nullable String);
1183  }
1184
1185  public abstract class CacheQuotaService extends android.app.Service {
1186    ctor public CacheQuotaService();
1187    method public android.os.IBinder onBind(android.content.Intent);
1188    method public abstract java.util.List<android.app.usage.CacheQuotaHint> onComputeCacheQuotaHints(java.util.List<android.app.usage.CacheQuotaHint>);
1189    field public static final String SERVICE_INTERFACE = "android.app.usage.CacheQuotaService";
1190  }
1191
1192  public static final class UsageEvents.Event {
1193    method public int getInstanceId();
1194    method public String getNotificationChannelId();
1195    method @Nullable public String getTaskRootClassName();
1196    method @Nullable public String getTaskRootPackageName();
1197    method public boolean isInstantApp();
1198    field public static final int NOTIFICATION_INTERRUPTION = 12; // 0xc
1199    field public static final int NOTIFICATION_SEEN = 10; // 0xa
1200    field public static final int SLICE_PINNED = 14; // 0xe
1201    field public static final int SLICE_PINNED_PRIV = 13; // 0xd
1202    field public static final int SYSTEM_INTERACTION = 6; // 0x6
1203  }
1204
1205  public final class UsageStats implements android.os.Parcelable {
1206    method public int getAppLaunchCount();
1207  }
1208
1209  public final class UsageStatsManager {
1210    method @RequiresPermission(android.Manifest.permission.PACKAGE_USAGE_STATS) public int getAppStandbyBucket(String);
1211    method @RequiresPermission(android.Manifest.permission.PACKAGE_USAGE_STATS) public java.util.Map<java.lang.String,java.lang.Integer> getAppStandbyBuckets();
1212    method public int getUsageSource();
1213    method @RequiresPermission(allOf={android.Manifest.permission.SUSPEND_APPS, android.Manifest.permission.OBSERVE_APP_USAGE}) public void registerAppUsageLimitObserver(int, @NonNull String[], @NonNull java.time.Duration, @NonNull java.time.Duration, @Nullable android.app.PendingIntent);
1214    method @RequiresPermission(android.Manifest.permission.OBSERVE_APP_USAGE) public void registerAppUsageObserver(int, @NonNull String[], long, @NonNull java.util.concurrent.TimeUnit, @NonNull android.app.PendingIntent);
1215    method @RequiresPermission(android.Manifest.permission.OBSERVE_APP_USAGE) public void registerUsageSessionObserver(int, @NonNull String[], @NonNull java.time.Duration, @NonNull java.time.Duration, @NonNull android.app.PendingIntent, @Nullable android.app.PendingIntent);
1216    method public void reportUsageStart(@NonNull android.app.Activity, @NonNull String);
1217    method public void reportUsageStart(@NonNull android.app.Activity, @NonNull String, long);
1218    method public void reportUsageStop(@NonNull android.app.Activity, @NonNull String);
1219    method @RequiresPermission(android.Manifest.permission.CHANGE_APP_IDLE_STATE) public void setAppStandbyBucket(String, int);
1220    method @RequiresPermission(android.Manifest.permission.CHANGE_APP_IDLE_STATE) public void setAppStandbyBuckets(java.util.Map<java.lang.String,java.lang.Integer>);
1221    method @RequiresPermission(allOf={android.Manifest.permission.SUSPEND_APPS, android.Manifest.permission.OBSERVE_APP_USAGE}) public void unregisterAppUsageLimitObserver(int);
1222    method @RequiresPermission(android.Manifest.permission.OBSERVE_APP_USAGE) public void unregisterAppUsageObserver(int);
1223    method @RequiresPermission(android.Manifest.permission.OBSERVE_APP_USAGE) public void unregisterUsageSessionObserver(int);
1224    method @RequiresPermission(android.Manifest.permission.CHANGE_DEVICE_IDLE_TEMP_WHITELIST) public void whitelistAppTemporarily(String, long, android.os.UserHandle);
1225    field public static final String EXTRA_OBSERVER_ID = "android.app.usage.extra.OBSERVER_ID";
1226    field public static final String EXTRA_TIME_LIMIT = "android.app.usage.extra.TIME_LIMIT";
1227    field public static final String EXTRA_TIME_USED = "android.app.usage.extra.TIME_USED";
1228    field public static final int STANDBY_BUCKET_EXEMPTED = 5; // 0x5
1229    field public static final int STANDBY_BUCKET_NEVER = 50; // 0x32
1230    field public static final int USAGE_SOURCE_CURRENT_ACTIVITY = 2; // 0x2
1231    field public static final int USAGE_SOURCE_TASK_ROOT_ACTIVITY = 1; // 0x1
1232  }
1233
1234}
1235
1236package android.bluetooth {
1237
1238  public final class BluetoothAdapter {
1239    method @RequiresPermission(android.Manifest.permission.BLUETOOTH_PRIVILEGED) public boolean addOnMetadataChangedListener(@NonNull android.bluetooth.BluetoothDevice, @NonNull java.util.concurrent.Executor, @NonNull android.bluetooth.BluetoothAdapter.OnMetadataChangedListener);
1240    method public boolean disableBLE();
1241    method public boolean enableBLE();
1242    method @RequiresPermission(android.Manifest.permission.BLUETOOTH_ADMIN) public boolean enableNoAutoConnect();
1243    method public boolean isBleScanAlwaysAvailable();
1244    method public boolean isLeEnabled();
1245    method @RequiresPermission(android.Manifest.permission.BLUETOOTH_PRIVILEGED) public boolean removeOnMetadataChangedListener(@NonNull android.bluetooth.BluetoothDevice, @NonNull android.bluetooth.BluetoothAdapter.OnMetadataChangedListener);
1246    field public static final String ACTION_BLE_STATE_CHANGED = "android.bluetooth.adapter.action.BLE_STATE_CHANGED";
1247    field public static final String ACTION_REQUEST_BLE_SCAN_ALWAYS_AVAILABLE = "android.bluetooth.adapter.action.REQUEST_BLE_SCAN_ALWAYS_AVAILABLE";
1248  }
1249
1250  public static interface BluetoothAdapter.OnMetadataChangedListener {
1251    method public void onMetadataChanged(@NonNull android.bluetooth.BluetoothDevice, int, @Nullable byte[]);
1252  }
1253
1254  public final class BluetoothDevice implements android.os.Parcelable {
1255    method @RequiresPermission(android.Manifest.permission.BLUETOOTH_ADMIN) public boolean cancelBondProcess();
1256    method @Nullable @RequiresPermission(android.Manifest.permission.BLUETOOTH_PRIVILEGED) public byte[] getMetadata(int);
1257    method @RequiresPermission(android.Manifest.permission.BLUETOOTH) public boolean isConnected();
1258    method @RequiresPermission(android.Manifest.permission.BLUETOOTH) public boolean isEncrypted();
1259    method @RequiresPermission(android.Manifest.permission.BLUETOOTH_PRIVILEGED) public boolean isInSilenceMode();
1260    method @RequiresPermission(android.Manifest.permission.BLUETOOTH_ADMIN) public boolean removeBond();
1261    method @RequiresPermission(android.Manifest.permission.BLUETOOTH_PRIVILEGED) public boolean setMetadata(int, @NonNull byte[]);
1262    method @RequiresPermission(android.Manifest.permission.BLUETOOTH_PRIVILEGED) public boolean setPhonebookAccessPermission(int);
1263    method @RequiresPermission(android.Manifest.permission.BLUETOOTH_PRIVILEGED) public boolean setSilenceMode(boolean);
1264    field public static final int ACCESS_ALLOWED = 1; // 0x1
1265    field public static final int ACCESS_REJECTED = 2; // 0x2
1266    field public static final int ACCESS_UNKNOWN = 0; // 0x0
1267    field public static final String ACTION_SILENCE_MODE_CHANGED = "android.bluetooth.device.action.SILENCE_MODE_CHANGED";
1268    field public static final int METADATA_COMPANION_APP = 4; // 0x4
1269    field public static final int METADATA_ENHANCED_SETTINGS_UI_URI = 16; // 0x10
1270    field public static final int METADATA_HARDWARE_VERSION = 3; // 0x3
1271    field public static final int METADATA_IS_UNTETHERED_HEADSET = 6; // 0x6
1272    field public static final int METADATA_MAIN_ICON = 5; // 0x5
1273    field public static final int METADATA_MANUFACTURER_NAME = 0; // 0x0
1274    field public static final int METADATA_MAX_LENGTH = 2048; // 0x800
1275    field public static final int METADATA_MODEL_NAME = 1; // 0x1
1276    field public static final int METADATA_SOFTWARE_VERSION = 2; // 0x2
1277    field public static final int METADATA_UNTETHERED_CASE_BATTERY = 12; // 0xc
1278    field public static final int METADATA_UNTETHERED_CASE_CHARGING = 15; // 0xf
1279    field public static final int METADATA_UNTETHERED_CASE_ICON = 9; // 0x9
1280    field public static final int METADATA_UNTETHERED_LEFT_BATTERY = 10; // 0xa
1281    field public static final int METADATA_UNTETHERED_LEFT_CHARGING = 13; // 0xd
1282    field public static final int METADATA_UNTETHERED_LEFT_ICON = 7; // 0x7
1283    field public static final int METADATA_UNTETHERED_RIGHT_BATTERY = 11; // 0xb
1284    field public static final int METADATA_UNTETHERED_RIGHT_CHARGING = 14; // 0xe
1285    field public static final int METADATA_UNTETHERED_RIGHT_ICON = 8; // 0x8
1286  }
1287
1288  public final class BluetoothHeadset implements android.bluetooth.BluetoothProfile {
1289    method @RequiresPermission(android.Manifest.permission.BLUETOOTH_ADMIN) public boolean connect(android.bluetooth.BluetoothDevice);
1290    method @RequiresPermission(android.Manifest.permission.BLUETOOTH_ADMIN) public boolean disconnect(android.bluetooth.BluetoothDevice);
1291    method @RequiresPermission(android.Manifest.permission.BLUETOOTH_ADMIN) public boolean setPriority(android.bluetooth.BluetoothDevice, int);
1292  }
1293
1294  public interface BluetoothProfile {
1295    field public static final int PRIORITY_OFF = 0; // 0x0
1296    field public static final int PRIORITY_ON = 100; // 0x64
1297  }
1298
1299}
1300
1301package android.bluetooth.le {
1302
1303  public final class BluetoothLeScanner {
1304    method @RequiresPermission(allOf={android.Manifest.permission.BLUETOOTH_ADMIN, android.Manifest.permission.UPDATE_DEVICE_STATS}) public void startScanFromSource(android.os.WorkSource, android.bluetooth.le.ScanCallback);
1305    method @RequiresPermission(allOf={android.Manifest.permission.BLUETOOTH_ADMIN, android.Manifest.permission.UPDATE_DEVICE_STATS}) public void startScanFromSource(java.util.List<android.bluetooth.le.ScanFilter>, android.bluetooth.le.ScanSettings, android.os.WorkSource, android.bluetooth.le.ScanCallback);
1306    method public void startTruncatedScan(java.util.List<android.bluetooth.le.TruncatedFilter>, android.bluetooth.le.ScanSettings, android.bluetooth.le.ScanCallback);
1307  }
1308
1309  public final class ResultStorageDescriptor implements android.os.Parcelable {
1310    ctor public ResultStorageDescriptor(int, int, int);
1311    method public int describeContents();
1312    method public int getLength();
1313    method public int getOffset();
1314    method public int getType();
1315    method public void writeToParcel(android.os.Parcel, int);
1316    field @NonNull public static final android.os.Parcelable.Creator<android.bluetooth.le.ResultStorageDescriptor> CREATOR;
1317  }
1318
1319  public final class ScanSettings implements android.os.Parcelable {
1320    field public static final int SCAN_RESULT_TYPE_ABBREVIATED = 1; // 0x1
1321    field public static final int SCAN_RESULT_TYPE_FULL = 0; // 0x0
1322  }
1323
1324  public static final class ScanSettings.Builder {
1325    method public android.bluetooth.le.ScanSettings.Builder setScanResultType(int);
1326  }
1327
1328  public final class TruncatedFilter {
1329    ctor public TruncatedFilter(android.bluetooth.le.ScanFilter, java.util.List<android.bluetooth.le.ResultStorageDescriptor>);
1330    method public android.bluetooth.le.ScanFilter getFilter();
1331    method public java.util.List<android.bluetooth.le.ResultStorageDescriptor> getStorageDescriptors();
1332  }
1333
1334}
1335
1336package android.content {
1337
1338  public class ContentProviderClient implements java.lang.AutoCloseable {
1339    method @RequiresPermission(android.Manifest.permission.REMOVE_TASKS) public void setDetectNotResponding(long);
1340  }
1341
1342  public abstract class ContentResolver {
1343    method @Nullable @RequiresPermission("android.permission.CACHE_CONTENT") public android.os.Bundle getCache(@NonNull android.net.Uri);
1344    method @RequiresPermission("android.permission.CACHE_CONTENT") public void putCache(@NonNull android.net.Uri, @Nullable android.os.Bundle);
1345  }
1346
1347  public abstract class Context {
1348    method @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS) public boolean bindServiceAsUser(@RequiresPermission android.content.Intent, android.content.ServiceConnection, int, android.os.UserHandle);
1349    method public abstract android.content.Context createCredentialProtectedStorageContext();
1350    method public android.content.Context createPackageContextAsUser(String, int, android.os.UserHandle) throws android.content.pm.PackageManager.NameNotFoundException;
1351    method @Nullable public abstract java.io.File getPreloadsFileCache();
1352    method public abstract boolean isCredentialProtectedStorage();
1353    method public abstract void sendBroadcast(android.content.Intent, @Nullable String, @Nullable android.os.Bundle);
1354    method @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS) public abstract void sendBroadcastAsUser(@RequiresPermission android.content.Intent, android.os.UserHandle, @Nullable String, @Nullable android.os.Bundle);
1355    method public abstract void sendOrderedBroadcast(@NonNull android.content.Intent, @Nullable String, @Nullable android.os.Bundle, @Nullable android.content.BroadcastReceiver, @Nullable android.os.Handler, int, @Nullable String, @Nullable android.os.Bundle);
1356    method @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS_FULL) public void startActivityAsUser(@RequiresPermission @NonNull android.content.Intent, @NonNull android.os.UserHandle);
1357    field public static final String APP_PREDICTION_SERVICE = "app_prediction";
1358    field public static final String BACKUP_SERVICE = "backup";
1359    field public static final String BUGREPORT_SERVICE = "bugreport";
1360    field public static final String CONTENT_SUGGESTIONS_SERVICE = "content_suggestions";
1361    field public static final String CONTEXTHUB_SERVICE = "contexthub";
1362    field public static final String EUICC_CARD_SERVICE = "euicc_card";
1363    field public static final String HDMI_CONTROL_SERVICE = "hdmi_control";
1364    field public static final String NETD_SERVICE = "netd";
1365    field public static final String NETWORK_SCORE_SERVICE = "network_score";
1366    field public static final String OEM_LOCK_SERVICE = "oem_lock";
1367    field public static final String PERMISSION_SERVICE = "permission";
1368    field public static final String PERSISTENT_DATA_BLOCK_SERVICE = "persistent_data_block";
1369    field public static final String ROLLBACK_SERVICE = "rollback";
1370    field public static final String SECURE_ELEMENT_SERVICE = "secure_element";
1371    field public static final String STATS_MANAGER = "stats";
1372    field public static final String STATUS_BAR_SERVICE = "statusbar";
1373    field public static final String SYSTEM_UPDATE_SERVICE = "system_update";
1374    field public static final String VR_SERVICE = "vrmanager";
1375    field @Deprecated public static final String WIFI_RTT_SERVICE = "rttmanager";
1376    field public static final String WIFI_SCANNING_SERVICE = "wifiscanner";
1377  }
1378
1379  public class ContextWrapper extends android.content.Context {
1380    method public android.content.Context createCredentialProtectedStorageContext();
1381    method public java.io.File getPreloadsFileCache();
1382    method public boolean isCredentialProtectedStorage();
1383    method public void sendBroadcast(android.content.Intent, String, android.os.Bundle);
1384    method public void sendBroadcastAsUser(android.content.Intent, android.os.UserHandle, String, android.os.Bundle);
1385    method public void sendOrderedBroadcast(android.content.Intent, String, android.os.Bundle, android.content.BroadcastReceiver, android.os.Handler, int, String, android.os.Bundle);
1386  }
1387
1388  public class Intent implements java.lang.Cloneable android.os.Parcelable {
1389    field public static final String ACTION_BATTERY_LEVEL_CHANGED = "android.intent.action.BATTERY_LEVEL_CHANGED";
1390    field public static final String ACTION_CALL_EMERGENCY = "android.intent.action.CALL_EMERGENCY";
1391    field public static final String ACTION_CALL_PRIVILEGED = "android.intent.action.CALL_PRIVILEGED";
1392    field public static final String ACTION_DEVICE_CUSTOMIZATION_READY = "android.intent.action.DEVICE_CUSTOMIZATION_READY";
1393    field public static final String ACTION_FACTORY_RESET = "android.intent.action.FACTORY_RESET";
1394    field public static final String ACTION_GLOBAL_BUTTON = "android.intent.action.GLOBAL_BUTTON";
1395    field public static final String ACTION_INCIDENT_REPORT_READY = "android.intent.action.INCIDENT_REPORT_READY";
1396    field public static final String ACTION_INSTALL_INSTANT_APP_PACKAGE = "android.intent.action.INSTALL_INSTANT_APP_PACKAGE";
1397    field public static final String ACTION_INSTANT_APP_RESOLVER_SETTINGS = "android.intent.action.INSTANT_APP_RESOLVER_SETTINGS";
1398    field public static final String ACTION_INTENT_FILTER_NEEDS_VERIFICATION = "android.intent.action.INTENT_FILTER_NEEDS_VERIFICATION";
1399    field @RequiresPermission(android.Manifest.permission.GRANT_RUNTIME_PERMISSIONS) public static final String ACTION_MANAGE_APP_PERMISSION = "android.intent.action.MANAGE_APP_PERMISSION";
1400    field public static final String ACTION_MANAGE_APP_PERMISSIONS = "android.intent.action.MANAGE_APP_PERMISSIONS";
1401    field @RequiresPermission(android.Manifest.permission.MANAGE_ROLE_HOLDERS) public static final String ACTION_MANAGE_DEFAULT_APP = "android.intent.action.MANAGE_DEFAULT_APP";
1402    field public static final String ACTION_MANAGE_PERMISSIONS = "android.intent.action.MANAGE_PERMISSIONS";
1403    field public static final String ACTION_MANAGE_PERMISSION_APPS = "android.intent.action.MANAGE_PERMISSION_APPS";
1404    field @RequiresPermission(android.Manifest.permission.MANAGE_ROLE_HOLDERS) public static final String ACTION_MANAGE_SPECIAL_APP_ACCESSES = "android.intent.action.MANAGE_SPECIAL_APP_ACCESSES";
1405    field public static final String ACTION_MASTER_CLEAR_NOTIFICATION = "android.intent.action.MASTER_CLEAR_NOTIFICATION";
1406    field public static final String ACTION_PENDING_INCIDENT_REPORTS_CHANGED = "android.intent.action.PENDING_INCIDENT_REPORTS_CHANGED";
1407    field public static final String ACTION_PRE_BOOT_COMPLETED = "android.intent.action.PRE_BOOT_COMPLETED";
1408    field public static final String ACTION_QUERY_PACKAGE_RESTART = "android.intent.action.QUERY_PACKAGE_RESTART";
1409    field public static final String ACTION_RESOLVE_INSTANT_APP_PACKAGE = "android.intent.action.RESOLVE_INSTANT_APP_PACKAGE";
1410    field @RequiresPermission(android.Manifest.permission.REVIEW_ACCESSIBILITY_SERVICES) public static final String ACTION_REVIEW_ACCESSIBILITY_SERVICES = "android.intent.action.REVIEW_ACCESSIBILITY_SERVICES";
1411    field @RequiresPermission(android.Manifest.permission.GRANT_RUNTIME_PERMISSIONS) public static final String ACTION_REVIEW_ONGOING_PERMISSION_USAGE = "android.intent.action.REVIEW_ONGOING_PERMISSION_USAGE";
1412    field public static final String ACTION_REVIEW_PERMISSIONS = "android.intent.action.REVIEW_PERMISSIONS";
1413    field @RequiresPermission(android.Manifest.permission.GRANT_RUNTIME_PERMISSIONS) public static final String ACTION_REVIEW_PERMISSION_USAGE = "android.intent.action.REVIEW_PERMISSION_USAGE";
1414    field public static final String ACTION_ROLLBACK_COMMITTED = "android.intent.action.ROLLBACK_COMMITTED";
1415    field public static final String ACTION_SHOW_SUSPENDED_APP_DETAILS = "android.intent.action.SHOW_SUSPENDED_APP_DETAILS";
1416    field @Deprecated public static final String ACTION_SIM_STATE_CHANGED = "android.intent.action.SIM_STATE_CHANGED";
1417    field public static final String ACTION_SPLIT_CONFIGURATION_CHANGED = "android.intent.action.SPLIT_CONFIGURATION_CHANGED";
1418    field public static final String ACTION_UPGRADE_SETUP = "android.intent.action.UPGRADE_SETUP";
1419    field public static final String ACTION_USER_ADDED = "android.intent.action.USER_ADDED";
1420    field public static final String ACTION_USER_REMOVED = "android.intent.action.USER_REMOVED";
1421    field public static final String ACTION_VOICE_ASSIST = "android.intent.action.VOICE_ASSIST";
1422    field public static final String CATEGORY_LEANBACK_SETTINGS = "android.intent.category.LEANBACK_SETTINGS";
1423    field public static final String EXTRA_CALLING_PACKAGE = "android.intent.extra.CALLING_PACKAGE";
1424    field public static final String EXTRA_FORCE_FACTORY_RESET = "android.intent.extra.FORCE_FACTORY_RESET";
1425    field public static final String EXTRA_INSTANT_APP_ACTION = "android.intent.extra.INSTANT_APP_ACTION";
1426    field public static final String EXTRA_INSTANT_APP_BUNDLES = "android.intent.extra.INSTANT_APP_BUNDLES";
1427    field public static final String EXTRA_INSTANT_APP_EXTRAS = "android.intent.extra.INSTANT_APP_EXTRAS";
1428    field public static final String EXTRA_INSTANT_APP_FAILURE = "android.intent.extra.INSTANT_APP_FAILURE";
1429    field public static final String EXTRA_INSTANT_APP_HOSTNAME = "android.intent.extra.INSTANT_APP_HOSTNAME";
1430    field public static final String EXTRA_INSTANT_APP_SUCCESS = "android.intent.extra.INSTANT_APP_SUCCESS";
1431    field public static final String EXTRA_INSTANT_APP_TOKEN = "android.intent.extra.INSTANT_APP_TOKEN";
1432    field public static final String EXTRA_LONG_VERSION_CODE = "android.intent.extra.LONG_VERSION_CODE";
1433    field public static final String EXTRA_ORIGINATING_UID = "android.intent.extra.ORIGINATING_UID";
1434    field public static final String EXTRA_PACKAGES = "android.intent.extra.PACKAGES";
1435    field public static final String EXTRA_PERMISSION_GROUP_NAME = "android.intent.extra.PERMISSION_GROUP_NAME";
1436    field public static final String EXTRA_PERMISSION_NAME = "android.intent.extra.PERMISSION_NAME";
1437    field public static final String EXTRA_REASON = "android.intent.extra.REASON";
1438    field public static final String EXTRA_REMOTE_CALLBACK = "android.intent.extra.REMOTE_CALLBACK";
1439    field public static final String EXTRA_RESULT_NEEDED = "android.intent.extra.RESULT_NEEDED";
1440    field public static final String EXTRA_ROLE_NAME = "android.intent.extra.ROLE_NAME";
1441    field public static final String EXTRA_UNKNOWN_INSTANT_APP = "android.intent.extra.UNKNOWN_INSTANT_APP";
1442    field public static final String EXTRA_VERIFICATION_BUNDLE = "android.intent.extra.VERIFICATION_BUNDLE";
1443    field public static final String METADATA_SETUP_VERSION = "android.SETUP_VERSION";
1444  }
1445
1446  public class IntentFilter implements android.os.Parcelable {
1447    method public final int getOrder();
1448    method public final void setOrder(int);
1449  }
1450
1451}
1452
1453package android.content.om {
1454
1455  public final class OverlayInfo implements android.os.Parcelable {
1456    method public int describeContents();
1457    method @Nullable public String getCategory();
1458    method @NonNull public String getPackageName();
1459    method @Nullable public String getTargetOverlayableName();
1460    method @NonNull public String getTargetPackageName();
1461    method public int getUserId();
1462    method public boolean isEnabled();
1463    method public void writeToParcel(android.os.Parcel, int);
1464    field @NonNull public static final android.os.Parcelable.Creator<android.content.om.OverlayInfo> CREATOR;
1465  }
1466
1467  public class OverlayManager {
1468    method @Nullable public android.content.om.OverlayInfo getOverlayInfo(@NonNull String, @NonNull android.os.UserHandle);
1469    method @NonNull @RequiresPermission(anyOf={"android.permission.INTERACT_ACROSS_USERS", "android.permission.INTERACT_ACROSS_USERS_FULL"}) public java.util.List<android.content.om.OverlayInfo> getOverlayInfosForTarget(@NonNull String, @NonNull android.os.UserHandle);
1470    method @RequiresPermission(anyOf={"android.permission.INTERACT_ACROSS_USERS", "android.permission.INTERACT_ACROSS_USERS_FULL"}) public void setEnabled(@NonNull String, boolean, @NonNull android.os.UserHandle);
1471    method @RequiresPermission(anyOf={"android.permission.INTERACT_ACROSS_USERS", "android.permission.INTERACT_ACROSS_USERS_FULL"}) public void setEnabledExclusiveInCategory(@NonNull String, @NonNull android.os.UserHandle);
1472  }
1473
1474}
1475
1476package android.content.pm {
1477
1478  public class ApplicationInfo extends android.content.pm.PackageItemInfo implements android.os.Parcelable {
1479    method public boolean isEncryptionAware();
1480    method public boolean isInstantApp();
1481    field public String credentialProtectedDataDir;
1482    field public int targetSandboxVersion;
1483  }
1484
1485  public class CrossProfileApps {
1486    method @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_PROFILES) public void startActivity(@NonNull android.content.ComponentName, @NonNull android.os.UserHandle);
1487  }
1488
1489  public final class InstantAppInfo implements android.os.Parcelable {
1490    ctor public InstantAppInfo(android.content.pm.ApplicationInfo, String[], String[]);
1491    ctor public InstantAppInfo(String, CharSequence, String[], String[]);
1492    method public int describeContents();
1493    method @Nullable public android.content.pm.ApplicationInfo getApplicationInfo();
1494    method @Nullable public String[] getGrantedPermissions();
1495    method @NonNull public String getPackageName();
1496    method @Nullable public String[] getRequestedPermissions();
1497    method @NonNull public android.graphics.drawable.Drawable loadIcon(@NonNull android.content.pm.PackageManager);
1498    method @NonNull public CharSequence loadLabel(@NonNull android.content.pm.PackageManager);
1499    method public void writeToParcel(android.os.Parcel, int);
1500    field @NonNull public static final android.os.Parcelable.Creator<android.content.pm.InstantAppInfo> CREATOR;
1501  }
1502
1503  public final class InstantAppIntentFilter implements android.os.Parcelable {
1504    ctor public InstantAppIntentFilter(@Nullable String, @NonNull java.util.List<android.content.IntentFilter>);
1505    method public int describeContents();
1506    method public java.util.List<android.content.IntentFilter> getFilters();
1507    method public String getSplitName();
1508    method public void writeToParcel(android.os.Parcel, int);
1509    field @NonNull public static final android.os.Parcelable.Creator<android.content.pm.InstantAppIntentFilter> CREATOR;
1510  }
1511
1512  public final class InstantAppResolveInfo implements android.os.Parcelable {
1513    ctor public InstantAppResolveInfo(@NonNull android.content.pm.InstantAppResolveInfo.InstantAppDigest, @Nullable String, @Nullable java.util.List<android.content.pm.InstantAppIntentFilter>, int);
1514    ctor public InstantAppResolveInfo(@NonNull android.content.pm.InstantAppResolveInfo.InstantAppDigest, @Nullable String, @Nullable java.util.List<android.content.pm.InstantAppIntentFilter>, long, @Nullable android.os.Bundle);
1515    ctor public InstantAppResolveInfo(@NonNull String, @Nullable String, @Nullable java.util.List<android.content.pm.InstantAppIntentFilter>);
1516    ctor public InstantAppResolveInfo(@Nullable android.os.Bundle);
1517    method public int describeContents();
1518    method public byte[] getDigestBytes();
1519    method public int getDigestPrefix();
1520    method @Nullable public android.os.Bundle getExtras();
1521    method public java.util.List<android.content.pm.InstantAppIntentFilter> getIntentFilters();
1522    method public long getLongVersionCode();
1523    method public String getPackageName();
1524    method @Deprecated public int getVersionCode();
1525    method public boolean shouldLetInstallerDecide();
1526    method public void writeToParcel(android.os.Parcel, int);
1527    field @NonNull public static final android.os.Parcelable.Creator<android.content.pm.InstantAppResolveInfo> CREATOR;
1528  }
1529
1530  public static final class InstantAppResolveInfo.InstantAppDigest implements android.os.Parcelable {
1531    ctor public InstantAppResolveInfo.InstantAppDigest(@NonNull String);
1532    method public int describeContents();
1533    method public byte[][] getDigestBytes();
1534    method public int[] getDigestPrefix();
1535    method public void writeToParcel(android.os.Parcel, int);
1536    field @NonNull public static final android.os.Parcelable.Creator<android.content.pm.InstantAppResolveInfo.InstantAppDigest> CREATOR;
1537    field public static final android.content.pm.InstantAppResolveInfo.InstantAppDigest UNDEFINED;
1538  }
1539
1540  public final class IntentFilterVerificationInfo implements android.os.Parcelable {
1541    method public int describeContents();
1542    method public java.util.Set<java.lang.String> getDomains();
1543    method public String getPackageName();
1544    method public int getStatus();
1545    method public void writeToParcel(android.os.Parcel, int);
1546    field @NonNull public static final android.os.Parcelable.Creator<android.content.pm.IntentFilterVerificationInfo> CREATOR;
1547  }
1548
1549  public class LauncherApps {
1550    method @Nullable public android.content.pm.LauncherApps.AppUsageLimit getAppUsageLimit(@NonNull String, @NonNull android.os.UserHandle);
1551  }
1552
1553  public static final class LauncherApps.AppUsageLimit implements android.os.Parcelable {
1554    method public int describeContents();
1555    method public long getTotalUsageLimit();
1556    method public long getUsageRemaining();
1557    method public void writeToParcel(android.os.Parcel, int);
1558    field @NonNull public static final android.os.Parcelable.Creator<android.content.pm.LauncherApps.AppUsageLimit> CREATOR;
1559  }
1560
1561  public class PackageInstaller {
1562    method @RequiresPermission(android.Manifest.permission.INSTALL_PACKAGES) public void setPermissionsResult(int, boolean);
1563  }
1564
1565  public static class PackageInstaller.Session implements java.io.Closeable {
1566    method @RequiresPermission(android.Manifest.permission.INSTALL_PACKAGES) public void commitTransferred(@NonNull android.content.IntentSender);
1567  }
1568
1569  public static class PackageInstaller.SessionInfo implements android.os.Parcelable {
1570    method public boolean getAllocateAggressive();
1571    method @Deprecated public boolean getAllowDowngrade();
1572    method public boolean getDontKillApp();
1573    method public boolean getEnableRollback();
1574    method @Nullable public String[] getGrantedRuntimePermissions();
1575    method public boolean getInstallAsFullApp(boolean);
1576    method public boolean getInstallAsInstantApp(boolean);
1577    method public boolean getInstallAsVirtualPreload();
1578    method public boolean getRequestDowngrade();
1579    method @NonNull public java.util.Set<java.lang.String> getWhitelistedRestrictedPermissions();
1580  }
1581
1582  public static class PackageInstaller.SessionParams implements android.os.Parcelable {
1583    method @RequiresPermission(android.Manifest.permission.ALLOCATE_AGGRESSIVE) public void setAllocateAggressive(boolean);
1584    method @Deprecated public void setAllowDowngrade(boolean);
1585    method public void setDontKillApp(boolean);
1586    method public void setEnableRollback(boolean);
1587    method @RequiresPermission(android.Manifest.permission.INSTALL_GRANT_RUNTIME_PERMISSIONS) public void setGrantedRuntimePermissions(String[]);
1588    method @RequiresPermission(android.Manifest.permission.INSTALL_PACKAGES) public void setInstallAsApex();
1589    method public void setInstallAsInstantApp(boolean);
1590    method public void setInstallAsVirtualPreload();
1591    method public void setRequestDowngrade(boolean);
1592    method @RequiresPermission(android.Manifest.permission.INSTALL_PACKAGES) public void setStaged();
1593  }
1594
1595  public class PackageItemInfo {
1596    method public static void forceSafeLabels();
1597    method @Deprecated @NonNull public CharSequence loadSafeLabel(@NonNull android.content.pm.PackageManager);
1598    method @NonNull public CharSequence loadSafeLabel(@NonNull android.content.pm.PackageManager, @FloatRange(from=0) float, int);
1599  }
1600
1601  public abstract class PackageManager {
1602    method @RequiresPermission("android.permission.OBSERVE_GRANT_REVOKE_PERMISSIONS") public abstract void addOnPermissionsChangeListener(@NonNull android.content.pm.PackageManager.OnPermissionsChangedListener);
1603    method public abstract boolean arePermissionsIndividuallyControlled();
1604    method @NonNull public abstract java.util.List<android.content.IntentFilter> getAllIntentFilters(@NonNull String);
1605    method @NonNull @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS) public android.content.pm.ApplicationInfo getApplicationInfoAsUser(@NonNull String, int, @NonNull android.os.UserHandle) throws android.content.pm.PackageManager.NameNotFoundException;
1606    method @NonNull public android.content.pm.dex.ArtManager getArtManager();
1607    method @NonNull @RequiresPermission(android.Manifest.permission.ACCESS_SHARED_LIBRARIES) public java.util.List<android.content.pm.SharedLibraryInfo> getDeclaredSharedLibraries(@NonNull String, int);
1608    method @Nullable @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS_FULL) public abstract String getDefaultBrowserPackageNameAsUser(int);
1609    method @Nullable @RequiresPermission(android.Manifest.permission.SET_HARMFUL_APP_WARNINGS) public CharSequence getHarmfulAppWarning(@NonNull String);
1610    method @Nullable public String getIncidentReportApproverPackageName();
1611    method @NonNull @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS_FULL) public abstract java.util.List<android.content.pm.PackageInfo> getInstalledPackagesAsUser(int, int);
1612    method @Nullable @RequiresPermission(android.Manifest.permission.ACCESS_INSTANT_APPS) public abstract android.graphics.drawable.Drawable getInstantAppIcon(String);
1613    method @Nullable public abstract android.content.ComponentName getInstantAppInstallerComponent();
1614    method @Nullable public abstract android.content.ComponentName getInstantAppResolverSettingsComponent();
1615    method @NonNull @RequiresPermission(android.Manifest.permission.ACCESS_INSTANT_APPS) public abstract java.util.List<android.content.pm.InstantAppInfo> getInstantApps();
1616    method @NonNull public abstract java.util.List<android.content.pm.IntentFilterVerificationInfo> getIntentFilterVerifications(@NonNull String);
1617    method @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS_FULL) public abstract int getIntentVerificationStatusAsUser(@NonNull String, int);
1618    method @android.content.pm.PackageManager.PermissionFlags @RequiresPermission(anyOf={android.Manifest.permission.GRANT_RUNTIME_PERMISSIONS, android.Manifest.permission.REVOKE_RUNTIME_PERMISSIONS, android.Manifest.permission.GET_RUNTIME_PERMISSIONS}) public abstract int getPermissionFlags(@NonNull String, @NonNull String, @NonNull android.os.UserHandle);
1619    method @NonNull @RequiresPermission(android.Manifest.permission.SUSPEND_APPS) public String[] getUnsuspendablePackages(@NonNull String[]);
1620    method @RequiresPermission(android.Manifest.permission.GRANT_RUNTIME_PERMISSIONS) public abstract void grantRuntimePermission(@NonNull String, @NonNull String, @NonNull android.os.UserHandle);
1621    method @Deprecated public abstract int installExistingPackage(@NonNull String) throws android.content.pm.PackageManager.NameNotFoundException;
1622    method @Deprecated public abstract int installExistingPackage(@NonNull String, int) throws android.content.pm.PackageManager.NameNotFoundException;
1623    method @NonNull @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS) public java.util.List<android.content.pm.ResolveInfo> queryBroadcastReceiversAsUser(@NonNull android.content.Intent, int, android.os.UserHandle);
1624    method @NonNull @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS) public java.util.List<android.content.pm.ResolveInfo> queryIntentActivitiesAsUser(@NonNull android.content.Intent, int, @NonNull android.os.UserHandle);
1625    method @NonNull @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS) public java.util.List<android.content.pm.ResolveInfo> queryIntentContentProvidersAsUser(@NonNull android.content.Intent, int, @NonNull android.os.UserHandle);
1626    method @NonNull @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS) public java.util.List<android.content.pm.ResolveInfo> queryIntentServicesAsUser(@NonNull android.content.Intent, int, @NonNull android.os.UserHandle);
1627    method public abstract void registerDexModule(@NonNull String, @Nullable android.content.pm.PackageManager.DexModuleRegisterCallback);
1628    method @RequiresPermission("android.permission.OBSERVE_GRANT_REVOKE_PERMISSIONS") public abstract void removeOnPermissionsChangeListener(@NonNull android.content.pm.PackageManager.OnPermissionsChangedListener);
1629    method public void replacePreferredActivity(@NonNull android.content.IntentFilter, int, @NonNull java.util.List<android.content.ComponentName>, @NonNull android.content.ComponentName);
1630    method @RequiresPermission(android.Manifest.permission.REVOKE_RUNTIME_PERMISSIONS) public abstract void revokeRuntimePermission(@NonNull String, @NonNull String, @NonNull android.os.UserHandle);
1631    method public void sendDeviceCustomizationReadyBroadcast();
1632    method @RequiresPermission(allOf={android.Manifest.permission.SET_PREFERRED_APPLICATIONS, android.Manifest.permission.INTERACT_ACROSS_USERS_FULL}) public abstract boolean setDefaultBrowserPackageNameAsUser(@Nullable String, int);
1633    method @NonNull @RequiresPermission(android.Manifest.permission.SUSPEND_APPS) public String[] setDistractingPackageRestrictions(@NonNull String[], int);
1634    method @RequiresPermission(android.Manifest.permission.SET_HARMFUL_APP_WARNINGS) public void setHarmfulAppWarning(@NonNull String, @Nullable CharSequence);
1635    method @Deprecated @Nullable @RequiresPermission(android.Manifest.permission.SUSPEND_APPS) public String[] setPackagesSuspended(@Nullable String[], boolean, @Nullable android.os.PersistableBundle, @Nullable android.os.PersistableBundle, @Nullable String);
1636    method @Nullable @RequiresPermission(android.Manifest.permission.SUSPEND_APPS) public String[] setPackagesSuspended(@Nullable String[], boolean, @Nullable android.os.PersistableBundle, @Nullable android.os.PersistableBundle, @Nullable android.content.pm.SuspendDialogInfo);
1637    method @RequiresPermission(value=android.Manifest.permission.CHANGE_COMPONENT_ENABLED_STATE, conditional=true) public void setSyntheticAppDetailsActivityEnabled(@NonNull String, boolean);
1638    method @RequiresPermission(android.Manifest.permission.INSTALL_PACKAGES) public abstract void setUpdateAvailable(@NonNull String, boolean);
1639    method @RequiresPermission(android.Manifest.permission.SET_PREFERRED_APPLICATIONS) public abstract boolean updateIntentVerificationStatusAsUser(@NonNull String, int, int);
1640    method @RequiresPermission(anyOf={android.Manifest.permission.GRANT_RUNTIME_PERMISSIONS, android.Manifest.permission.REVOKE_RUNTIME_PERMISSIONS}) public abstract void updatePermissionFlags(@NonNull String, @NonNull String, @android.content.pm.PackageManager.PermissionFlags int, @android.content.pm.PackageManager.PermissionFlags int, @NonNull android.os.UserHandle);
1641    method @RequiresPermission(android.Manifest.permission.INTENT_FILTER_VERIFICATION_AGENT) public abstract void verifyIntentFilter(int, int, @NonNull java.util.List<java.lang.String>);
1642    field public static final String ACTION_REQUEST_PERMISSIONS = "android.content.pm.action.REQUEST_PERMISSIONS";
1643    field public static final String EXTRA_REQUEST_PERMISSIONS_NAMES = "android.content.pm.extra.REQUEST_PERMISSIONS_NAMES";
1644    field public static final String EXTRA_REQUEST_PERMISSIONS_RESULTS = "android.content.pm.extra.REQUEST_PERMISSIONS_RESULTS";
1645    field public static final String FEATURE_BROADCAST_RADIO = "android.hardware.broadcastradio";
1646    field public static final String FEATURE_TELEPHONY_CARRIERLOCK = "android.hardware.telephony.carrierlock";
1647    field public static final int FLAG_PERMISSION_APPLY_RESTRICTION = 16384; // 0x4000
1648    field public static final int FLAG_PERMISSION_GRANTED_BY_DEFAULT = 32; // 0x20
1649    field public static final int FLAG_PERMISSION_GRANTED_BY_ROLE = 32768; // 0x8000
1650    field public static final int FLAG_PERMISSION_POLICY_FIXED = 4; // 0x4
1651    field public static final int FLAG_PERMISSION_RESTRICTION_INSTALLER_EXEMPT = 2048; // 0x800
1652    field public static final int FLAG_PERMISSION_RESTRICTION_SYSTEM_EXEMPT = 4096; // 0x1000
1653    field public static final int FLAG_PERMISSION_RESTRICTION_UPGRADE_EXEMPT = 8192; // 0x2000
1654    field public static final int FLAG_PERMISSION_REVIEW_REQUIRED = 64; // 0x40
1655    field public static final int FLAG_PERMISSION_REVOKE_ON_UPGRADE = 8; // 0x8
1656    field public static final int FLAG_PERMISSION_SYSTEM_FIXED = 16; // 0x10
1657    field public static final int FLAG_PERMISSION_USER_FIXED = 2; // 0x2
1658    field public static final int FLAG_PERMISSION_USER_SENSITIVE_WHEN_DENIED = 512; // 0x200
1659    field public static final int FLAG_PERMISSION_USER_SENSITIVE_WHEN_GRANTED = 256; // 0x100
1660    field public static final int FLAG_PERMISSION_USER_SET = 1; // 0x1
1661    field public static final int INSTALL_FAILED_ALREADY_EXISTS = -1; // 0xffffffff
1662    field public static final int INSTALL_FAILED_CONFLICTING_PROVIDER = -13; // 0xfffffff3
1663    field public static final int INSTALL_FAILED_CONTAINER_ERROR = -18; // 0xffffffee
1664    field public static final int INSTALL_FAILED_CPU_ABI_INCOMPATIBLE = -16; // 0xfffffff0
1665    field public static final int INSTALL_FAILED_DEXOPT = -11; // 0xfffffff5
1666    field public static final int INSTALL_FAILED_DUPLICATE_PACKAGE = -5; // 0xfffffffb
1667    field public static final int INSTALL_FAILED_INSUFFICIENT_STORAGE = -4; // 0xfffffffc
1668    field public static final int INSTALL_FAILED_INTERNAL_ERROR = -110; // 0xffffff92
1669    field public static final int INSTALL_FAILED_INVALID_APK = -2; // 0xfffffffe
1670    field public static final int INSTALL_FAILED_INVALID_INSTALL_LOCATION = -19; // 0xffffffed
1671    field public static final int INSTALL_FAILED_INVALID_URI = -3; // 0xfffffffd
1672    field public static final int INSTALL_FAILED_MEDIA_UNAVAILABLE = -20; // 0xffffffec
1673    field public static final int INSTALL_FAILED_MISSING_FEATURE = -17; // 0xffffffef
1674    field public static final int INSTALL_FAILED_MISSING_SHARED_LIBRARY = -9; // 0xfffffff7
1675    field public static final int INSTALL_FAILED_NEWER_SDK = -14; // 0xfffffff2
1676    field public static final int INSTALL_FAILED_NO_SHARED_USER = -6; // 0xfffffffa
1677    field public static final int INSTALL_FAILED_OLDER_SDK = -12; // 0xfffffff4
1678    field public static final int INSTALL_FAILED_PACKAGE_CHANGED = -23; // 0xffffffe9
1679    field public static final int INSTALL_FAILED_PERMISSION_MODEL_DOWNGRADE = -26; // 0xffffffe6
1680    field public static final int INSTALL_FAILED_REPLACE_COULDNT_DELETE = -10; // 0xfffffff6
1681    field public static final int INSTALL_FAILED_SANDBOX_VERSION_DOWNGRADE = -27; // 0xffffffe5
1682    field public static final int INSTALL_FAILED_SHARED_USER_INCOMPATIBLE = -8; // 0xfffffff8
1683    field public static final int INSTALL_FAILED_TEST_ONLY = -15; // 0xfffffff1
1684    field public static final int INSTALL_FAILED_UPDATE_INCOMPATIBLE = -7; // 0xfffffff9
1685    field public static final int INSTALL_FAILED_VERIFICATION_FAILURE = -22; // 0xffffffea
1686    field public static final int INSTALL_FAILED_VERIFICATION_TIMEOUT = -21; // 0xffffffeb
1687    field public static final int INSTALL_PARSE_FAILED_BAD_MANIFEST = -101; // 0xffffff9b
1688    field public static final int INSTALL_PARSE_FAILED_BAD_PACKAGE_NAME = -106; // 0xffffff96
1689    field public static final int INSTALL_PARSE_FAILED_BAD_SHARED_USER_ID = -107; // 0xffffff95
1690    field public static final int INSTALL_PARSE_FAILED_CERTIFICATE_ENCODING = -105; // 0xffffff97
1691    field public static final int INSTALL_PARSE_FAILED_INCONSISTENT_CERTIFICATES = -104; // 0xffffff98
1692    field public static final int INSTALL_PARSE_FAILED_MANIFEST_EMPTY = -109; // 0xffffff93
1693    field public static final int INSTALL_PARSE_FAILED_MANIFEST_MALFORMED = -108; // 0xffffff94
1694    field public static final int INSTALL_PARSE_FAILED_NOT_APK = -100; // 0xffffff9c
1695    field public static final int INSTALL_PARSE_FAILED_NO_CERTIFICATES = -103; // 0xffffff99
1696    field public static final int INSTALL_PARSE_FAILED_UNEXPECTED_EXCEPTION = -102; // 0xffffff9a
1697    field public static final int INSTALL_SUCCEEDED = 1; // 0x1
1698    field public static final int INTENT_FILTER_DOMAIN_VERIFICATION_STATUS_ALWAYS = 2; // 0x2
1699    field public static final int INTENT_FILTER_DOMAIN_VERIFICATION_STATUS_ALWAYS_ASK = 4; // 0x4
1700    field public static final int INTENT_FILTER_DOMAIN_VERIFICATION_STATUS_ASK = 1; // 0x1
1701    field public static final int INTENT_FILTER_DOMAIN_VERIFICATION_STATUS_NEVER = 3; // 0x3
1702    field public static final int INTENT_FILTER_DOMAIN_VERIFICATION_STATUS_UNDEFINED = 0; // 0x0
1703    field public static final int INTENT_FILTER_VERIFICATION_FAILURE = -1; // 0xffffffff
1704    field public static final int INTENT_FILTER_VERIFICATION_SUCCESS = 1; // 0x1
1705    field @Deprecated public static final int MASK_PERMISSION_FLAGS = 255; // 0xff
1706    field public static final int MATCH_ANY_USER = 4194304; // 0x400000
1707    field public static final int MATCH_FACTORY_ONLY = 2097152; // 0x200000
1708    field public static final int MATCH_INSTANT = 8388608; // 0x800000
1709    field public static final int RESTRICTION_HIDE_FROM_SUGGESTIONS = 1; // 0x1
1710    field public static final int RESTRICTION_HIDE_NOTIFICATIONS = 2; // 0x2
1711    field public static final int RESTRICTION_NONE = 0; // 0x0
1712  }
1713
1714  public abstract static class PackageManager.DexModuleRegisterCallback {
1715    ctor public PackageManager.DexModuleRegisterCallback();
1716    method public abstract void onDexModuleRegistered(String, boolean, String);
1717  }
1718
1719  public static interface PackageManager.OnPermissionsChangedListener {
1720    method public void onPermissionsChanged(int);
1721  }
1722
1723  @IntDef(prefix={"FLAG_PERMISSION_"}, value={android.content.pm.PackageManager.FLAG_PERMISSION_USER_SET, android.content.pm.PackageManager.FLAG_PERMISSION_USER_FIXED, android.content.pm.PackageManager.FLAG_PERMISSION_POLICY_FIXED, android.content.pm.PackageManager.FLAG_PERMISSION_REVOKE_ON_UPGRADE, android.content.pm.PackageManager.FLAG_PERMISSION_SYSTEM_FIXED, android.content.pm.PackageManager.FLAG_PERMISSION_GRANTED_BY_DEFAULT, android.content.pm.PackageManager.FLAG_PERMISSION_USER_SENSITIVE_WHEN_GRANTED, android.content.pm.PackageManager.FLAG_PERMISSION_USER_SENSITIVE_WHEN_DENIED, android.content.pm.PackageManager.FLAG_PERMISSION_RESTRICTION_UPGRADE_EXEMPT, android.content.pm.PackageManager.FLAG_PERMISSION_RESTRICTION_SYSTEM_EXEMPT, android.content.pm.PackageManager.FLAG_PERMISSION_RESTRICTION_INSTALLER_EXEMPT, android.content.pm.PackageManager.FLAG_PERMISSION_APPLY_RESTRICTION, android.content.pm.PackageManager.FLAG_PERMISSION_GRANTED_BY_ROLE}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface PackageManager.PermissionFlags {
1724  }
1725
1726  public class PermissionGroupInfo extends android.content.pm.PackageItemInfo implements android.os.Parcelable {
1727    field @StringRes public final int backgroundRequestDetailResourceId;
1728    field @StringRes public final int backgroundRequestResourceId;
1729    field @StringRes public final int requestDetailResourceId;
1730    field @StringRes public int requestRes;
1731  }
1732
1733  public class PermissionInfo extends android.content.pm.PackageItemInfo implements android.os.Parcelable {
1734    field public static final int FLAG_REMOVED = 2; // 0x2
1735    field public static final int PROTECTION_FLAG_APP_PREDICTOR = 2097152; // 0x200000
1736    field public static final int PROTECTION_FLAG_CONFIGURATOR = 524288; // 0x80000
1737    field public static final int PROTECTION_FLAG_DOCUMENTER = 262144; // 0x40000
1738    field public static final int PROTECTION_FLAG_INCIDENT_REPORT_APPROVER = 1048576; // 0x100000
1739    field public static final int PROTECTION_FLAG_OEM = 16384; // 0x4000
1740    field public static final int PROTECTION_FLAG_SYSTEM_TEXT_CLASSIFIER = 65536; // 0x10000
1741    field public static final int PROTECTION_FLAG_WELLBEING = 131072; // 0x20000
1742    field @Nullable public final String backgroundPermission;
1743    field @StringRes public int requestRes;
1744  }
1745
1746  public class ResolveInfo implements android.os.Parcelable {
1747    field public boolean handleAllWebDataURI;
1748  }
1749
1750  public final class ShortcutInfo implements android.os.Parcelable {
1751    method @Nullable public android.app.Person[] getPersons();
1752  }
1753
1754  public class ShortcutManager {
1755    method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_APP_PREDICTIONS) public java.util.List<android.content.pm.ShortcutManager.ShareShortcutInfo> getShareTargets(@NonNull android.content.IntentFilter);
1756    method public boolean hasShareTargets(@NonNull String);
1757  }
1758
1759  public static final class ShortcutManager.ShareShortcutInfo implements android.os.Parcelable {
1760    method public int describeContents();
1761    method @NonNull public android.content.pm.ShortcutInfo getShortcutInfo();
1762    method @NonNull public android.content.ComponentName getTargetComponent();
1763    method public void writeToParcel(@NonNull android.os.Parcel, int);
1764    field @NonNull public static final android.os.Parcelable.Creator<android.content.pm.ShortcutManager.ShareShortcutInfo> CREATOR;
1765  }
1766
1767  public final class SuspendDialogInfo implements android.os.Parcelable {
1768    method public int describeContents();
1769    method public void writeToParcel(android.os.Parcel, int);
1770    field @NonNull public static final android.os.Parcelable.Creator<android.content.pm.SuspendDialogInfo> CREATOR;
1771  }
1772
1773  public static final class SuspendDialogInfo.Builder {
1774    ctor public SuspendDialogInfo.Builder();
1775    method @NonNull public android.content.pm.SuspendDialogInfo build();
1776    method @NonNull public android.content.pm.SuspendDialogInfo.Builder setIcon(@DrawableRes int);
1777    method @NonNull public android.content.pm.SuspendDialogInfo.Builder setMessage(@NonNull String);
1778    method @NonNull public android.content.pm.SuspendDialogInfo.Builder setMessage(@StringRes int);
1779    method @NonNull public android.content.pm.SuspendDialogInfo.Builder setNeutralButtonText(@StringRes int);
1780    method @NonNull public android.content.pm.SuspendDialogInfo.Builder setTitle(@StringRes int);
1781  }
1782
1783}
1784
1785package android.content.pm.dex {
1786
1787  public class ArtManager {
1788    method @RequiresPermission(allOf={android.Manifest.permission.READ_RUNTIME_PROFILES, android.Manifest.permission.PACKAGE_USAGE_STATS}) public boolean isRuntimeProfilingEnabled(int);
1789    method @RequiresPermission(allOf={android.Manifest.permission.READ_RUNTIME_PROFILES, android.Manifest.permission.PACKAGE_USAGE_STATS}) public void snapshotRuntimeProfile(int, @Nullable String, @Nullable String, @NonNull java.util.concurrent.Executor, @NonNull android.content.pm.dex.ArtManager.SnapshotRuntimeProfileCallback);
1790    field public static final int PROFILE_APPS = 0; // 0x0
1791    field public static final int PROFILE_BOOT_IMAGE = 1; // 0x1
1792    field public static final int SNAPSHOT_FAILED_CODE_PATH_NOT_FOUND = 1; // 0x1
1793    field public static final int SNAPSHOT_FAILED_INTERNAL_ERROR = 2; // 0x2
1794    field public static final int SNAPSHOT_FAILED_PACKAGE_NOT_FOUND = 0; // 0x0
1795  }
1796
1797  public abstract static class ArtManager.SnapshotRuntimeProfileCallback {
1798    ctor public ArtManager.SnapshotRuntimeProfileCallback();
1799    method public abstract void onError(int);
1800    method public abstract void onSuccess(android.os.ParcelFileDescriptor);
1801  }
1802
1803}
1804
1805package android.content.pm.permission {
1806
1807  @Deprecated public final class RuntimePermissionPresentationInfo implements android.os.Parcelable {
1808    ctor @Deprecated public RuntimePermissionPresentationInfo(CharSequence, boolean, boolean);
1809    method @Deprecated public int describeContents();
1810    method @Deprecated @NonNull public CharSequence getLabel();
1811    method @Deprecated public boolean isGranted();
1812    method @Deprecated public boolean isStandard();
1813    method @Deprecated public void writeToParcel(android.os.Parcel, int);
1814    field @Deprecated @NonNull public static final android.os.Parcelable.Creator<android.content.pm.permission.RuntimePermissionPresentationInfo> CREATOR;
1815  }
1816
1817}
1818
1819package android.content.rollback {
1820
1821  public final class PackageRollbackInfo implements android.os.Parcelable {
1822    method public int describeContents();
1823    method @NonNull public String getPackageName();
1824    method @NonNull public android.content.pm.VersionedPackage getVersionRolledBackFrom();
1825    method @NonNull public android.content.pm.VersionedPackage getVersionRolledBackTo();
1826    method public void writeToParcel(android.os.Parcel, int);
1827    field @NonNull public static final android.os.Parcelable.Creator<android.content.rollback.PackageRollbackInfo> CREATOR;
1828  }
1829
1830  public final class RollbackInfo implements android.os.Parcelable {
1831    method public int describeContents();
1832    method @NonNull public java.util.List<android.content.pm.VersionedPackage> getCausePackages();
1833    method public int getCommittedSessionId();
1834    method @NonNull public java.util.List<android.content.rollback.PackageRollbackInfo> getPackages();
1835    method public int getRollbackId();
1836    method public boolean isStaged();
1837    method public void writeToParcel(android.os.Parcel, int);
1838    field @NonNull public static final android.os.Parcelable.Creator<android.content.rollback.RollbackInfo> CREATOR;
1839  }
1840
1841  public final class RollbackManager {
1842    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_ROLLBACKS, "android.permission.TEST_MANAGE_ROLLBACKS"}) public void commitRollback(int, @NonNull java.util.List<android.content.pm.VersionedPackage>, @NonNull android.content.IntentSender);
1843    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_ROLLBACKS, "android.permission.TEST_MANAGE_ROLLBACKS"}) @NonNull public java.util.List<android.content.rollback.RollbackInfo> getAvailableRollbacks();
1844    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_ROLLBACKS, "android.permission.TEST_MANAGE_ROLLBACKS"}) @NonNull public java.util.List<android.content.rollback.RollbackInfo> getRecentlyCommittedRollbacks();
1845    field public static final String EXTRA_STATUS = "android.content.rollback.extra.STATUS";
1846    field public static final String EXTRA_STATUS_MESSAGE = "android.content.rollback.extra.STATUS_MESSAGE";
1847    field public static final int STATUS_FAILURE = 1; // 0x1
1848    field public static final int STATUS_FAILURE_INSTALL = 3; // 0x3
1849    field public static final int STATUS_FAILURE_ROLLBACK_UNAVAILABLE = 2; // 0x2
1850    field public static final int STATUS_SUCCESS = 0; // 0x0
1851  }
1852
1853}
1854
1855package android.hardware {
1856
1857  public final class Sensor {
1858    method public java.util.UUID getUuid();
1859    method public boolean isDataInjectionSupported();
1860    field public static final String STRING_TYPE_DYNAMIC_SENSOR_META = "android.sensor.dynamic_sensor_meta";
1861    field public static final String STRING_TYPE_WRIST_TILT_GESTURE = "android.sensor.wrist_tilt_gesture";
1862    field public static final int TYPE_DYNAMIC_SENSOR_META = 32; // 0x20
1863    field public static final int TYPE_WRIST_TILT_GESTURE = 26; // 0x1a
1864  }
1865
1866  public abstract class SensorManager {
1867    method public boolean initDataInjection(boolean);
1868    method public boolean injectSensorData(android.hardware.Sensor, float[], int, long);
1869  }
1870
1871}
1872
1873package android.hardware.camera2 {
1874
1875  public abstract class CameraDevice implements java.lang.AutoCloseable {
1876    method public abstract void createCustomCaptureSession(android.hardware.camera2.params.InputConfiguration, @NonNull java.util.List<android.hardware.camera2.params.OutputConfiguration>, int, @NonNull android.hardware.camera2.CameraCaptureSession.StateCallback, @Nullable android.os.Handler) throws android.hardware.camera2.CameraAccessException;
1877    field public static final int SESSION_OPERATION_MODE_CONSTRAINED_HIGH_SPEED = 1; // 0x1
1878    field public static final int SESSION_OPERATION_MODE_NORMAL = 0; // 0x0
1879    field public static final int SESSION_OPERATION_MODE_VENDOR_START = 32768; // 0x8000
1880  }
1881
1882}
1883
1884package android.hardware.camera2.params {
1885
1886  public final class OutputConfiguration implements android.os.Parcelable {
1887    ctor public OutputConfiguration(@NonNull android.view.Surface, int);
1888    ctor public OutputConfiguration(int, @NonNull android.view.Surface, int);
1889    method public int getRotation();
1890    field public static final int ROTATION_0 = 0; // 0x0
1891    field public static final int ROTATION_180 = 2; // 0x2
1892    field public static final int ROTATION_270 = 3; // 0x3
1893    field public static final int ROTATION_90 = 1; // 0x1
1894  }
1895
1896}
1897
1898package android.hardware.display {
1899
1900  public final class AmbientBrightnessDayStats implements android.os.Parcelable {
1901    method public int describeContents();
1902    method public float[] getBucketBoundaries();
1903    method public java.time.LocalDate getLocalDate();
1904    method public float[] getStats();
1905    method public void writeToParcel(android.os.Parcel, int);
1906    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.display.AmbientBrightnessDayStats> CREATOR;
1907  }
1908
1909  public final class BrightnessChangeEvent implements android.os.Parcelable {
1910    method public int describeContents();
1911    method public void writeToParcel(android.os.Parcel, int);
1912    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.display.BrightnessChangeEvent> CREATOR;
1913    field public final float batteryLevel;
1914    field public final float brightness;
1915    field public final long colorSampleDuration;
1916    field public final int colorTemperature;
1917    field @Nullable public final long[] colorValueBuckets;
1918    field public final boolean isDefaultBrightnessConfig;
1919    field public final boolean isUserSetBrightness;
1920    field public final float lastBrightness;
1921    field public final long[] luxTimestamps;
1922    field public final float[] luxValues;
1923    field public final boolean nightMode;
1924    field public final String packageName;
1925    field public final float powerBrightnessFactor;
1926    field public final long timeStamp;
1927  }
1928
1929  public final class BrightnessConfiguration implements android.os.Parcelable {
1930    method public int describeContents();
1931    method @Nullable public android.hardware.display.BrightnessCorrection getCorrectionByCategory(int);
1932    method @Nullable public android.hardware.display.BrightnessCorrection getCorrectionByPackageName(@NonNull String);
1933    method public android.util.Pair<float[],float[]> getCurve();
1934    method public void writeToParcel(android.os.Parcel, int);
1935    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.display.BrightnessConfiguration> CREATOR;
1936  }
1937
1938  public static class BrightnessConfiguration.Builder {
1939    ctor public BrightnessConfiguration.Builder(float[], float[]);
1940    method @NonNull public android.hardware.display.BrightnessConfiguration.Builder addCorrectionByCategory(int, @NonNull android.hardware.display.BrightnessCorrection);
1941    method @NonNull public android.hardware.display.BrightnessConfiguration.Builder addCorrectionByPackageName(@NonNull String, @NonNull android.hardware.display.BrightnessCorrection);
1942    method @NonNull public android.hardware.display.BrightnessConfiguration build();
1943    method public int getMaxCorrectionsByCategory();
1944    method public int getMaxCorrectionsByPackageName();
1945    method @NonNull public android.hardware.display.BrightnessConfiguration.Builder setDescription(@Nullable String);
1946  }
1947
1948  public final class BrightnessCorrection implements android.os.Parcelable {
1949    method @FloatRange(from=0.0) public float apply(@FloatRange(from=0.0) float);
1950    method @NonNull public static android.hardware.display.BrightnessCorrection createScaleAndTranslateLog(float, float);
1951    method public int describeContents();
1952    method public void writeToParcel(android.os.Parcel, int);
1953    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.display.BrightnessCorrection> CREATOR;
1954  }
1955
1956  public final class ColorDisplayManager {
1957    method @RequiresPermission(android.Manifest.permission.CONTROL_DISPLAY_COLOR_TRANSFORMS) public int getNightDisplayAutoMode();
1958    method @RequiresPermission(android.Manifest.permission.CONTROL_DISPLAY_COLOR_TRANSFORMS) public int getTransformCapabilities();
1959    method @RequiresPermission(android.Manifest.permission.CONTROL_DISPLAY_COLOR_TRANSFORMS) public boolean setAppSaturationLevel(@NonNull String, @IntRange(from=0, to=100) int);
1960    method @RequiresPermission(android.Manifest.permission.CONTROL_DISPLAY_COLOR_TRANSFORMS) public boolean setNightDisplayAutoMode(int);
1961    method @RequiresPermission(android.Manifest.permission.CONTROL_DISPLAY_COLOR_TRANSFORMS) public boolean setNightDisplayCustomEndTime(@NonNull java.time.LocalTime);
1962    method @RequiresPermission(android.Manifest.permission.CONTROL_DISPLAY_COLOR_TRANSFORMS) public boolean setNightDisplayCustomStartTime(@NonNull java.time.LocalTime);
1963    method @RequiresPermission(android.Manifest.permission.CONTROL_DISPLAY_COLOR_TRANSFORMS) public boolean setSaturationLevel(@IntRange(from=0, to=100) int);
1964    field public static final int AUTO_MODE_CUSTOM_TIME = 1; // 0x1
1965    field public static final int AUTO_MODE_DISABLED = 0; // 0x0
1966    field public static final int AUTO_MODE_TWILIGHT = 2; // 0x2
1967    field public static final int CAPABILITY_HARDWARE_ACCELERATION_GLOBAL = 2; // 0x2
1968    field public static final int CAPABILITY_HARDWARE_ACCELERATION_PER_APP = 4; // 0x4
1969    field public static final int CAPABILITY_NONE = 0; // 0x0
1970    field public static final int CAPABILITY_PROTECTED_CONTENT = 1; // 0x1
1971  }
1972
1973  public final class DisplayManager {
1974    method @RequiresPermission(android.Manifest.permission.ACCESS_AMBIENT_LIGHT_STATS) public java.util.List<android.hardware.display.AmbientBrightnessDayStats> getAmbientBrightnessStats();
1975    method @RequiresPermission(android.Manifest.permission.CONFIGURE_DISPLAY_BRIGHTNESS) public android.hardware.display.BrightnessConfiguration getBrightnessConfiguration();
1976    method @RequiresPermission(android.Manifest.permission.BRIGHTNESS_SLIDER_USAGE) public java.util.List<android.hardware.display.BrightnessChangeEvent> getBrightnessEvents();
1977    method @Nullable @RequiresPermission(android.Manifest.permission.CONFIGURE_DISPLAY_BRIGHTNESS) public android.hardware.display.BrightnessConfiguration getDefaultBrightnessConfiguration();
1978    method public android.util.Pair<float[],float[]> getMinimumBrightnessCurve();
1979    method public android.graphics.Point getStableDisplaySize();
1980    method @RequiresPermission(android.Manifest.permission.CONFIGURE_DISPLAY_BRIGHTNESS) public void setBrightnessConfiguration(android.hardware.display.BrightnessConfiguration);
1981    method @Deprecated @RequiresPermission(android.Manifest.permission.CONTROL_DISPLAY_SATURATION) public void setSaturationLevel(float);
1982  }
1983
1984}
1985
1986package android.hardware.hdmi {
1987
1988  public abstract class HdmiClient {
1989    method public android.hardware.hdmi.HdmiDeviceInfo getActiveSource();
1990    method public void sendKeyEvent(int, boolean);
1991    method public void sendVendorCommand(int, byte[], boolean);
1992    method public void setVendorCommandListener(@NonNull android.hardware.hdmi.HdmiControlManager.VendorCommandListener);
1993  }
1994
1995  public final class HdmiControlManager {
1996    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public void addHotplugEventListener(android.hardware.hdmi.HdmiControlManager.HotplugEventListener);
1997    method @Nullable public android.hardware.hdmi.HdmiClient getClient(int);
1998    method @NonNull public java.util.List<android.hardware.hdmi.HdmiDeviceInfo> getConnectedDevices();
1999    method public int getPhysicalAddress();
2000    method @Nullable public android.hardware.hdmi.HdmiPlaybackClient getPlaybackClient();
2001    method @Nullable public android.hardware.hdmi.HdmiSwitchClient getSwitchClient();
2002    method @Nullable public android.hardware.hdmi.HdmiTvClient getTvClient();
2003    method public boolean isDeviceConnected(@NonNull android.hardware.hdmi.HdmiDeviceInfo);
2004    method public void powerOffDevice(@NonNull android.hardware.hdmi.HdmiDeviceInfo);
2005    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public void removeHotplugEventListener(android.hardware.hdmi.HdmiControlManager.HotplugEventListener);
2006    method public void setActiveSource(@NonNull android.hardware.hdmi.HdmiDeviceInfo);
2007    method @RequiresPermission(android.Manifest.permission.HDMI_CEC) public void setStandbyMode(boolean);
2008    field public static final String ACTION_OSD_MESSAGE = "android.hardware.hdmi.action.OSD_MESSAGE";
2009    field public static final int AVR_VOLUME_MUTED = 101; // 0x65
2010    field public static final int CLEAR_TIMER_STATUS_CEC_DISABLE = 162; // 0xa2
2011    field public static final int CLEAR_TIMER_STATUS_CHECK_RECORDER_CONNECTION = 160; // 0xa0
2012    field public static final int CLEAR_TIMER_STATUS_FAIL_TO_CLEAR_SELECTED_SOURCE = 161; // 0xa1
2013    field public static final int CLEAR_TIMER_STATUS_TIMER_CLEARED = 128; // 0x80
2014    field public static final int CLEAR_TIMER_STATUS_TIMER_NOT_CLEARED_NO_INFO_AVAILABLE = 2; // 0x2
2015    field public static final int CLEAR_TIMER_STATUS_TIMER_NOT_CLEARED_NO_MATCHING = 1; // 0x1
2016    field public static final int CLEAR_TIMER_STATUS_TIMER_NOT_CLEARED_RECORDING = 0; // 0x0
2017    field public static final int CONTROL_STATE_CHANGED_REASON_SETTING = 1; // 0x1
2018    field public static final int CONTROL_STATE_CHANGED_REASON_STANDBY = 3; // 0x3
2019    field public static final int CONTROL_STATE_CHANGED_REASON_START = 0; // 0x0
2020    field public static final int CONTROL_STATE_CHANGED_REASON_WAKEUP = 2; // 0x2
2021    field public static final int DEVICE_EVENT_ADD_DEVICE = 1; // 0x1
2022    field public static final int DEVICE_EVENT_REMOVE_DEVICE = 2; // 0x2
2023    field public static final int DEVICE_EVENT_UPDATE_DEVICE = 3; // 0x3
2024    field public static final String EXTRA_MESSAGE_EXTRA_PARAM1 = "android.hardware.hdmi.extra.MESSAGE_EXTRA_PARAM1";
2025    field public static final String EXTRA_MESSAGE_ID = "android.hardware.hdmi.extra.MESSAGE_ID";
2026    field public static final int ONE_TOUCH_RECORD_ALREADY_RECORDING = 18; // 0x12
2027    field public static final int ONE_TOUCH_RECORD_CEC_DISABLED = 51; // 0x33
2028    field public static final int ONE_TOUCH_RECORD_CHECK_RECORDER_CONNECTION = 49; // 0x31
2029    field public static final int ONE_TOUCH_RECORD_DISALLOW_TO_COPY = 13; // 0xd
2030    field public static final int ONE_TOUCH_RECORD_DISALLOW_TO_FUTHER_COPIES = 14; // 0xe
2031    field public static final int ONE_TOUCH_RECORD_FAIL_TO_RECORD_DISPLAYED_SCREEN = 50; // 0x32
2032    field public static final int ONE_TOUCH_RECORD_INVALID_EXTERNAL_PHYSICAL_ADDRESS = 10; // 0xa
2033    field public static final int ONE_TOUCH_RECORD_INVALID_EXTERNAL_PLUG_NUMBER = 9; // 0x9
2034    field public static final int ONE_TOUCH_RECORD_MEDIA_PROBLEM = 21; // 0x15
2035    field public static final int ONE_TOUCH_RECORD_MEDIA_PROTECTED = 19; // 0x13
2036    field public static final int ONE_TOUCH_RECORD_NOT_ENOUGH_SPACE = 22; // 0x16
2037    field public static final int ONE_TOUCH_RECORD_NO_MEDIA = 16; // 0x10
2038    field public static final int ONE_TOUCH_RECORD_NO_OR_INSUFFICIENT_CA_ENTITLEMENTS = 12; // 0xc
2039    field public static final int ONE_TOUCH_RECORD_NO_SOURCE_SIGNAL = 20; // 0x14
2040    field public static final int ONE_TOUCH_RECORD_OTHER_REASON = 31; // 0x1f
2041    field public static final int ONE_TOUCH_RECORD_PARENT_LOCK_ON = 23; // 0x17
2042    field public static final int ONE_TOUCH_RECORD_PLAYING = 17; // 0x11
2043    field public static final int ONE_TOUCH_RECORD_PREVIOUS_RECORDING_IN_PROGRESS = 48; // 0x30
2044    field public static final int ONE_TOUCH_RECORD_RECORDING_ALREADY_TERMINATED = 27; // 0x1b
2045    field public static final int ONE_TOUCH_RECORD_RECORDING_ANALOGUE_SERVICE = 3; // 0x3
2046    field public static final int ONE_TOUCH_RECORD_RECORDING_CURRENTLY_SELECTED_SOURCE = 1; // 0x1
2047    field public static final int ONE_TOUCH_RECORD_RECORDING_DIGITAL_SERVICE = 2; // 0x2
2048    field public static final int ONE_TOUCH_RECORD_RECORDING_EXTERNAL_INPUT = 4; // 0x4
2049    field public static final int ONE_TOUCH_RECORD_RECORDING_TERMINATED_NORMALLY = 26; // 0x1a
2050    field public static final int ONE_TOUCH_RECORD_UNABLE_ANALOGUE_SERVICE = 6; // 0x6
2051    field public static final int ONE_TOUCH_RECORD_UNABLE_DIGITAL_SERVICE = 5; // 0x5
2052    field public static final int ONE_TOUCH_RECORD_UNABLE_SELECTED_SERVICE = 7; // 0x7
2053    field public static final int ONE_TOUCH_RECORD_UNSUPPORTED_CA = 11; // 0xb
2054    field public static final int OSD_MESSAGE_ARC_CONNECTED_INVALID_PORT = 1; // 0x1
2055    field public static final int OSD_MESSAGE_AVR_VOLUME_CHANGED = 2; // 0x2
2056    field public static final int POWER_STATUS_ON = 0; // 0x0
2057    field public static final int POWER_STATUS_STANDBY = 1; // 0x1
2058    field public static final int POWER_STATUS_TRANSIENT_TO_ON = 2; // 0x2
2059    field public static final int POWER_STATUS_TRANSIENT_TO_STANDBY = 3; // 0x3
2060    field public static final int POWER_STATUS_UNKNOWN = -1; // 0xffffffff
2061    field @Deprecated public static final int RESULT_ALREADY_IN_PROGRESS = 4; // 0x4
2062    field public static final int RESULT_COMMUNICATION_FAILED = 7; // 0x7
2063    field public static final int RESULT_EXCEPTION = 5; // 0x5
2064    field public static final int RESULT_INCORRECT_MODE = 6; // 0x6
2065    field public static final int RESULT_SOURCE_NOT_AVAILABLE = 2; // 0x2
2066    field public static final int RESULT_SUCCESS = 0; // 0x0
2067    field public static final int RESULT_TARGET_NOT_AVAILABLE = 3; // 0x3
2068    field public static final int RESULT_TIMEOUT = 1; // 0x1
2069    field public static final int TIMER_RECORDING_RESULT_EXTRA_CEC_DISABLED = 3; // 0x3
2070    field public static final int TIMER_RECORDING_RESULT_EXTRA_CHECK_RECORDER_CONNECTION = 1; // 0x1
2071    field public static final int TIMER_RECORDING_RESULT_EXTRA_FAIL_TO_RECORD_SELECTED_SOURCE = 2; // 0x2
2072    field public static final int TIMER_RECORDING_RESULT_EXTRA_NO_ERROR = 0; // 0x0
2073    field public static final int TIMER_RECORDING_TYPE_ANALOGUE = 2; // 0x2
2074    field public static final int TIMER_RECORDING_TYPE_DIGITAL = 1; // 0x1
2075    field public static final int TIMER_RECORDING_TYPE_EXTERNAL = 3; // 0x3
2076    field public static final int TIMER_STATUS_MEDIA_INFO_NOT_PRESENT = 2; // 0x2
2077    field public static final int TIMER_STATUS_MEDIA_INFO_PRESENT_NOT_PROTECTED = 0; // 0x0
2078    field public static final int TIMER_STATUS_MEDIA_INFO_PRESENT_PROTECTED = 1; // 0x1
2079    field public static final int TIMER_STATUS_NOT_PROGRAMMED_CA_NOT_SUPPORTED = 6; // 0x6
2080    field public static final int TIMER_STATUS_NOT_PROGRAMMED_CLOCK_FAILURE = 10; // 0xa
2081    field public static final int TIMER_STATUS_NOT_PROGRAMMED_DATE_OUT_OF_RANGE = 2; // 0x2
2082    field public static final int TIMER_STATUS_NOT_PROGRAMMED_DUPLICATED = 14; // 0xe
2083    field public static final int TIMER_STATUS_NOT_PROGRAMMED_INVALID_EXTERNAL_PHYSICAL_NUMBER = 5; // 0x5
2084    field public static final int TIMER_STATUS_NOT_PROGRAMMED_INVALID_EXTERNAL_PLUG_NUMBER = 4; // 0x4
2085    field public static final int TIMER_STATUS_NOT_PROGRAMMED_INVALID_SEQUENCE = 3; // 0x3
2086    field public static final int TIMER_STATUS_NOT_PROGRAMMED_NO_CA_ENTITLEMENTS = 7; // 0x7
2087    field public static final int TIMER_STATUS_NOT_PROGRAMMED_NO_FREE_TIME = 1; // 0x1
2088    field public static final int TIMER_STATUS_NOT_PROGRAMMED_PARENTAL_LOCK_ON = 9; // 0x9
2089    field public static final int TIMER_STATUS_NOT_PROGRAMMED_UNSUPPORTED_RESOLUTION = 8; // 0x8
2090    field public static final int TIMER_STATUS_PROGRAMMED_INFO_ENOUGH_SPACE = 8; // 0x8
2091    field public static final int TIMER_STATUS_PROGRAMMED_INFO_MIGHT_NOT_ENOUGH_SPACE = 11; // 0xb
2092    field public static final int TIMER_STATUS_PROGRAMMED_INFO_NOT_ENOUGH_SPACE = 9; // 0x9
2093    field public static final int TIMER_STATUS_PROGRAMMED_INFO_NO_MEDIA_INFO = 10; // 0xa
2094  }
2095
2096  @IntDef({android.hardware.hdmi.HdmiControlManager.RESULT_SUCCESS, android.hardware.hdmi.HdmiControlManager.RESULT_TIMEOUT, android.hardware.hdmi.HdmiControlManager.RESULT_SOURCE_NOT_AVAILABLE, android.hardware.hdmi.HdmiControlManager.RESULT_TARGET_NOT_AVAILABLE, android.hardware.hdmi.HdmiControlManager.RESULT_ALREADY_IN_PROGRESS, android.hardware.hdmi.HdmiControlManager.RESULT_EXCEPTION, android.hardware.hdmi.HdmiControlManager.RESULT_INCORRECT_MODE, android.hardware.hdmi.HdmiControlManager.RESULT_COMMUNICATION_FAILED}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) public static @interface HdmiControlManager.ControlCallbackResult {
2097  }
2098
2099  public static interface HdmiControlManager.HotplugEventListener {
2100    method public void onReceived(android.hardware.hdmi.HdmiHotplugEvent);
2101  }
2102
2103  public static interface HdmiControlManager.VendorCommandListener {
2104    method public void onControlStateChanged(boolean, int);
2105    method public void onReceived(int, int, byte[], boolean);
2106  }
2107
2108  public class HdmiDeviceInfo implements android.os.Parcelable {
2109    ctor public HdmiDeviceInfo();
2110    method public int describeContents();
2111    method public int getAdopterId();
2112    method public int getDeviceId();
2113    method public int getDevicePowerStatus();
2114    method public int getDeviceType();
2115    method public String getDisplayName();
2116    method public int getId();
2117    method public int getLogicalAddress();
2118    method public int getPhysicalAddress();
2119    method public int getPortId();
2120    method public int getVendorId();
2121    method public static int idForCecDevice(int);
2122    method public static int idForHardware(int);
2123    method public static int idForMhlDevice(int);
2124    method public boolean isCecDevice();
2125    method public boolean isInactivated();
2126    method public boolean isMhlDevice();
2127    method public boolean isSourceType();
2128    method public void writeToParcel(android.os.Parcel, int);
2129    field public static final int ADDR_INTERNAL = 0; // 0x0
2130    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.hdmi.HdmiDeviceInfo> CREATOR;
2131    field public static final int DEVICE_AUDIO_SYSTEM = 5; // 0x5
2132    field public static final int DEVICE_INACTIVE = -1; // 0xffffffff
2133    field public static final int DEVICE_PLAYBACK = 4; // 0x4
2134    field public static final int DEVICE_RECORDER = 1; // 0x1
2135    field public static final int DEVICE_RESERVED = 2; // 0x2
2136    field public static final int DEVICE_TUNER = 3; // 0x3
2137    field public static final int DEVICE_TV = 0; // 0x0
2138    field public static final int ID_INVALID = 65535; // 0xffff
2139    field public static final android.hardware.hdmi.HdmiDeviceInfo INACTIVE_DEVICE;
2140    field public static final int PATH_INTERNAL = 0; // 0x0
2141    field public static final int PATH_INVALID = 65535; // 0xffff
2142    field public static final int PORT_INVALID = -1; // 0xffffffff
2143  }
2144
2145  public final class HdmiHotplugEvent implements android.os.Parcelable {
2146    method public int describeContents();
2147    method public int getPort();
2148    method public boolean isConnected();
2149    method public void writeToParcel(android.os.Parcel, int);
2150    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.hdmi.HdmiHotplugEvent> CREATOR;
2151  }
2152
2153  public final class HdmiPlaybackClient extends android.hardware.hdmi.HdmiClient {
2154    method public int getDeviceType();
2155    method public void oneTouchPlay(android.hardware.hdmi.HdmiPlaybackClient.OneTouchPlayCallback);
2156    method public void queryDisplayStatus(android.hardware.hdmi.HdmiPlaybackClient.DisplayStatusCallback);
2157    method public void sendStandby();
2158  }
2159
2160  public static interface HdmiPlaybackClient.DisplayStatusCallback {
2161    method public void onComplete(int);
2162  }
2163
2164  public static interface HdmiPlaybackClient.OneTouchPlayCallback {
2165    method public void onComplete(int);
2166  }
2167
2168  public final class HdmiPortInfo implements android.os.Parcelable {
2169    ctor public HdmiPortInfo(int, int, int, boolean, boolean, boolean);
2170    method public int describeContents();
2171    method public int getAddress();
2172    method public int getId();
2173    method public int getType();
2174    method public boolean isArcSupported();
2175    method public boolean isCecSupported();
2176    method public boolean isMhlSupported();
2177    method public void writeToParcel(android.os.Parcel, int);
2178    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.hdmi.HdmiPortInfo> CREATOR;
2179    field public static final int PORT_INPUT = 0; // 0x0
2180    field public static final int PORT_OUTPUT = 1; // 0x1
2181  }
2182
2183  public abstract class HdmiRecordListener {
2184    ctor public HdmiRecordListener();
2185    method public void onClearTimerRecordingResult(int, int);
2186    method public void onOneTouchRecordResult(int, int);
2187    method public abstract android.hardware.hdmi.HdmiRecordSources.RecordSource onOneTouchRecordSourceRequested(int);
2188    method public void onTimerRecordingResult(int, android.hardware.hdmi.HdmiRecordListener.TimerStatusData);
2189  }
2190
2191  public static class HdmiRecordListener.TimerStatusData {
2192    method public int getDurationHour();
2193    method public int getDurationMinute();
2194    method public int getExtraError();
2195    method public int getMediaInfo();
2196    method public int getNotProgammedError();
2197    method public int getProgrammedInfo();
2198    method public boolean isOverlapped();
2199    method public boolean isProgrammed();
2200  }
2201
2202  public final class HdmiRecordSources {
2203    method public static boolean checkRecordSource(byte[]);
2204    method public static android.hardware.hdmi.HdmiRecordSources.OwnSource ofOwnSource();
2205  }
2206
2207  public static final class HdmiRecordSources.AnalogueServiceSource extends android.hardware.hdmi.HdmiRecordSources.RecordSource {
2208  }
2209
2210  public static final class HdmiRecordSources.DigitalServiceSource extends android.hardware.hdmi.HdmiRecordSources.RecordSource {
2211  }
2212
2213  public static final class HdmiRecordSources.ExternalPhysicalAddress extends android.hardware.hdmi.HdmiRecordSources.RecordSource {
2214  }
2215
2216  public static final class HdmiRecordSources.ExternalPlugData extends android.hardware.hdmi.HdmiRecordSources.RecordSource {
2217  }
2218
2219  public static final class HdmiRecordSources.OwnSource extends android.hardware.hdmi.HdmiRecordSources.RecordSource {
2220  }
2221
2222  public abstract static class HdmiRecordSources.RecordSource {
2223  }
2224
2225  public class HdmiSwitchClient extends android.hardware.hdmi.HdmiClient {
2226    method public int getDeviceType();
2227    method public void selectPort(int, @NonNull android.hardware.hdmi.HdmiSwitchClient.OnSelectListener);
2228    method public void selectPort(int, @NonNull java.util.concurrent.Executor, @NonNull android.hardware.hdmi.HdmiSwitchClient.OnSelectListener);
2229  }
2230
2231  public static interface HdmiSwitchClient.OnSelectListener {
2232    method public void onSelect(@android.hardware.hdmi.HdmiControlManager.ControlCallbackResult int);
2233  }
2234
2235  public class HdmiTimerRecordSources {
2236    method public static boolean checkTimerRecordSource(int, byte[]);
2237    method public static android.hardware.hdmi.HdmiTimerRecordSources.Duration durationOf(int, int);
2238    method public static android.hardware.hdmi.HdmiTimerRecordSources.TimerRecordSource ofAnalogueSource(android.hardware.hdmi.HdmiTimerRecordSources.TimerInfo, android.hardware.hdmi.HdmiRecordSources.AnalogueServiceSource);
2239    method public static android.hardware.hdmi.HdmiTimerRecordSources.TimerRecordSource ofDigitalSource(android.hardware.hdmi.HdmiTimerRecordSources.TimerInfo, android.hardware.hdmi.HdmiRecordSources.DigitalServiceSource);
2240    method public static android.hardware.hdmi.HdmiTimerRecordSources.TimerRecordSource ofExternalPhysicalAddress(android.hardware.hdmi.HdmiTimerRecordSources.TimerInfo, android.hardware.hdmi.HdmiRecordSources.ExternalPhysicalAddress);
2241    method public static android.hardware.hdmi.HdmiTimerRecordSources.TimerRecordSource ofExternalPlug(android.hardware.hdmi.HdmiTimerRecordSources.TimerInfo, android.hardware.hdmi.HdmiRecordSources.ExternalPlugData);
2242    method public static android.hardware.hdmi.HdmiTimerRecordSources.Time timeOf(int, int);
2243    method public static android.hardware.hdmi.HdmiTimerRecordSources.TimerInfo timerInfoOf(int, int, android.hardware.hdmi.HdmiTimerRecordSources.Time, android.hardware.hdmi.HdmiTimerRecordSources.Duration, int);
2244    field public static final int RECORDING_SEQUENCE_REPEAT_FRIDAY = 32; // 0x20
2245    field public static final int RECORDING_SEQUENCE_REPEAT_MONDAY = 2; // 0x2
2246    field public static final int RECORDING_SEQUENCE_REPEAT_ONCE_ONLY = 0; // 0x0
2247    field public static final int RECORDING_SEQUENCE_REPEAT_SATUREDAY = 64; // 0x40
2248    field public static final int RECORDING_SEQUENCE_REPEAT_SUNDAY = 1; // 0x1
2249    field public static final int RECORDING_SEQUENCE_REPEAT_THURSDAY = 16; // 0x10
2250    field public static final int RECORDING_SEQUENCE_REPEAT_TUESDAY = 4; // 0x4
2251    field public static final int RECORDING_SEQUENCE_REPEAT_WEDNESDAY = 8; // 0x8
2252  }
2253
2254  public static final class HdmiTimerRecordSources.Duration {
2255  }
2256
2257  public static final class HdmiTimerRecordSources.Time {
2258  }
2259
2260  public static final class HdmiTimerRecordSources.TimerInfo {
2261  }
2262
2263  public static final class HdmiTimerRecordSources.TimerRecordSource {
2264  }
2265
2266  public final class HdmiTvClient extends android.hardware.hdmi.HdmiClient {
2267    method public void clearTimerRecording(int, int, android.hardware.hdmi.HdmiTimerRecordSources.TimerRecordSource);
2268    method public void deviceSelect(int, @NonNull android.hardware.hdmi.HdmiTvClient.SelectCallback);
2269    method public java.util.List<android.hardware.hdmi.HdmiDeviceInfo> getDeviceList();
2270    method public int getDeviceType();
2271    method public void portSelect(int, @NonNull android.hardware.hdmi.HdmiTvClient.SelectCallback);
2272    method public void sendMhlVendorCommand(int, int, int, byte[]);
2273    method public void sendStandby(int);
2274    method public void setHdmiMhlVendorCommandListener(android.hardware.hdmi.HdmiTvClient.HdmiMhlVendorCommandListener);
2275    method public void setInputChangeListener(android.hardware.hdmi.HdmiTvClient.InputChangeListener);
2276    method public void setRecordListener(@NonNull android.hardware.hdmi.HdmiRecordListener);
2277    method public void setSystemAudioMode(boolean, android.hardware.hdmi.HdmiTvClient.SelectCallback);
2278    method public void setSystemAudioMute(boolean);
2279    method public void setSystemAudioVolume(int, int, int);
2280    method public void startOneTouchRecord(int, @NonNull android.hardware.hdmi.HdmiRecordSources.RecordSource);
2281    method public void startTimerRecording(int, int, android.hardware.hdmi.HdmiTimerRecordSources.TimerRecordSource);
2282    method public void stopOneTouchRecord(int);
2283    field public static final int VENDOR_DATA_SIZE = 16; // 0x10
2284  }
2285
2286  public static interface HdmiTvClient.HdmiMhlVendorCommandListener {
2287    method public void onReceived(int, int, int, byte[]);
2288  }
2289
2290  public static interface HdmiTvClient.InputChangeListener {
2291    method public void onChanged(android.hardware.hdmi.HdmiDeviceInfo);
2292  }
2293
2294  public static interface HdmiTvClient.SelectCallback {
2295    method public void onComplete(int);
2296  }
2297
2298}
2299
2300package android.hardware.location {
2301
2302  public class ContextHubClient implements java.io.Closeable {
2303    method public void close();
2304    method @NonNull public android.hardware.location.ContextHubInfo getAttachedHub();
2305    method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public int sendMessageToNanoApp(@NonNull android.hardware.location.NanoAppMessage);
2306  }
2307
2308  public class ContextHubClientCallback {
2309    ctor public ContextHubClientCallback();
2310    method public void onHubReset(android.hardware.location.ContextHubClient);
2311    method public void onMessageFromNanoApp(android.hardware.location.ContextHubClient, android.hardware.location.NanoAppMessage);
2312    method public void onNanoAppAborted(android.hardware.location.ContextHubClient, long, int);
2313    method public void onNanoAppDisabled(android.hardware.location.ContextHubClient, long);
2314    method public void onNanoAppEnabled(android.hardware.location.ContextHubClient, long);
2315    method public void onNanoAppLoaded(android.hardware.location.ContextHubClient, long);
2316    method public void onNanoAppUnloaded(android.hardware.location.ContextHubClient, long);
2317  }
2318
2319  public class ContextHubInfo implements android.os.Parcelable {
2320    ctor public ContextHubInfo();
2321    method public int describeContents();
2322    method public byte getChreApiMajorVersion();
2323    method public byte getChreApiMinorVersion();
2324    method public short getChrePatchVersion();
2325    method public long getChrePlatformId();
2326    method public int getId();
2327    method public int getMaxPacketLengthBytes();
2328    method public android.hardware.location.MemoryRegion[] getMemoryRegions();
2329    method public String getName();
2330    method public float getPeakMips();
2331    method public float getPeakPowerDrawMw();
2332    method public int getPlatformVersion();
2333    method public float getSleepPowerDrawMw();
2334    method public int getStaticSwVersion();
2335    method public float getStoppedPowerDrawMw();
2336    method public int[] getSupportedSensors();
2337    method public String getToolchain();
2338    method public int getToolchainVersion();
2339    method public String getVendor();
2340    method public void writeToParcel(android.os.Parcel, int);
2341    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.location.ContextHubInfo> CREATOR;
2342  }
2343
2344  public class ContextHubIntentEvent {
2345    method @NonNull public static android.hardware.location.ContextHubIntentEvent fromIntent(@NonNull android.content.Intent);
2346    method @NonNull public android.hardware.location.ContextHubInfo getContextHubInfo();
2347    method public int getEventType();
2348    method public int getNanoAppAbortCode();
2349    method public long getNanoAppId();
2350    method @NonNull public android.hardware.location.NanoAppMessage getNanoAppMessage();
2351  }
2352
2353  public final class ContextHubManager {
2354    method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) @NonNull public android.hardware.location.ContextHubClient createClient(@NonNull android.hardware.location.ContextHubInfo, @NonNull android.hardware.location.ContextHubClientCallback, @NonNull java.util.concurrent.Executor);
2355    method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) @NonNull public android.hardware.location.ContextHubClient createClient(@NonNull android.hardware.location.ContextHubInfo, @NonNull android.hardware.location.ContextHubClientCallback);
2356    method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) @NonNull public android.hardware.location.ContextHubClient createClient(@NonNull android.hardware.location.ContextHubInfo, @NonNull android.app.PendingIntent, long);
2357    method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) @NonNull public android.hardware.location.ContextHubTransaction<java.lang.Void> disableNanoApp(@NonNull android.hardware.location.ContextHubInfo, long);
2358    method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) @NonNull public android.hardware.location.ContextHubTransaction<java.lang.Void> enableNanoApp(@NonNull android.hardware.location.ContextHubInfo, long);
2359    method @Deprecated @NonNull @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public int[] findNanoAppOnHub(int, @NonNull android.hardware.location.NanoAppFilter);
2360    method @Deprecated @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public int[] getContextHubHandles();
2361    method @Deprecated @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public android.hardware.location.ContextHubInfo getContextHubInfo(int);
2362    method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) @NonNull public java.util.List<android.hardware.location.ContextHubInfo> getContextHubs();
2363    method @Deprecated @Nullable @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public android.hardware.location.NanoAppInstanceInfo getNanoAppInstanceInfo(int);
2364    method @Deprecated @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public int loadNanoApp(int, @NonNull android.hardware.location.NanoApp);
2365    method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) @NonNull public android.hardware.location.ContextHubTransaction<java.lang.Void> loadNanoApp(@NonNull android.hardware.location.ContextHubInfo, @NonNull android.hardware.location.NanoAppBinary);
2366    method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) @NonNull public android.hardware.location.ContextHubTransaction<java.util.List<android.hardware.location.NanoAppState>> queryNanoApps(@NonNull android.hardware.location.ContextHubInfo);
2367    method @Deprecated public int registerCallback(@NonNull android.hardware.location.ContextHubManager.Callback);
2368    method @Deprecated public int registerCallback(android.hardware.location.ContextHubManager.Callback, android.os.Handler);
2369    method @Deprecated @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public int sendMessage(int, int, @NonNull android.hardware.location.ContextHubMessage);
2370    method @Deprecated @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public int unloadNanoApp(int);
2371    method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) @NonNull public android.hardware.location.ContextHubTransaction<java.lang.Void> unloadNanoApp(@NonNull android.hardware.location.ContextHubInfo, long);
2372    method @Deprecated public int unregisterCallback(@NonNull android.hardware.location.ContextHubManager.Callback);
2373    field public static final int EVENT_HUB_RESET = 6; // 0x6
2374    field public static final int EVENT_NANOAPP_ABORTED = 4; // 0x4
2375    field public static final int EVENT_NANOAPP_DISABLED = 3; // 0x3
2376    field public static final int EVENT_NANOAPP_ENABLED = 2; // 0x2
2377    field public static final int EVENT_NANOAPP_LOADED = 0; // 0x0
2378    field public static final int EVENT_NANOAPP_MESSAGE = 5; // 0x5
2379    field public static final int EVENT_NANOAPP_UNLOADED = 1; // 0x1
2380    field public static final String EXTRA_CONTEXT_HUB_INFO = "android.hardware.location.extra.CONTEXT_HUB_INFO";
2381    field public static final String EXTRA_EVENT_TYPE = "android.hardware.location.extra.EVENT_TYPE";
2382    field public static final String EXTRA_MESSAGE = "android.hardware.location.extra.MESSAGE";
2383    field public static final String EXTRA_NANOAPP_ABORT_CODE = "android.hardware.location.extra.NANOAPP_ABORT_CODE";
2384    field public static final String EXTRA_NANOAPP_ID = "android.hardware.location.extra.NANOAPP_ID";
2385  }
2386
2387  @Deprecated public abstract static class ContextHubManager.Callback {
2388    ctor @Deprecated protected ContextHubManager.Callback();
2389    method @Deprecated public abstract void onMessageReceipt(int, int, @NonNull android.hardware.location.ContextHubMessage);
2390  }
2391
2392  @Deprecated public class ContextHubMessage implements android.os.Parcelable {
2393    ctor @Deprecated public ContextHubMessage(int, int, byte[]);
2394    method @Deprecated public int describeContents();
2395    method @Deprecated public byte[] getData();
2396    method @Deprecated public int getMsgType();
2397    method @Deprecated public int getVersion();
2398    method @Deprecated public void setMsgData(byte[]);
2399    method @Deprecated public void setMsgType(int);
2400    method @Deprecated public void setVersion(int);
2401    method @Deprecated public void writeToParcel(android.os.Parcel, int);
2402    field @Deprecated @NonNull public static final android.os.Parcelable.Creator<android.hardware.location.ContextHubMessage> CREATOR;
2403  }
2404
2405  public class ContextHubTransaction<T> {
2406    method public int getType();
2407    method public void setOnCompleteListener(@NonNull android.hardware.location.ContextHubTransaction.OnCompleteListener<T>, @NonNull java.util.concurrent.Executor);
2408    method public void setOnCompleteListener(@NonNull android.hardware.location.ContextHubTransaction.OnCompleteListener<T>);
2409    method public static String typeToString(int, boolean);
2410    method public android.hardware.location.ContextHubTransaction.Response<T> waitForResponse(long, java.util.concurrent.TimeUnit) throws java.lang.InterruptedException, java.util.concurrent.TimeoutException;
2411    field public static final int RESULT_FAILED_AT_HUB = 5; // 0x5
2412    field public static final int RESULT_FAILED_BAD_PARAMS = 2; // 0x2
2413    field public static final int RESULT_FAILED_BUSY = 4; // 0x4
2414    field public static final int RESULT_FAILED_HAL_UNAVAILABLE = 8; // 0x8
2415    field public static final int RESULT_FAILED_SERVICE_INTERNAL_FAILURE = 7; // 0x7
2416    field public static final int RESULT_FAILED_TIMEOUT = 6; // 0x6
2417    field public static final int RESULT_FAILED_UNINITIALIZED = 3; // 0x3
2418    field public static final int RESULT_FAILED_UNKNOWN = 1; // 0x1
2419    field public static final int RESULT_SUCCESS = 0; // 0x0
2420    field public static final int TYPE_DISABLE_NANOAPP = 3; // 0x3
2421    field public static final int TYPE_ENABLE_NANOAPP = 2; // 0x2
2422    field public static final int TYPE_LOAD_NANOAPP = 0; // 0x0
2423    field public static final int TYPE_QUERY_NANOAPPS = 4; // 0x4
2424    field public static final int TYPE_UNLOAD_NANOAPP = 1; // 0x1
2425  }
2426
2427  @java.lang.FunctionalInterface public static interface ContextHubTransaction.OnCompleteListener<L> {
2428    method public void onComplete(android.hardware.location.ContextHubTransaction<L>, android.hardware.location.ContextHubTransaction.Response<L>);
2429  }
2430
2431  public static class ContextHubTransaction.Response<R> {
2432    method public R getContents();
2433    method public int getResult();
2434  }
2435
2436  public final class GeofenceHardware {
2437    method public boolean addGeofence(int, int, android.hardware.location.GeofenceHardwareRequest, android.hardware.location.GeofenceHardwareCallback);
2438    method public int[] getMonitoringTypes();
2439    method public int getStatusOfMonitoringType(int);
2440    method public boolean pauseGeofence(int, int);
2441    method public boolean registerForMonitorStateChangeCallback(int, android.hardware.location.GeofenceHardwareMonitorCallback);
2442    method public boolean removeGeofence(int, int);
2443    method public boolean resumeGeofence(int, int, int);
2444    method public boolean unregisterForMonitorStateChangeCallback(int, android.hardware.location.GeofenceHardwareMonitorCallback);
2445    field public static final int GEOFENCE_ENTERED = 1; // 0x1
2446    field public static final int GEOFENCE_ERROR_ID_EXISTS = 2; // 0x2
2447    field public static final int GEOFENCE_ERROR_ID_UNKNOWN = 3; // 0x3
2448    field public static final int GEOFENCE_ERROR_INSUFFICIENT_MEMORY = 6; // 0x6
2449    field public static final int GEOFENCE_ERROR_INVALID_TRANSITION = 4; // 0x4
2450    field public static final int GEOFENCE_ERROR_TOO_MANY_GEOFENCES = 1; // 0x1
2451    field public static final int GEOFENCE_EXITED = 2; // 0x2
2452    field public static final int GEOFENCE_FAILURE = 5; // 0x5
2453    field public static final int GEOFENCE_SUCCESS = 0; // 0x0
2454    field public static final int GEOFENCE_UNCERTAIN = 4; // 0x4
2455    field public static final int MONITORING_TYPE_FUSED_HARDWARE = 1; // 0x1
2456    field public static final int MONITORING_TYPE_GPS_HARDWARE = 0; // 0x0
2457    field public static final int MONITOR_CURRENTLY_AVAILABLE = 0; // 0x0
2458    field public static final int MONITOR_CURRENTLY_UNAVAILABLE = 1; // 0x1
2459    field public static final int MONITOR_UNSUPPORTED = 2; // 0x2
2460    field public static final int SOURCE_TECHNOLOGY_BLUETOOTH = 16; // 0x10
2461    field public static final int SOURCE_TECHNOLOGY_CELL = 8; // 0x8
2462    field public static final int SOURCE_TECHNOLOGY_GNSS = 1; // 0x1
2463    field public static final int SOURCE_TECHNOLOGY_SENSORS = 4; // 0x4
2464    field public static final int SOURCE_TECHNOLOGY_WIFI = 2; // 0x2
2465  }
2466
2467  public abstract class GeofenceHardwareCallback {
2468    ctor public GeofenceHardwareCallback();
2469    method public void onGeofenceAdd(int, int);
2470    method public void onGeofencePause(int, int);
2471    method public void onGeofenceRemove(int, int);
2472    method public void onGeofenceResume(int, int);
2473    method public void onGeofenceTransition(int, int, android.location.Location, long, int);
2474  }
2475
2476  public abstract class GeofenceHardwareMonitorCallback {
2477    ctor public GeofenceHardwareMonitorCallback();
2478    method @Deprecated public void onMonitoringSystemChange(int, boolean, android.location.Location);
2479    method public void onMonitoringSystemChange(android.hardware.location.GeofenceHardwareMonitorEvent);
2480  }
2481
2482  public class GeofenceHardwareMonitorEvent implements android.os.Parcelable {
2483    ctor public GeofenceHardwareMonitorEvent(int, int, int, android.location.Location);
2484    method public int describeContents();
2485    method public android.location.Location getLocation();
2486    method public int getMonitoringStatus();
2487    method public int getMonitoringType();
2488    method public int getSourceTechnologies();
2489    method public void writeToParcel(android.os.Parcel, int);
2490    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.location.GeofenceHardwareMonitorEvent> CREATOR;
2491  }
2492
2493  public final class GeofenceHardwareRequest {
2494    ctor public GeofenceHardwareRequest();
2495    method public static android.hardware.location.GeofenceHardwareRequest createCircularGeofence(double, double, double);
2496    method public int getLastTransition();
2497    method public double getLatitude();
2498    method public double getLongitude();
2499    method public int getMonitorTransitions();
2500    method public int getNotificationResponsiveness();
2501    method public double getRadius();
2502    method public int getSourceTechnologies();
2503    method public int getUnknownTimer();
2504    method public void setLastTransition(int);
2505    method public void setMonitorTransitions(int);
2506    method public void setNotificationResponsiveness(int);
2507    method public void setSourceTechnologies(int);
2508    method public void setUnknownTimer(int);
2509  }
2510
2511  public class MemoryRegion implements android.os.Parcelable {
2512    ctor public MemoryRegion(android.os.Parcel);
2513    method public int describeContents();
2514    method public int getCapacityBytes();
2515    method public int getFreeCapacityBytes();
2516    method public boolean isExecutable();
2517    method public boolean isReadable();
2518    method public boolean isWritable();
2519    method public void writeToParcel(android.os.Parcel, int);
2520    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.location.MemoryRegion> CREATOR;
2521  }
2522
2523  @Deprecated public class NanoApp implements android.os.Parcelable {
2524    ctor @Deprecated public NanoApp();
2525    ctor @Deprecated public NanoApp(int, byte[]);
2526    ctor @Deprecated public NanoApp(long, byte[]);
2527    method @Deprecated public int describeContents();
2528    method @Deprecated public byte[] getAppBinary();
2529    method @Deprecated public long getAppId();
2530    method @Deprecated public int getAppVersion();
2531    method @Deprecated public String getName();
2532    method @Deprecated public int getNeededExecMemBytes();
2533    method @Deprecated public int getNeededReadMemBytes();
2534    method @Deprecated public int[] getNeededSensors();
2535    method @Deprecated public int getNeededWriteMemBytes();
2536    method @Deprecated public int[] getOutputEvents();
2537    method @Deprecated public String getPublisher();
2538    method @Deprecated public void setAppBinary(byte[]);
2539    method @Deprecated public void setAppId(long);
2540    method @Deprecated public void setAppVersion(int);
2541    method @Deprecated public void setName(String);
2542    method @Deprecated public void setNeededExecMemBytes(int);
2543    method @Deprecated public void setNeededReadMemBytes(int);
2544    method @Deprecated public void setNeededSensors(int[]);
2545    method @Deprecated public void setNeededWriteMemBytes(int);
2546    method @Deprecated public void setOutputEvents(int[]);
2547    method @Deprecated public void setPublisher(String);
2548    method @Deprecated public void writeToParcel(android.os.Parcel, int);
2549    field @Deprecated @NonNull public static final android.os.Parcelable.Creator<android.hardware.location.NanoApp> CREATOR;
2550  }
2551
2552  public final class NanoAppBinary implements android.os.Parcelable {
2553    ctor public NanoAppBinary(byte[]);
2554    method public int describeContents();
2555    method public byte[] getBinary();
2556    method public byte[] getBinaryNoHeader();
2557    method public int getFlags();
2558    method public int getHeaderVersion();
2559    method public long getHwHubType();
2560    method public long getNanoAppId();
2561    method public int getNanoAppVersion();
2562    method public byte getTargetChreApiMajorVersion();
2563    method public byte getTargetChreApiMinorVersion();
2564    method public boolean hasValidHeader();
2565    method public boolean isEncrypted();
2566    method public boolean isSigned();
2567    method public void writeToParcel(android.os.Parcel, int);
2568    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.location.NanoAppBinary> CREATOR;
2569  }
2570
2571  @Deprecated public class NanoAppFilter implements android.os.Parcelable {
2572    ctor @Deprecated public NanoAppFilter(long, int, int, long);
2573    method @Deprecated public int describeContents();
2574    method @Deprecated public boolean testMatch(android.hardware.location.NanoAppInstanceInfo);
2575    method @Deprecated public void writeToParcel(android.os.Parcel, int);
2576    field @Deprecated public static final int APP_ANY = -1; // 0xffffffff
2577    field @Deprecated @NonNull public static final android.os.Parcelable.Creator<android.hardware.location.NanoAppFilter> CREATOR;
2578    field @Deprecated public static final int FLAGS_VERSION_ANY = -1; // 0xffffffff
2579    field @Deprecated public static final int FLAGS_VERSION_GREAT_THAN = 2; // 0x2
2580    field @Deprecated public static final int FLAGS_VERSION_LESS_THAN = 4; // 0x4
2581    field @Deprecated public static final int FLAGS_VERSION_STRICTLY_EQUAL = 8; // 0x8
2582    field @Deprecated public static final int HUB_ANY = -1; // 0xffffffff
2583    field @Deprecated public static final int VENDOR_ANY = -1; // 0xffffffff
2584  }
2585
2586  @Deprecated public class NanoAppInstanceInfo implements android.os.Parcelable {
2587    ctor @Deprecated public NanoAppInstanceInfo();
2588    method @Deprecated public int describeContents();
2589    method @Deprecated public long getAppId();
2590    method @Deprecated public int getAppVersion();
2591    method @Deprecated public int getContexthubId();
2592    method @Deprecated public int getHandle();
2593    method @Deprecated public String getName();
2594    method @Deprecated public int getNeededExecMemBytes();
2595    method @Deprecated public int getNeededReadMemBytes();
2596    method @Deprecated @NonNull public int[] getNeededSensors();
2597    method @Deprecated public int getNeededWriteMemBytes();
2598    method @Deprecated @NonNull public int[] getOutputEvents();
2599    method @Deprecated public String getPublisher();
2600    method @Deprecated public void writeToParcel(android.os.Parcel, int);
2601    field @Deprecated @NonNull public static final android.os.Parcelable.Creator<android.hardware.location.NanoAppInstanceInfo> CREATOR;
2602  }
2603
2604  public final class NanoAppMessage implements android.os.Parcelable {
2605    method public static android.hardware.location.NanoAppMessage createMessageFromNanoApp(long, int, byte[], boolean);
2606    method public static android.hardware.location.NanoAppMessage createMessageToNanoApp(long, int, byte[]);
2607    method public int describeContents();
2608    method public byte[] getMessageBody();
2609    method public int getMessageType();
2610    method public long getNanoAppId();
2611    method public boolean isBroadcastMessage();
2612    method public void writeToParcel(android.os.Parcel, int);
2613    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.location.NanoAppMessage> CREATOR;
2614  }
2615
2616  public final class NanoAppState implements android.os.Parcelable {
2617    ctor public NanoAppState(long, int, boolean);
2618    method public int describeContents();
2619    method public long getNanoAppId();
2620    method public long getNanoAppVersion();
2621    method public boolean isEnabled();
2622    method public void writeToParcel(android.os.Parcel, int);
2623    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.location.NanoAppState> CREATOR;
2624  }
2625
2626}
2627
2628package android.hardware.radio {
2629
2630  public final class Announcement implements android.os.Parcelable {
2631    method public int describeContents();
2632    method @NonNull public android.hardware.radio.ProgramSelector getSelector();
2633    method public int getType();
2634    method @NonNull public java.util.Map<java.lang.String,java.lang.String> getVendorInfo();
2635    method public void writeToParcel(android.os.Parcel, int);
2636    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.Announcement> CREATOR;
2637    field public static final int TYPE_EMERGENCY = 1; // 0x1
2638    field public static final int TYPE_EVENT = 6; // 0x6
2639    field public static final int TYPE_MISC = 8; // 0x8
2640    field public static final int TYPE_NEWS = 5; // 0x5
2641    field public static final int TYPE_SPORT = 7; // 0x7
2642    field public static final int TYPE_TRAFFIC = 3; // 0x3
2643    field public static final int TYPE_WARNING = 2; // 0x2
2644    field public static final int TYPE_WEATHER = 4; // 0x4
2645  }
2646
2647  public static interface Announcement.OnListUpdatedListener {
2648    method public void onListUpdated(java.util.Collection<android.hardware.radio.Announcement>);
2649  }
2650
2651  public final class ProgramList implements java.lang.AutoCloseable {
2652    method public void addOnCompleteListener(@NonNull java.util.concurrent.Executor, @NonNull android.hardware.radio.ProgramList.OnCompleteListener);
2653    method public void addOnCompleteListener(@NonNull android.hardware.radio.ProgramList.OnCompleteListener);
2654    method public void close();
2655    method @Nullable public android.hardware.radio.RadioManager.ProgramInfo get(@NonNull android.hardware.radio.ProgramSelector.Identifier);
2656    method public void registerListCallback(@NonNull java.util.concurrent.Executor, @NonNull android.hardware.radio.ProgramList.ListCallback);
2657    method public void registerListCallback(@NonNull android.hardware.radio.ProgramList.ListCallback);
2658    method public void removeOnCompleteListener(@NonNull android.hardware.radio.ProgramList.OnCompleteListener);
2659    method @NonNull public java.util.List<android.hardware.radio.RadioManager.ProgramInfo> toList();
2660    method public void unregisterListCallback(@NonNull android.hardware.radio.ProgramList.ListCallback);
2661  }
2662
2663  public static final class ProgramList.Filter implements android.os.Parcelable {
2664    ctor public ProgramList.Filter(@NonNull java.util.Set<java.lang.Integer>, @NonNull java.util.Set<android.hardware.radio.ProgramSelector.Identifier>, boolean, boolean);
2665    method public boolean areCategoriesIncluded();
2666    method public boolean areModificationsExcluded();
2667    method public int describeContents();
2668    method @NonNull public java.util.Set<java.lang.Integer> getIdentifierTypes();
2669    method @NonNull public java.util.Set<android.hardware.radio.ProgramSelector.Identifier> getIdentifiers();
2670    method public void writeToParcel(android.os.Parcel, int);
2671    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.ProgramList.Filter> CREATOR;
2672  }
2673
2674  public abstract static class ProgramList.ListCallback {
2675    ctor public ProgramList.ListCallback();
2676    method public void onItemChanged(@NonNull android.hardware.radio.ProgramSelector.Identifier);
2677    method public void onItemRemoved(@NonNull android.hardware.radio.ProgramSelector.Identifier);
2678  }
2679
2680  public static interface ProgramList.OnCompleteListener {
2681    method public void onComplete();
2682  }
2683
2684  public final class ProgramSelector implements android.os.Parcelable {
2685    ctor public ProgramSelector(@android.hardware.radio.ProgramSelector.ProgramType int, @NonNull android.hardware.radio.ProgramSelector.Identifier, @Nullable android.hardware.radio.ProgramSelector.Identifier[], @Nullable long[]);
2686    method @NonNull public static android.hardware.radio.ProgramSelector createAmFmSelector(@android.hardware.radio.RadioManager.Band int, int);
2687    method @NonNull public static android.hardware.radio.ProgramSelector createAmFmSelector(@android.hardware.radio.RadioManager.Band int, int, int);
2688    method public int describeContents();
2689    method @NonNull public android.hardware.radio.ProgramSelector.Identifier[] getAllIds(@android.hardware.radio.ProgramSelector.IdentifierType int);
2690    method public long getFirstId(@android.hardware.radio.ProgramSelector.IdentifierType int);
2691    method @NonNull public android.hardware.radio.ProgramSelector.Identifier getPrimaryId();
2692    method @Deprecated @android.hardware.radio.ProgramSelector.ProgramType public int getProgramType();
2693    method @NonNull public android.hardware.radio.ProgramSelector.Identifier[] getSecondaryIds();
2694    method @Deprecated @NonNull public long[] getVendorIds();
2695    method @NonNull public android.hardware.radio.ProgramSelector withSecondaryPreferred(@NonNull android.hardware.radio.ProgramSelector.Identifier);
2696    method public void writeToParcel(android.os.Parcel, int);
2697    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.ProgramSelector> CREATOR;
2698    field public static final int IDENTIFIER_TYPE_AMFM_FREQUENCY = 1; // 0x1
2699    field public static final int IDENTIFIER_TYPE_DAB_ENSEMBLE = 6; // 0x6
2700    field public static final int IDENTIFIER_TYPE_DAB_FREQUENCY = 8; // 0x8
2701    field public static final int IDENTIFIER_TYPE_DAB_SCID = 7; // 0x7
2702    field public static final int IDENTIFIER_TYPE_DAB_SIDECC = 5; // 0x5
2703    field public static final int IDENTIFIER_TYPE_DAB_SID_EXT = 5; // 0x5
2704    field public static final int IDENTIFIER_TYPE_DRMO_FREQUENCY = 10; // 0xa
2705    field @Deprecated public static final int IDENTIFIER_TYPE_DRMO_MODULATION = 11; // 0xb
2706    field public static final int IDENTIFIER_TYPE_DRMO_SERVICE_ID = 9; // 0x9
2707    field public static final int IDENTIFIER_TYPE_HD_STATION_ID_EXT = 3; // 0x3
2708    field public static final int IDENTIFIER_TYPE_HD_STATION_NAME = 10004; // 0x2714
2709    field @Deprecated public static final int IDENTIFIER_TYPE_HD_SUBCHANNEL = 4; // 0x4
2710    field public static final int IDENTIFIER_TYPE_INVALID = 0; // 0x0
2711    field public static final int IDENTIFIER_TYPE_RDS_PI = 2; // 0x2
2712    field public static final int IDENTIFIER_TYPE_SXM_CHANNEL = 13; // 0xd
2713    field public static final int IDENTIFIER_TYPE_SXM_SERVICE_ID = 12; // 0xc
2714    field public static final int IDENTIFIER_TYPE_VENDOR_END = 1999; // 0x7cf
2715    field @Deprecated public static final int IDENTIFIER_TYPE_VENDOR_PRIMARY_END = 1999; // 0x7cf
2716    field @Deprecated public static final int IDENTIFIER_TYPE_VENDOR_PRIMARY_START = 1000; // 0x3e8
2717    field public static final int IDENTIFIER_TYPE_VENDOR_START = 1000; // 0x3e8
2718    field @Deprecated public static final int PROGRAM_TYPE_AM = 1; // 0x1
2719    field @Deprecated public static final int PROGRAM_TYPE_AM_HD = 3; // 0x3
2720    field @Deprecated public static final int PROGRAM_TYPE_DAB = 5; // 0x5
2721    field @Deprecated public static final int PROGRAM_TYPE_DRMO = 6; // 0x6
2722    field @Deprecated public static final int PROGRAM_TYPE_FM = 2; // 0x2
2723    field @Deprecated public static final int PROGRAM_TYPE_FM_HD = 4; // 0x4
2724    field @Deprecated public static final int PROGRAM_TYPE_INVALID = 0; // 0x0
2725    field @Deprecated public static final int PROGRAM_TYPE_SXM = 7; // 0x7
2726    field @Deprecated public static final int PROGRAM_TYPE_VENDOR_END = 1999; // 0x7cf
2727    field @Deprecated public static final int PROGRAM_TYPE_VENDOR_START = 1000; // 0x3e8
2728  }
2729
2730  public static final class ProgramSelector.Identifier implements android.os.Parcelable {
2731    ctor public ProgramSelector.Identifier(@android.hardware.radio.ProgramSelector.IdentifierType int, long);
2732    method public int describeContents();
2733    method @android.hardware.radio.ProgramSelector.IdentifierType public int getType();
2734    method public long getValue();
2735    method public void writeToParcel(android.os.Parcel, int);
2736    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.ProgramSelector.Identifier> CREATOR;
2737  }
2738
2739  @IntDef(prefix={"IDENTIFIER_TYPE_"}, value={android.hardware.radio.ProgramSelector.IDENTIFIER_TYPE_INVALID, android.hardware.radio.ProgramSelector.IDENTIFIER_TYPE_AMFM_FREQUENCY, android.hardware.radio.ProgramSelector.IDENTIFIER_TYPE_RDS_PI, android.hardware.radio.ProgramSelector.IDENTIFIER_TYPE_HD_STATION_ID_EXT, android.hardware.radio.ProgramSelector.IDENTIFIER_TYPE_HD_SUBCHANNEL, android.hardware.radio.ProgramSelector.IDENTIFIER_TYPE_HD_STATION_NAME, android.hardware.radio.ProgramSelector.IDENTIFIER_TYPE_DAB_SID_EXT, android.hardware.radio.ProgramSelector.IDENTIFIER_TYPE_DAB_SIDECC, android.hardware.radio.ProgramSelector.IDENTIFIER_TYPE_DAB_ENSEMBLE, android.hardware.radio.ProgramSelector.IDENTIFIER_TYPE_DAB_SCID, android.hardware.radio.ProgramSelector.IDENTIFIER_TYPE_DAB_FREQUENCY, android.hardware.radio.ProgramSelector.IDENTIFIER_TYPE_DRMO_SERVICE_ID, android.hardware.radio.ProgramSelector.IDENTIFIER_TYPE_DRMO_FREQUENCY, android.hardware.radio.ProgramSelector.IDENTIFIER_TYPE_DRMO_MODULATION, android.hardware.radio.ProgramSelector.IDENTIFIER_TYPE_SXM_SERVICE_ID, android.hardware.radio.ProgramSelector.IDENTIFIER_TYPE_SXM_CHANNEL}) @IntRange(from=android.hardware.radio.ProgramSelector.IDENTIFIER_TYPE_VENDOR_START, to=android.hardware.radio.ProgramSelector.IDENTIFIER_TYPE_VENDOR_END) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface ProgramSelector.IdentifierType {
2740  }
2741
2742  @Deprecated @IntDef(prefix={"PROGRAM_TYPE_"}, value={android.hardware.radio.ProgramSelector.PROGRAM_TYPE_INVALID, android.hardware.radio.ProgramSelector.PROGRAM_TYPE_AM, android.hardware.radio.ProgramSelector.PROGRAM_TYPE_FM, android.hardware.radio.ProgramSelector.PROGRAM_TYPE_AM_HD, android.hardware.radio.ProgramSelector.PROGRAM_TYPE_FM_HD, android.hardware.radio.ProgramSelector.PROGRAM_TYPE_DAB, android.hardware.radio.ProgramSelector.PROGRAM_TYPE_DRMO, android.hardware.radio.ProgramSelector.PROGRAM_TYPE_SXM}) @IntRange(from=android.hardware.radio.ProgramSelector.PROGRAM_TYPE_VENDOR_START, to=android.hardware.radio.ProgramSelector.PROGRAM_TYPE_VENDOR_END) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface ProgramSelector.ProgramType {
2743  }
2744
2745  public class RadioManager {
2746    method @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public void addAnnouncementListener(@NonNull java.util.Set<java.lang.Integer>, @NonNull android.hardware.radio.Announcement.OnListUpdatedListener);
2747    method @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public void addAnnouncementListener(@NonNull java.util.concurrent.Executor, @NonNull java.util.Set<java.lang.Integer>, @NonNull android.hardware.radio.Announcement.OnListUpdatedListener);
2748    method @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public int listModules(java.util.List<android.hardware.radio.RadioManager.ModuleProperties>);
2749    method @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public android.hardware.radio.RadioTuner openTuner(int, android.hardware.radio.RadioManager.BandConfig, boolean, android.hardware.radio.RadioTuner.Callback, android.os.Handler);
2750    method @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RADIO) public void removeAnnouncementListener(@NonNull android.hardware.radio.Announcement.OnListUpdatedListener);
2751    field public static final int BAND_AM = 0; // 0x0
2752    field public static final int BAND_AM_HD = 3; // 0x3
2753    field public static final int BAND_FM = 1; // 0x1
2754    field public static final int BAND_FM_HD = 2; // 0x2
2755    field public static final int BAND_INVALID = -1; // 0xffffffff
2756    field public static final int CLASS_AM_FM = 0; // 0x0
2757    field public static final int CLASS_DT = 2; // 0x2
2758    field public static final int CLASS_SAT = 1; // 0x1
2759    field public static final int CONFIG_DAB_DAB_LINKING = 6; // 0x6
2760    field public static final int CONFIG_DAB_DAB_SOFT_LINKING = 8; // 0x8
2761    field public static final int CONFIG_DAB_FM_LINKING = 7; // 0x7
2762    field public static final int CONFIG_DAB_FM_SOFT_LINKING = 9; // 0x9
2763    field public static final int CONFIG_FORCE_ANALOG = 2; // 0x2
2764    field public static final int CONFIG_FORCE_DIGITAL = 3; // 0x3
2765    field public static final int CONFIG_FORCE_MONO = 1; // 0x1
2766    field public static final int CONFIG_RDS_AF = 4; // 0x4
2767    field public static final int CONFIG_RDS_REG = 5; // 0x5
2768    field public static final int REGION_ITU_1 = 0; // 0x0
2769    field public static final int REGION_ITU_2 = 1; // 0x1
2770    field public static final int REGION_JAPAN = 3; // 0x3
2771    field public static final int REGION_KOREA = 4; // 0x4
2772    field public static final int REGION_OIRT = 2; // 0x2
2773    field public static final int STATUS_BAD_VALUE = -22; // 0xffffffea
2774    field public static final int STATUS_DEAD_OBJECT = -32; // 0xffffffe0
2775    field public static final int STATUS_ERROR = -2147483648; // 0x80000000
2776    field public static final int STATUS_INVALID_OPERATION = -38; // 0xffffffda
2777    field public static final int STATUS_NO_INIT = -19; // 0xffffffed
2778    field public static final int STATUS_OK = 0; // 0x0
2779    field public static final int STATUS_PERMISSION_DENIED = -1; // 0xffffffff
2780    field public static final int STATUS_TIMED_OUT = -110; // 0xffffff92
2781  }
2782
2783  public static class RadioManager.AmBandConfig extends android.hardware.radio.RadioManager.BandConfig {
2784    method public boolean getStereo();
2785    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.RadioManager.AmBandConfig> CREATOR;
2786  }
2787
2788  public static class RadioManager.AmBandConfig.Builder {
2789    ctor public RadioManager.AmBandConfig.Builder(android.hardware.radio.RadioManager.AmBandDescriptor);
2790    ctor public RadioManager.AmBandConfig.Builder(android.hardware.radio.RadioManager.AmBandConfig);
2791    method public android.hardware.radio.RadioManager.AmBandConfig build();
2792    method public android.hardware.radio.RadioManager.AmBandConfig.Builder setStereo(boolean);
2793  }
2794
2795  public static class RadioManager.AmBandDescriptor extends android.hardware.radio.RadioManager.BandDescriptor {
2796    method public boolean isStereoSupported();
2797    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.RadioManager.AmBandDescriptor> CREATOR;
2798  }
2799
2800  @IntDef(prefix={"BAND_"}, value={android.hardware.radio.RadioManager.BAND_INVALID, android.hardware.radio.RadioManager.BAND_AM, android.hardware.radio.RadioManager.BAND_FM, android.hardware.radio.RadioManager.BAND_AM_HD, android.hardware.radio.RadioManager.BAND_FM_HD}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface RadioManager.Band {
2801  }
2802
2803  public static class RadioManager.BandConfig implements android.os.Parcelable {
2804    method public int describeContents();
2805    method public int getLowerLimit();
2806    method public int getRegion();
2807    method public int getSpacing();
2808    method public int getType();
2809    method public int getUpperLimit();
2810    method public void writeToParcel(android.os.Parcel, int);
2811    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.RadioManager.BandConfig> CREATOR;
2812  }
2813
2814  public static class RadioManager.BandDescriptor implements android.os.Parcelable {
2815    method public int describeContents();
2816    method public int getLowerLimit();
2817    method public int getRegion();
2818    method public int getSpacing();
2819    method public int getType();
2820    method public int getUpperLimit();
2821    method public boolean isAmBand();
2822    method public boolean isFmBand();
2823    method public void writeToParcel(android.os.Parcel, int);
2824    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.RadioManager.BandDescriptor> CREATOR;
2825  }
2826
2827  public static class RadioManager.FmBandConfig extends android.hardware.radio.RadioManager.BandConfig {
2828    method public boolean getAf();
2829    method public boolean getEa();
2830    method public boolean getRds();
2831    method public boolean getStereo();
2832    method public boolean getTa();
2833    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.RadioManager.FmBandConfig> CREATOR;
2834  }
2835
2836  public static class RadioManager.FmBandConfig.Builder {
2837    ctor public RadioManager.FmBandConfig.Builder(android.hardware.radio.RadioManager.FmBandDescriptor);
2838    ctor public RadioManager.FmBandConfig.Builder(android.hardware.radio.RadioManager.FmBandConfig);
2839    method public android.hardware.radio.RadioManager.FmBandConfig build();
2840    method public android.hardware.radio.RadioManager.FmBandConfig.Builder setAf(boolean);
2841    method public android.hardware.radio.RadioManager.FmBandConfig.Builder setEa(boolean);
2842    method public android.hardware.radio.RadioManager.FmBandConfig.Builder setRds(boolean);
2843    method public android.hardware.radio.RadioManager.FmBandConfig.Builder setStereo(boolean);
2844    method public android.hardware.radio.RadioManager.FmBandConfig.Builder setTa(boolean);
2845  }
2846
2847  public static class RadioManager.FmBandDescriptor extends android.hardware.radio.RadioManager.BandDescriptor {
2848    method public boolean isAfSupported();
2849    method public boolean isEaSupported();
2850    method public boolean isRdsSupported();
2851    method public boolean isStereoSupported();
2852    method public boolean isTaSupported();
2853    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.RadioManager.FmBandDescriptor> CREATOR;
2854  }
2855
2856  public static class RadioManager.ModuleProperties implements android.os.Parcelable {
2857    method public int describeContents();
2858    method public android.hardware.radio.RadioManager.BandDescriptor[] getBands();
2859    method public int getClassId();
2860    method @Nullable public java.util.Map<java.lang.String,java.lang.Integer> getDabFrequencyTable();
2861    method public int getId();
2862    method public String getImplementor();
2863    method public int getNumAudioSources();
2864    method public int getNumTuners();
2865    method public String getProduct();
2866    method public String getSerial();
2867    method @NonNull public String getServiceName();
2868    method @NonNull public java.util.Map<java.lang.String,java.lang.String> getVendorInfo();
2869    method public String getVersion();
2870    method public boolean isBackgroundScanningSupported();
2871    method public boolean isCaptureSupported();
2872    method public boolean isInitializationRequired();
2873    method public boolean isProgramIdentifierSupported(@android.hardware.radio.ProgramSelector.IdentifierType int);
2874    method public boolean isProgramTypeSupported(@android.hardware.radio.ProgramSelector.ProgramType int);
2875    method public void writeToParcel(android.os.Parcel, int);
2876    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.RadioManager.ModuleProperties> CREATOR;
2877  }
2878
2879  public static class RadioManager.ProgramInfo implements android.os.Parcelable {
2880    method public int describeContents();
2881    method @Deprecated public int getChannel();
2882    method @Nullable public android.hardware.radio.ProgramSelector.Identifier getLogicallyTunedTo();
2883    method public android.hardware.radio.RadioMetadata getMetadata();
2884    method @Nullable public android.hardware.radio.ProgramSelector.Identifier getPhysicallyTunedTo();
2885    method @Nullable public java.util.Collection<android.hardware.radio.ProgramSelector.Identifier> getRelatedContent();
2886    method @NonNull public android.hardware.radio.ProgramSelector getSelector();
2887    method public int getSignalStrength();
2888    method @Deprecated public int getSubChannel();
2889    method @NonNull public java.util.Map<java.lang.String,java.lang.String> getVendorInfo();
2890    method @Deprecated public boolean isDigital();
2891    method public boolean isLive();
2892    method public boolean isMuted();
2893    method public boolean isStereo();
2894    method public boolean isTrafficAnnouncementActive();
2895    method public boolean isTrafficProgram();
2896    method public boolean isTuned();
2897    method public void writeToParcel(android.os.Parcel, int);
2898    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.RadioManager.ProgramInfo> CREATOR;
2899  }
2900
2901  public final class RadioMetadata implements android.os.Parcelable {
2902    method public boolean containsKey(String);
2903    method public int describeContents();
2904    method @Deprecated public android.graphics.Bitmap getBitmap(String);
2905    method public android.hardware.radio.RadioMetadata.Clock getClock(String);
2906    method public int getInt(String);
2907    method public String getString(String);
2908    method public java.util.Set<java.lang.String> keySet();
2909    method public int size();
2910    method public void writeToParcel(android.os.Parcel, int);
2911    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.RadioMetadata> CREATOR;
2912    field public static final String METADATA_KEY_ALBUM = "android.hardware.radio.metadata.ALBUM";
2913    field public static final String METADATA_KEY_ART = "android.hardware.radio.metadata.ART";
2914    field public static final String METADATA_KEY_ARTIST = "android.hardware.radio.metadata.ARTIST";
2915    field public static final String METADATA_KEY_CLOCK = "android.hardware.radio.metadata.CLOCK";
2916    field public static final String METADATA_KEY_DAB_COMPONENT_NAME = "android.hardware.radio.metadata.DAB_COMPONENT_NAME";
2917    field public static final String METADATA_KEY_DAB_COMPONENT_NAME_SHORT = "android.hardware.radio.metadata.DAB_COMPONENT_NAME_SHORT";
2918    field public static final String METADATA_KEY_DAB_ENSEMBLE_NAME = "android.hardware.radio.metadata.DAB_ENSEMBLE_NAME";
2919    field public static final String METADATA_KEY_DAB_ENSEMBLE_NAME_SHORT = "android.hardware.radio.metadata.DAB_ENSEMBLE_NAME_SHORT";
2920    field public static final String METADATA_KEY_DAB_SERVICE_NAME = "android.hardware.radio.metadata.DAB_SERVICE_NAME";
2921    field public static final String METADATA_KEY_DAB_SERVICE_NAME_SHORT = "android.hardware.radio.metadata.DAB_SERVICE_NAME_SHORT";
2922    field public static final String METADATA_KEY_GENRE = "android.hardware.radio.metadata.GENRE";
2923    field public static final String METADATA_KEY_ICON = "android.hardware.radio.metadata.ICON";
2924    field public static final String METADATA_KEY_PROGRAM_NAME = "android.hardware.radio.metadata.PROGRAM_NAME";
2925    field public static final String METADATA_KEY_RBDS_PTY = "android.hardware.radio.metadata.RBDS_PTY";
2926    field public static final String METADATA_KEY_RDS_PI = "android.hardware.radio.metadata.RDS_PI";
2927    field public static final String METADATA_KEY_RDS_PS = "android.hardware.radio.metadata.RDS_PS";
2928    field public static final String METADATA_KEY_RDS_PTY = "android.hardware.radio.metadata.RDS_PTY";
2929    field public static final String METADATA_KEY_RDS_RT = "android.hardware.radio.metadata.RDS_RT";
2930    field public static final String METADATA_KEY_TITLE = "android.hardware.radio.metadata.TITLE";
2931  }
2932
2933  public static final class RadioMetadata.Builder {
2934    ctor public RadioMetadata.Builder();
2935    ctor public RadioMetadata.Builder(android.hardware.radio.RadioMetadata);
2936    method public android.hardware.radio.RadioMetadata build();
2937    method public android.hardware.radio.RadioMetadata.Builder putBitmap(String, android.graphics.Bitmap);
2938    method public android.hardware.radio.RadioMetadata.Builder putClock(String, long, int);
2939    method public android.hardware.radio.RadioMetadata.Builder putInt(String, int);
2940    method public android.hardware.radio.RadioMetadata.Builder putString(String, String);
2941  }
2942
2943  public static final class RadioMetadata.Clock implements android.os.Parcelable {
2944    ctor public RadioMetadata.Clock(long, int);
2945    method public int describeContents();
2946    method public int getTimezoneOffsetMinutes();
2947    method public long getUtcEpochSeconds();
2948    method public void writeToParcel(android.os.Parcel, int);
2949    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.radio.RadioMetadata.Clock> CREATOR;
2950  }
2951
2952  public abstract class RadioTuner {
2953    ctor public RadioTuner();
2954    method public abstract int cancel();
2955    method public abstract void cancelAnnouncement();
2956    method public abstract void close();
2957    method @Deprecated public abstract int getConfiguration(android.hardware.radio.RadioManager.BandConfig[]);
2958    method @Nullable public android.hardware.radio.ProgramList getDynamicProgramList(@Nullable android.hardware.radio.ProgramList.Filter);
2959    method public abstract boolean getMute();
2960    method @NonNull public java.util.Map<java.lang.String,java.lang.String> getParameters(@NonNull java.util.List<java.lang.String>);
2961    method @Deprecated public abstract int getProgramInformation(android.hardware.radio.RadioManager.ProgramInfo[]);
2962    method @Deprecated @NonNull public abstract java.util.List<android.hardware.radio.RadioManager.ProgramInfo> getProgramList(@Nullable java.util.Map<java.lang.String,java.lang.String>);
2963    method public abstract boolean hasControl();
2964    method @Deprecated public abstract boolean isAnalogForced();
2965    method @Deprecated public abstract boolean isAntennaConnected();
2966    method public boolean isConfigFlagSet(int);
2967    method public boolean isConfigFlagSupported(int);
2968    method public abstract int scan(int, boolean);
2969    method @Deprecated public abstract void setAnalogForced(boolean);
2970    method public void setConfigFlag(int, boolean);
2971    method @Deprecated public abstract int setConfiguration(android.hardware.radio.RadioManager.BandConfig);
2972    method public abstract int setMute(boolean);
2973    method @NonNull public java.util.Map<java.lang.String,java.lang.String> setParameters(@NonNull java.util.Map<java.lang.String,java.lang.String>);
2974    method public abstract boolean startBackgroundScan();
2975    method public abstract int step(int, boolean);
2976    method @Deprecated public abstract int tune(int, int);
2977    method public abstract void tune(@NonNull android.hardware.radio.ProgramSelector);
2978    field public static final int DIRECTION_DOWN = 1; // 0x1
2979    field public static final int DIRECTION_UP = 0; // 0x0
2980    field @Deprecated public static final int ERROR_BACKGROUND_SCAN_FAILED = 6; // 0x6
2981    field @Deprecated public static final int ERROR_BACKGROUND_SCAN_UNAVAILABLE = 5; // 0x5
2982    field @Deprecated public static final int ERROR_CANCELLED = 2; // 0x2
2983    field @Deprecated public static final int ERROR_CONFIG = 4; // 0x4
2984    field @Deprecated public static final int ERROR_HARDWARE_FAILURE = 0; // 0x0
2985    field @Deprecated public static final int ERROR_SCAN_TIMEOUT = 3; // 0x3
2986    field @Deprecated public static final int ERROR_SERVER_DIED = 1; // 0x1
2987  }
2988
2989  public abstract static class RadioTuner.Callback {
2990    ctor public RadioTuner.Callback();
2991    method public void onAntennaState(boolean);
2992    method public void onBackgroundScanAvailabilityChange(boolean);
2993    method public void onBackgroundScanComplete();
2994    method @Deprecated public void onConfigurationChanged(android.hardware.radio.RadioManager.BandConfig);
2995    method public void onControlChanged(boolean);
2996    method public void onEmergencyAnnouncement(boolean);
2997    method @Deprecated public void onError(int);
2998    method @Deprecated public void onMetadataChanged(android.hardware.radio.RadioMetadata);
2999    method public void onParametersUpdated(@NonNull java.util.Map<java.lang.String,java.lang.String>);
3000    method public void onProgramInfoChanged(android.hardware.radio.RadioManager.ProgramInfo);
3001    method public void onProgramListChanged();
3002    method public void onTrafficAnnouncement(boolean);
3003    method public void onTuneFailed(int, @Nullable android.hardware.radio.ProgramSelector);
3004  }
3005
3006}
3007
3008package android.hardware.soundtrigger {
3009
3010  public class SoundTrigger {
3011    field public static final int STATUS_OK = 0; // 0x0
3012  }
3013
3014  public static class SoundTrigger.RecognitionEvent {
3015    method @Nullable public android.media.AudioFormat getCaptureFormat();
3016    method public int getCaptureSession();
3017    method public byte[] getData();
3018    method public boolean isCaptureAvailable();
3019  }
3020
3021}
3022
3023package android.hardware.usb {
3024
3025  public class UsbDeviceConnection {
3026    method public boolean resetDevice();
3027  }
3028
3029  public class UsbManager {
3030    method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_USB) public java.util.List<android.hardware.usb.UsbPort> getPorts();
3031    method @RequiresPermission(android.Manifest.permission.MANAGE_USB) public void grantPermission(android.hardware.usb.UsbDevice, String);
3032    field @RequiresPermission(android.Manifest.permission.MANAGE_USB) public static final String ACTION_USB_PORT_CHANGED = "android.hardware.usb.action.USB_PORT_CHANGED";
3033  }
3034
3035  public final class UsbPort {
3036    method @RequiresPermission(android.Manifest.permission.MANAGE_USB) @Nullable public android.hardware.usb.UsbPortStatus getStatus();
3037    method @RequiresPermission(android.Manifest.permission.MANAGE_USB) public void setRoles(int, int);
3038  }
3039
3040  public final class UsbPortStatus implements android.os.Parcelable {
3041    method public int describeContents();
3042    method public int getCurrentDataRole();
3043    method public int getCurrentMode();
3044    method public int getCurrentPowerRole();
3045    method public int getSupportedRoleCombinations();
3046    method public boolean isConnected();
3047    method public boolean isRoleCombinationSupported(int, int);
3048    method public void writeToParcel(android.os.Parcel, int);
3049    field @NonNull public static final android.os.Parcelable.Creator<android.hardware.usb.UsbPortStatus> CREATOR;
3050    field public static final int DATA_ROLE_DEVICE = 2; // 0x2
3051    field public static final int DATA_ROLE_HOST = 1; // 0x1
3052    field public static final int DATA_ROLE_NONE = 0; // 0x0
3053    field public static final int MODE_AUDIO_ACCESSORY = 4; // 0x4
3054    field public static final int MODE_DEBUG_ACCESSORY = 8; // 0x8
3055    field public static final int MODE_DFP = 2; // 0x2
3056    field public static final int MODE_NONE = 0; // 0x0
3057    field public static final int MODE_UFP = 1; // 0x1
3058    field public static final int POWER_ROLE_NONE = 0; // 0x0
3059    field public static final int POWER_ROLE_SINK = 2; // 0x2
3060    field public static final int POWER_ROLE_SOURCE = 1; // 0x1
3061  }
3062
3063}
3064
3065package android.location {
3066
3067  public abstract class BatchedLocationCallback {
3068    ctor public BatchedLocationCallback();
3069    method public void onLocationBatch(java.util.List<android.location.Location>);
3070  }
3071
3072  public final class GnssCapabilities {
3073    method public boolean hasGeofencing();
3074    method public boolean hasLowPowerMode();
3075    method public boolean hasMeasurementCorrections();
3076    method public boolean hasMeasurementCorrectionsExcessPathLength();
3077    method public boolean hasMeasurementCorrectionsLosSats();
3078    method public boolean hasMeasurementCorrectionsReflectingPane();
3079    method public boolean hasMeasurements();
3080    method public boolean hasNavMessages();
3081    method public boolean hasSatelliteBlacklist();
3082  }
3083
3084  public final class GnssMeasurementCorrections implements android.os.Parcelable {
3085    method public int describeContents();
3086    method @FloatRange(from=-1000.0F, to=10000.0f) public double getAltitudeMeters();
3087    method @FloatRange(from=0.0f) public double getHorizontalPositionUncertaintyMeters();
3088    method @FloatRange(from=-90.0F, to=90.0f) public double getLatitudeDegrees();
3089    method @FloatRange(from=-180.0F, to=180.0f) public double getLongitudeDegrees();
3090    method @NonNull public java.util.List<android.location.GnssSingleSatCorrection> getSingleSatelliteCorrectionList();
3091    method @IntRange(from=0) public long getToaGpsNanosecondsOfWeek();
3092    method @FloatRange(from=0.0f) public double getVerticalPositionUncertaintyMeters();
3093    method public void writeToParcel(@NonNull android.os.Parcel, int);
3094    field public static final android.os.Parcelable.Creator<android.location.GnssMeasurementCorrections> CREATOR;
3095  }
3096
3097  public static final class GnssMeasurementCorrections.Builder {
3098    ctor public GnssMeasurementCorrections.Builder();
3099    method @NonNull public android.location.GnssMeasurementCorrections build();
3100    method @NonNull public android.location.GnssMeasurementCorrections.Builder setAltitudeMeters(@FloatRange(from=-1000.0F, to=10000.0f) double);
3101    method @NonNull public android.location.GnssMeasurementCorrections.Builder setHorizontalPositionUncertaintyMeters(@FloatRange(from=0.0f) double);
3102    method @NonNull public android.location.GnssMeasurementCorrections.Builder setLatitudeDegrees(@FloatRange(from=-90.0F, to=90.0f) double);
3103    method @NonNull public android.location.GnssMeasurementCorrections.Builder setLongitudeDegrees(@FloatRange(from=-180.0F, to=180.0f) double);
3104    method @NonNull public android.location.GnssMeasurementCorrections.Builder setSingleSatelliteCorrectionList(@NonNull java.util.List<android.location.GnssSingleSatCorrection>);
3105    method @NonNull public android.location.GnssMeasurementCorrections.Builder setToaGpsNanosecondsOfWeek(@IntRange(from=0) long);
3106    method @NonNull public android.location.GnssMeasurementCorrections.Builder setVerticalPositionUncertaintyMeters(@FloatRange(from=0.0f) double);
3107  }
3108
3109  public final class GnssReflectingPlane implements android.os.Parcelable {
3110    method public int describeContents();
3111    method @FloatRange(from=-1000.0F, to=10000.0f) public double getAltitudeMeters();
3112    method @FloatRange(from=0.0f, to=360.0f) public double getAzimuthDegrees();
3113    method @FloatRange(from=-90.0F, to=90.0f) public double getLatitudeDegrees();
3114    method @FloatRange(from=-180.0F, to=180.0f) public double getLongitudeDegrees();
3115    method public void writeToParcel(@NonNull android.os.Parcel, int);
3116    field public static final android.os.Parcelable.Creator<android.location.GnssReflectingPlane> CREATOR;
3117  }
3118
3119  public static final class GnssReflectingPlane.Builder {
3120    ctor public GnssReflectingPlane.Builder();
3121    method @NonNull public android.location.GnssReflectingPlane build();
3122    method @NonNull public android.location.GnssReflectingPlane.Builder setAltitudeMeters(@FloatRange(from=-1000.0F, to=10000.0f) double);
3123    method @NonNull public android.location.GnssReflectingPlane.Builder setAzimuthDegrees(@FloatRange(from=0.0f, to=360.0f) double);
3124    method @NonNull public android.location.GnssReflectingPlane.Builder setLatitudeDegrees(@FloatRange(from=-90.0F, to=90.0f) double);
3125    method @NonNull public android.location.GnssReflectingPlane.Builder setLongitudeDegrees(@FloatRange(from=-180.0F, to=180.0f) double);
3126  }
3127
3128  public final class GnssSingleSatCorrection implements android.os.Parcelable {
3129    method public int describeContents();
3130    method @FloatRange(from=0.0f, fromInclusive=false) public float getCarrierFrequencyHz();
3131    method public int getConstellationType();
3132    method @FloatRange(from=0.0f) public float getExcessPathLengthMeters();
3133    method @FloatRange(from=0.0f) public float getExcessPathLengthUncertaintyMeters();
3134    method @FloatRange(from=0.0f, to=1.0f) public float getProbabilityLineOfSight();
3135    method @Nullable public android.location.GnssReflectingPlane getReflectingPlane();
3136    method @IntRange(from=0) public int getSatelliteId();
3137    method public boolean hasExcessPathLength();
3138    method public boolean hasExcessPathLengthUncertainty();
3139    method public boolean hasReflectingPlane();
3140    method public boolean hasValidSatelliteLineOfSight();
3141    method public void writeToParcel(@NonNull android.os.Parcel, int);
3142    field public static final android.os.Parcelable.Creator<android.location.GnssSingleSatCorrection> CREATOR;
3143  }
3144
3145  public static final class GnssSingleSatCorrection.Builder {
3146    ctor public GnssSingleSatCorrection.Builder();
3147    method @NonNull public android.location.GnssSingleSatCorrection build();
3148    method @NonNull public android.location.GnssSingleSatCorrection.Builder setCarrierFrequencyHz(@FloatRange(from=0.0f, fromInclusive=false) float);
3149    method @NonNull public android.location.GnssSingleSatCorrection.Builder setConstellationType(int);
3150    method @NonNull public android.location.GnssSingleSatCorrection.Builder setExcessPathLengthMeters(@FloatRange(from=0.0f) float);
3151    method @NonNull public android.location.GnssSingleSatCorrection.Builder setExcessPathLengthUncertaintyMeters(@FloatRange(from=0.0f) float);
3152    method @NonNull public android.location.GnssSingleSatCorrection.Builder setProbabilityLineOfSight(@FloatRange(from=0.0f, to=1.0f) float);
3153    method @NonNull public android.location.GnssSingleSatCorrection.Builder setReflectingPlane(@Nullable android.location.GnssReflectingPlane);
3154    method @NonNull public android.location.GnssSingleSatCorrection.Builder setSatelliteId(@IntRange(from=0) int);
3155  }
3156
3157  public class GpsClock implements android.os.Parcelable {
3158    method public int describeContents();
3159    method public double getBiasInNs();
3160    method public double getBiasUncertaintyInNs();
3161    method public double getDriftInNsPerSec();
3162    method public double getDriftUncertaintyInNsPerSec();
3163    method public long getFullBiasInNs();
3164    method public short getLeapSecond();
3165    method public long getTimeInNs();
3166    method public double getTimeUncertaintyInNs();
3167    method public byte getType();
3168    method public boolean hasBiasInNs();
3169    method public boolean hasBiasUncertaintyInNs();
3170    method public boolean hasDriftInNsPerSec();
3171    method public boolean hasDriftUncertaintyInNsPerSec();
3172    method public boolean hasFullBiasInNs();
3173    method public boolean hasLeapSecond();
3174    method public boolean hasTimeUncertaintyInNs();
3175    method public void reset();
3176    method public void resetBiasInNs();
3177    method public void resetBiasUncertaintyInNs();
3178    method public void resetDriftInNsPerSec();
3179    method public void resetDriftUncertaintyInNsPerSec();
3180    method public void resetFullBiasInNs();
3181    method public void resetLeapSecond();
3182    method public void resetTimeUncertaintyInNs();
3183    method public void set(android.location.GpsClock);
3184    method public void setBiasInNs(double);
3185    method public void setBiasUncertaintyInNs(double);
3186    method public void setDriftInNsPerSec(double);
3187    method public void setDriftUncertaintyInNsPerSec(double);
3188    method public void setFullBiasInNs(long);
3189    method public void setLeapSecond(short);
3190    method public void setTimeInNs(long);
3191    method public void setTimeUncertaintyInNs(double);
3192    method public void setType(byte);
3193    method public void writeToParcel(android.os.Parcel, int);
3194    field @NonNull public static final android.os.Parcelable.Creator<android.location.GpsClock> CREATOR;
3195    field public static final byte TYPE_GPS_TIME = 2; // 0x2
3196    field public static final byte TYPE_LOCAL_HW_TIME = 1; // 0x1
3197    field public static final byte TYPE_UNKNOWN = 0; // 0x0
3198  }
3199
3200  public class GpsMeasurement implements android.os.Parcelable {
3201    method public int describeContents();
3202    method public double getAccumulatedDeltaRangeInMeters();
3203    method public short getAccumulatedDeltaRangeState();
3204    method public double getAccumulatedDeltaRangeUncertaintyInMeters();
3205    method public double getAzimuthInDeg();
3206    method public double getAzimuthUncertaintyInDeg();
3207    method public int getBitNumber();
3208    method public long getCarrierCycles();
3209    method public float getCarrierFrequencyInHz();
3210    method public double getCarrierPhase();
3211    method public double getCarrierPhaseUncertainty();
3212    method public double getCn0InDbHz();
3213    method public double getCodePhaseInChips();
3214    method public double getCodePhaseUncertaintyInChips();
3215    method public double getDopplerShiftInHz();
3216    method public double getDopplerShiftUncertaintyInHz();
3217    method public double getElevationInDeg();
3218    method public double getElevationUncertaintyInDeg();
3219    method public byte getLossOfLock();
3220    method public byte getMultipathIndicator();
3221    method public byte getPrn();
3222    method public double getPseudorangeInMeters();
3223    method public double getPseudorangeRateInMetersPerSec();
3224    method public double getPseudorangeRateUncertaintyInMetersPerSec();
3225    method public double getPseudorangeUncertaintyInMeters();
3226    method public long getReceivedGpsTowInNs();
3227    method public long getReceivedGpsTowUncertaintyInNs();
3228    method public double getSnrInDb();
3229    method public short getState();
3230    method public short getTimeFromLastBitInMs();
3231    method public double getTimeOffsetInNs();
3232    method public boolean hasAzimuthInDeg();
3233    method public boolean hasAzimuthUncertaintyInDeg();
3234    method public boolean hasBitNumber();
3235    method public boolean hasCarrierCycles();
3236    method public boolean hasCarrierFrequencyInHz();
3237    method public boolean hasCarrierPhase();
3238    method public boolean hasCarrierPhaseUncertainty();
3239    method public boolean hasCodePhaseInChips();
3240    method public boolean hasCodePhaseUncertaintyInChips();
3241    method public boolean hasDopplerShiftInHz();
3242    method public boolean hasDopplerShiftUncertaintyInHz();
3243    method public boolean hasElevationInDeg();
3244    method public boolean hasElevationUncertaintyInDeg();
3245    method public boolean hasPseudorangeInMeters();
3246    method public boolean hasPseudorangeUncertaintyInMeters();
3247    method public boolean hasSnrInDb();
3248    method public boolean hasTimeFromLastBitInMs();
3249    method public boolean isPseudorangeRateCorrected();
3250    method public boolean isUsedInFix();
3251    method public void reset();
3252    method public void resetAzimuthInDeg();
3253    method public void resetAzimuthUncertaintyInDeg();
3254    method public void resetBitNumber();
3255    method public void resetCarrierCycles();
3256    method public void resetCarrierFrequencyInHz();
3257    method public void resetCarrierPhase();
3258    method public void resetCarrierPhaseUncertainty();
3259    method public void resetCodePhaseInChips();
3260    method public void resetCodePhaseUncertaintyInChips();
3261    method public void resetDopplerShiftInHz();
3262    method public void resetDopplerShiftUncertaintyInHz();
3263    method public void resetElevationInDeg();
3264    method public void resetElevationUncertaintyInDeg();
3265    method public void resetPseudorangeInMeters();
3266    method public void resetPseudorangeUncertaintyInMeters();
3267    method public void resetSnrInDb();
3268    method public void resetTimeFromLastBitInMs();
3269    method public void set(android.location.GpsMeasurement);
3270    method public void setAccumulatedDeltaRangeInMeters(double);
3271    method public void setAccumulatedDeltaRangeState(short);
3272    method public void setAccumulatedDeltaRangeUncertaintyInMeters(double);
3273    method public void setAzimuthInDeg(double);
3274    method public void setAzimuthUncertaintyInDeg(double);
3275    method public void setBitNumber(int);
3276    method public void setCarrierCycles(long);
3277    method public void setCarrierFrequencyInHz(float);
3278    method public void setCarrierPhase(double);
3279    method public void setCarrierPhaseUncertainty(double);
3280    method public void setCn0InDbHz(double);
3281    method public void setCodePhaseInChips(double);
3282    method public void setCodePhaseUncertaintyInChips(double);
3283    method public void setDopplerShiftInHz(double);
3284    method public void setDopplerShiftUncertaintyInHz(double);
3285    method public void setElevationInDeg(double);
3286    method public void setElevationUncertaintyInDeg(double);
3287    method public void setLossOfLock(byte);
3288    method public void setMultipathIndicator(byte);
3289    method public void setPrn(byte);
3290    method public void setPseudorangeInMeters(double);
3291    method public void setPseudorangeRateInMetersPerSec(double);
3292    method public void setPseudorangeRateUncertaintyInMetersPerSec(double);
3293    method public void setPseudorangeUncertaintyInMeters(double);
3294    method public void setReceivedGpsTowInNs(long);
3295    method public void setReceivedGpsTowUncertaintyInNs(long);
3296    method public void setSnrInDb(double);
3297    method public void setState(short);
3298    method public void setTimeFromLastBitInMs(short);
3299    method public void setTimeOffsetInNs(double);
3300    method public void setUsedInFix(boolean);
3301    method public void writeToParcel(android.os.Parcel, int);
3302    field public static final short ADR_STATE_CYCLE_SLIP = 4; // 0x4
3303    field public static final short ADR_STATE_RESET = 2; // 0x2
3304    field public static final short ADR_STATE_UNKNOWN = 0; // 0x0
3305    field public static final short ADR_STATE_VALID = 1; // 0x1
3306    field @NonNull public static final android.os.Parcelable.Creator<android.location.GpsMeasurement> CREATOR;
3307    field public static final byte LOSS_OF_LOCK_CYCLE_SLIP = 2; // 0x2
3308    field public static final byte LOSS_OF_LOCK_OK = 1; // 0x1
3309    field public static final byte LOSS_OF_LOCK_UNKNOWN = 0; // 0x0
3310    field public static final byte MULTIPATH_INDICATOR_DETECTED = 1; // 0x1
3311    field public static final byte MULTIPATH_INDICATOR_NOT_USED = 2; // 0x2
3312    field public static final byte MULTIPATH_INDICATOR_UNKNOWN = 0; // 0x0
3313    field public static final short STATE_BIT_SYNC = 2; // 0x2
3314    field public static final short STATE_CODE_LOCK = 1; // 0x1
3315    field public static final short STATE_MSEC_AMBIGUOUS = 16; // 0x10
3316    field public static final short STATE_SUBFRAME_SYNC = 4; // 0x4
3317    field public static final short STATE_TOW_DECODED = 8; // 0x8
3318    field public static final short STATE_UNKNOWN = 0; // 0x0
3319  }
3320
3321  public class GpsMeasurementsEvent implements android.os.Parcelable {
3322    ctor public GpsMeasurementsEvent(android.location.GpsClock, android.location.GpsMeasurement[]);
3323    method public int describeContents();
3324    method @NonNull public android.location.GpsClock getClock();
3325    method @NonNull public java.util.Collection<android.location.GpsMeasurement> getMeasurements();
3326    method public void writeToParcel(android.os.Parcel, int);
3327    field @NonNull public static final android.os.Parcelable.Creator<android.location.GpsMeasurementsEvent> CREATOR;
3328    field public static final int STATUS_GPS_LOCATION_DISABLED = 2; // 0x2
3329    field public static final int STATUS_NOT_SUPPORTED = 0; // 0x0
3330    field public static final int STATUS_READY = 1; // 0x1
3331  }
3332
3333  public static interface GpsMeasurementsEvent.Listener {
3334    method public void onGpsMeasurementsReceived(android.location.GpsMeasurementsEvent);
3335    method public void onStatusChanged(int);
3336  }
3337
3338  public class GpsNavigationMessage implements android.os.Parcelable {
3339    method public int describeContents();
3340    method @NonNull public byte[] getData();
3341    method public short getMessageId();
3342    method public byte getPrn();
3343    method public short getStatus();
3344    method public short getSubmessageId();
3345    method public byte getType();
3346    method public void reset();
3347    method public void set(android.location.GpsNavigationMessage);
3348    method public void setData(byte[]);
3349    method public void setMessageId(short);
3350    method public void setPrn(byte);
3351    method public void setStatus(short);
3352    method public void setSubmessageId(short);
3353    method public void setType(byte);
3354    method public void writeToParcel(android.os.Parcel, int);
3355    field @NonNull public static final android.os.Parcelable.Creator<android.location.GpsNavigationMessage> CREATOR;
3356    field public static final short STATUS_PARITY_PASSED = 1; // 0x1
3357    field public static final short STATUS_PARITY_REBUILT = 2; // 0x2
3358    field public static final short STATUS_UNKNOWN = 0; // 0x0
3359    field public static final byte TYPE_CNAV2 = 4; // 0x4
3360    field public static final byte TYPE_L1CA = 1; // 0x1
3361    field public static final byte TYPE_L2CNAV = 2; // 0x2
3362    field public static final byte TYPE_L5CNAV = 3; // 0x3
3363    field public static final byte TYPE_UNKNOWN = 0; // 0x0
3364  }
3365
3366  public class GpsNavigationMessageEvent implements android.os.Parcelable {
3367    ctor public GpsNavigationMessageEvent(android.location.GpsNavigationMessage);
3368    method public int describeContents();
3369    method @NonNull public android.location.GpsNavigationMessage getNavigationMessage();
3370    method public void writeToParcel(android.os.Parcel, int);
3371    field @NonNull public static final android.os.Parcelable.Creator<android.location.GpsNavigationMessageEvent> CREATOR;
3372    field public static int STATUS_GPS_LOCATION_DISABLED;
3373    field public static int STATUS_NOT_SUPPORTED;
3374    field public static int STATUS_READY;
3375  }
3376
3377  public static interface GpsNavigationMessageEvent.Listener {
3378    method public void onGpsNavigationMessageReceived(android.location.GpsNavigationMessageEvent);
3379    method public void onStatusChanged(int);
3380  }
3381
3382  public class Location implements android.os.Parcelable {
3383    method public boolean isComplete();
3384    method public void makeComplete();
3385    method public void setIsFromMockProvider(boolean);
3386  }
3387
3388  public class LocationManager {
3389    method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public void flushGnssBatch();
3390    method @Nullable public String getExtraLocationControllerPackage();
3391    method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public int getGnssBatchSize();
3392    method @NonNull @RequiresPermission(android.Manifest.permission.ACCESS_FINE_LOCATION) public android.location.GnssCapabilities getGnssCapabilities();
3393    method @RequiresPermission(android.Manifest.permission.ACCESS_FINE_LOCATION) public void injectGnssMeasurementCorrections(@NonNull android.location.GnssMeasurementCorrections);
3394    method public boolean isExtraLocationControllerPackageEnabled();
3395    method public boolean isLocationEnabledForUser(@NonNull android.os.UserHandle);
3396    method public boolean isProviderEnabledForUser(@NonNull String, @NonNull android.os.UserHandle);
3397    method public boolean isProviderPackage(@NonNull String);
3398    method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public boolean registerGnssBatchedLocationCallback(long, boolean, @NonNull android.location.BatchedLocationCallback, @Nullable android.os.Handler);
3399    method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_COARSE_LOCATION, android.Manifest.permission.ACCESS_FINE_LOCATION}) public void requestLocationUpdates(@NonNull android.location.LocationRequest, @NonNull android.location.LocationListener, @Nullable android.os.Looper);
3400    method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_COARSE_LOCATION, android.Manifest.permission.ACCESS_FINE_LOCATION}) public void requestLocationUpdates(@NonNull android.location.LocationRequest, @NonNull android.app.PendingIntent);
3401    method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public void setExtraLocationControllerPackage(@Nullable String);
3402    method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public void setExtraLocationControllerPackageEnabled(boolean);
3403    method @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public void setLocationEnabledForUser(boolean, @NonNull android.os.UserHandle);
3404    method @Deprecated @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public boolean setProviderEnabledForUser(@NonNull String, boolean, @NonNull android.os.UserHandle);
3405    method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public boolean unregisterGnssBatchedLocationCallback(@NonNull android.location.BatchedLocationCallback);
3406  }
3407
3408  public final class LocationRequest implements android.os.Parcelable {
3409    method @NonNull public static android.location.LocationRequest create();
3410    method @NonNull public static android.location.LocationRequest createFromDeprecatedCriteria(@NonNull android.location.Criteria, long, float, boolean);
3411    method @NonNull public static android.location.LocationRequest createFromDeprecatedProvider(@NonNull String, long, float, boolean);
3412    method public int describeContents();
3413    method public long getExpireAt();
3414    method public long getFastestInterval();
3415    method public boolean getHideFromAppOps();
3416    method public long getInterval();
3417    method public int getNumUpdates();
3418    method @NonNull public String getProvider();
3419    method public int getQuality();
3420    method public float getSmallestDisplacement();
3421    method @Nullable public android.os.WorkSource getWorkSource();
3422    method public boolean isLocationSettingsIgnored();
3423    method public boolean isLowPowerMode();
3424    method @NonNull public android.location.LocationRequest setExpireAt(long);
3425    method @NonNull public android.location.LocationRequest setExpireIn(long);
3426    method @NonNull public android.location.LocationRequest setFastestInterval(long);
3427    method public void setHideFromAppOps(boolean);
3428    method @NonNull public android.location.LocationRequest setInterval(long);
3429    method @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) @NonNull public android.location.LocationRequest setLocationSettingsIgnored(boolean);
3430    method @NonNull public android.location.LocationRequest setLowPowerMode(boolean);
3431    method @NonNull public android.location.LocationRequest setNumUpdates(int);
3432    method @NonNull public android.location.LocationRequest setProvider(@NonNull String);
3433    method @NonNull public android.location.LocationRequest setQuality(int);
3434    method @NonNull public android.location.LocationRequest setSmallestDisplacement(float);
3435    method public void setWorkSource(@Nullable android.os.WorkSource);
3436    method public void writeToParcel(android.os.Parcel, int);
3437    field public static final int ACCURACY_BLOCK = 102; // 0x66
3438    field public static final int ACCURACY_CITY = 104; // 0x68
3439    field public static final int ACCURACY_FINE = 100; // 0x64
3440    field @NonNull public static final android.os.Parcelable.Creator<android.location.LocationRequest> CREATOR;
3441    field public static final int POWER_HIGH = 203; // 0xcb
3442    field public static final int POWER_LOW = 201; // 0xc9
3443    field public static final int POWER_NONE = 200; // 0xc8
3444  }
3445
3446}
3447
3448package android.media {
3449
3450  public final class AudioAttributes implements android.os.Parcelable {
3451    method public int getAllFlags();
3452    method public android.os.Bundle getBundle();
3453    method public int getCapturePreset();
3454    field public static final int FLAG_BEACON = 8; // 0x8
3455    field public static final int FLAG_BYPASS_INTERRUPTION_POLICY = 64; // 0x40
3456    field public static final int FLAG_BYPASS_MUTE = 128; // 0x80
3457    field public static final int FLAG_HW_HOTWORD = 32; // 0x20
3458  }
3459
3460  public static class AudioAttributes.Builder {
3461    method public android.media.AudioAttributes.Builder addBundle(@NonNull android.os.Bundle);
3462    method public android.media.AudioAttributes.Builder setCapturePreset(int);
3463    method public android.media.AudioAttributes.Builder setInternalCapturePreset(int);
3464  }
3465
3466  public final class AudioFocusInfo implements android.os.Parcelable {
3467    method public int describeContents();
3468    method @NonNull public android.media.AudioAttributes getAttributes();
3469    method @NonNull public String getClientId();
3470    method public int getClientUid();
3471    method public int getFlags();
3472    method public int getGainRequest();
3473    method public int getLossReceived();
3474    method @NonNull public String getPackageName();
3475    method public void writeToParcel(android.os.Parcel, int);
3476    field @NonNull public static final android.os.Parcelable.Creator<android.media.AudioFocusInfo> CREATOR;
3477  }
3478
3479  public final class AudioFocusRequest {
3480    method public boolean locksFocus();
3481  }
3482
3483  public static final class AudioFocusRequest.Builder {
3484    method @NonNull public android.media.AudioFocusRequest.Builder setLocksFocus(boolean);
3485  }
3486
3487  public class AudioManager {
3488    method @Deprecated public int abandonAudioFocus(android.media.AudioManager.OnAudioFocusChangeListener, android.media.AudioAttributes);
3489    method public void clearAudioServerStateCallback();
3490    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public int dispatchAudioFocusChange(@NonNull android.media.AudioFocusInfo, int, @NonNull android.media.audiopolicy.AudioPolicy);
3491    method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public static java.util.List<android.media.audiopolicy.AudioProductStrategy> getAudioProductStrategies();
3492    method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public static java.util.List<android.media.audiopolicy.AudioVolumeGroup> getAudioVolumeGroups();
3493    method @IntRange(from=0) @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public int getMaxVolumeIndexForAttributes(@NonNull android.media.AudioAttributes);
3494    method @IntRange(from=0) @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public int getMinVolumeIndexForAttributes(@NonNull android.media.AudioAttributes);
3495    method @IntRange(from=0) @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public int getVolumeIndexForAttributes(@NonNull android.media.AudioAttributes);
3496    method public boolean isAudioServerRunning();
3497    method public boolean isHdmiSystemAudioSupported();
3498    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public int registerAudioPolicy(@NonNull android.media.audiopolicy.AudioPolicy);
3499    method public void registerVolumeGroupCallback(@NonNull java.util.concurrent.Executor, @NonNull android.media.AudioManager.VolumeGroupCallback);
3500    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public int requestAudioFocus(android.media.AudioManager.OnAudioFocusChangeListener, @NonNull android.media.AudioAttributes, int, int) throws java.lang.IllegalArgumentException;
3501    method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.MODIFY_PHONE_STATE, android.Manifest.permission.MODIFY_AUDIO_ROUTING}) public int requestAudioFocus(android.media.AudioManager.OnAudioFocusChangeListener, @NonNull android.media.AudioAttributes, int, int, android.media.audiopolicy.AudioPolicy) throws java.lang.IllegalArgumentException;
3502    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public int requestAudioFocus(@NonNull android.media.AudioFocusRequest, @Nullable android.media.audiopolicy.AudioPolicy);
3503    method public void setAudioServerStateCallback(@NonNull java.util.concurrent.Executor, @NonNull android.media.AudioManager.AudioServerStateCallback);
3504    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public void setFocusRequestResult(@NonNull android.media.AudioFocusInfo, int, @NonNull android.media.audiopolicy.AudioPolicy);
3505    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public void setVolumeIndexForAttributes(@NonNull android.media.AudioAttributes, int, int);
3506    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public void unregisterAudioPolicy(@NonNull android.media.audiopolicy.AudioPolicy);
3507    method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING) public void unregisterAudioPolicyAsync(@NonNull android.media.audiopolicy.AudioPolicy);
3508    method public void unregisterVolumeGroupCallback(@NonNull android.media.AudioManager.VolumeGroupCallback);
3509    field public static final int AUDIOFOCUS_FLAG_DELAY_OK = 1; // 0x1
3510    field public static final int AUDIOFOCUS_FLAG_LOCK = 4; // 0x4
3511    field public static final int AUDIOFOCUS_FLAG_PAUSES_ON_DUCKABLE_LOSS = 2; // 0x2
3512    field public static final int SUCCESS = 0; // 0x0
3513  }
3514
3515  public abstract static class AudioManager.AudioServerStateCallback {
3516    ctor public AudioManager.AudioServerStateCallback();
3517    method public void onAudioServerDown();
3518    method public void onAudioServerUp();
3519  }
3520
3521  public abstract static class AudioManager.VolumeGroupCallback {
3522    ctor public AudioManager.VolumeGroupCallback();
3523    method public void onAudioVolumeGroupChanged(int, int);
3524  }
3525
3526  public final class AudioPlaybackConfiguration implements android.os.Parcelable {
3527    method public int getClientPid();
3528    method public int getClientUid();
3529    method public int getPlayerInterfaceId();
3530    method public android.media.PlayerProxy getPlayerProxy();
3531    method public int getPlayerState();
3532    method public int getPlayerType();
3533    field public static final int PLAYER_STATE_IDLE = 1; // 0x1
3534    field public static final int PLAYER_STATE_PAUSED = 3; // 0x3
3535    field public static final int PLAYER_STATE_RELEASED = 0; // 0x0
3536    field public static final int PLAYER_STATE_STARTED = 2; // 0x2
3537    field public static final int PLAYER_STATE_STOPPED = 4; // 0x4
3538    field public static final int PLAYER_STATE_UNKNOWN = -1; // 0xffffffff
3539    field public static final int PLAYER_TYPE_JAM_AUDIOTRACK = 1; // 0x1
3540    field public static final int PLAYER_TYPE_JAM_MEDIAPLAYER = 2; // 0x2
3541    field public static final int PLAYER_TYPE_JAM_SOUNDPOOL = 3; // 0x3
3542    field public static final int PLAYER_TYPE_SLES_AUDIOPLAYER_BUFFERQUEUE = 11; // 0xb
3543    field public static final int PLAYER_TYPE_SLES_AUDIOPLAYER_URI_FD = 12; // 0xc
3544    field public static final int PLAYER_TYPE_UNKNOWN = -1; // 0xffffffff
3545  }
3546
3547  public class AudioRecord implements android.media.AudioRecordingMonitor android.media.AudioRouting android.media.MicrophoneDirection {
3548    ctor public AudioRecord(android.media.AudioAttributes, android.media.AudioFormat, int, int) throws java.lang.IllegalArgumentException;
3549  }
3550
3551  public static class AudioRecord.Builder {
3552    method public android.media.AudioRecord.Builder setAudioAttributes(@NonNull android.media.AudioAttributes) throws java.lang.IllegalArgumentException;
3553    method public android.media.AudioRecord.Builder setSessionId(int) throws java.lang.IllegalArgumentException;
3554  }
3555
3556  public class HwAudioSource {
3557    method public boolean isPlaying();
3558    method public void start();
3559    method public void stop();
3560  }
3561
3562  public static final class HwAudioSource.Builder {
3563    ctor public HwAudioSource.Builder();
3564    method @NonNull public android.media.HwAudioSource build();
3565    method @NonNull public android.media.HwAudioSource.Builder setAudioAttributes(@NonNull android.media.AudioAttributes);
3566    method @NonNull public android.media.HwAudioSource.Builder setAudioDeviceInfo(@NonNull android.media.AudioDeviceInfo);
3567  }
3568
3569  public final class MediaRecorder.AudioSource {
3570    field @RequiresPermission(android.Manifest.permission.CAPTURE_AUDIO_OUTPUT) public static final int ECHO_REFERENCE = 1997; // 0x7cd
3571    field @RequiresPermission(android.Manifest.permission.CAPTURE_AUDIO_HOTWORD) public static final int HOTWORD = 1999; // 0x7cf
3572    field public static final int RADIO_TUNER = 1998; // 0x7ce
3573  }
3574
3575  public class PlayerProxy {
3576    method public void pause();
3577    method public void setPan(float);
3578    method public void setStartDelayMs(int);
3579    method public void setVolume(float);
3580    method public void start();
3581    method public void stop();
3582  }
3583
3584}
3585
3586package android.media.audiopolicy {
3587
3588  public class AudioMix {
3589    method public int getMixState();
3590    field public static final int MIX_STATE_DISABLED = -1; // 0xffffffff
3591    field public static final int MIX_STATE_IDLE = 0; // 0x0
3592    field public static final int MIX_STATE_MIXING = 1; // 0x1
3593    field public static final int ROUTE_FLAG_LOOP_BACK = 2; // 0x2
3594    field public static final int ROUTE_FLAG_RENDER = 1; // 0x1
3595  }
3596
3597  public static class AudioMix.Builder {
3598    ctor public AudioMix.Builder(android.media.audiopolicy.AudioMixingRule) throws java.lang.IllegalArgumentException;
3599    method public android.media.audiopolicy.AudioMix build() throws java.lang.IllegalArgumentException;
3600    method public android.media.audiopolicy.AudioMix.Builder setDevice(@NonNull android.media.AudioDeviceInfo) throws java.lang.IllegalArgumentException;
3601    method public android.media.audiopolicy.AudioMix.Builder setFormat(android.media.AudioFormat) throws java.lang.IllegalArgumentException;
3602    method public android.media.audiopolicy.AudioMix.Builder setRouteFlags(int) throws java.lang.IllegalArgumentException;
3603  }
3604
3605  public class AudioMixingRule {
3606    field public static final int RULE_MATCH_ATTRIBUTE_CAPTURE_PRESET = 2; // 0x2
3607    field public static final int RULE_MATCH_ATTRIBUTE_USAGE = 1; // 0x1
3608    field public static final int RULE_MATCH_UID = 4; // 0x4
3609  }
3610
3611  public static class AudioMixingRule.Builder {
3612    ctor public AudioMixingRule.Builder();
3613    method public android.media.audiopolicy.AudioMixingRule.Builder addMixRule(int, Object) throws java.lang.IllegalArgumentException;
3614    method public android.media.audiopolicy.AudioMixingRule.Builder addRule(android.media.AudioAttributes, int) throws java.lang.IllegalArgumentException;
3615    method @NonNull public android.media.audiopolicy.AudioMixingRule.Builder allowPrivilegedPlaybackCapture(boolean);
3616    method public android.media.audiopolicy.AudioMixingRule build();
3617    method public android.media.audiopolicy.AudioMixingRule.Builder excludeMixRule(int, Object) throws java.lang.IllegalArgumentException;
3618    method public android.media.audiopolicy.AudioMixingRule.Builder excludeRule(android.media.AudioAttributes, int) throws java.lang.IllegalArgumentException;
3619  }
3620
3621  public class AudioPolicy {
3622    method public int attachMixes(@NonNull java.util.List<android.media.audiopolicy.AudioMix>);
3623    method public android.media.AudioRecord createAudioRecordSink(android.media.audiopolicy.AudioMix) throws java.lang.IllegalArgumentException;
3624    method public android.media.AudioTrack createAudioTrackSource(android.media.audiopolicy.AudioMix) throws java.lang.IllegalArgumentException;
3625    method public int detachMixes(@NonNull java.util.List<android.media.audiopolicy.AudioMix>);
3626    method public int getFocusDuckingBehavior();
3627    method public int getStatus();
3628    method public boolean removeUidDeviceAffinity(int);
3629    method public int setFocusDuckingBehavior(int) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException;
3630    method public void setRegistration(String);
3631    method public boolean setUidDeviceAffinity(int, @NonNull java.util.List<android.media.AudioDeviceInfo>);
3632    method public String toLogFriendlyString();
3633    field public static final int FOCUS_POLICY_DUCKING_DEFAULT = 0; // 0x0
3634    field public static final int FOCUS_POLICY_DUCKING_IN_APP = 0; // 0x0
3635    field public static final int FOCUS_POLICY_DUCKING_IN_POLICY = 1; // 0x1
3636    field public static final int POLICY_STATUS_REGISTERED = 2; // 0x2
3637    field public static final int POLICY_STATUS_UNREGISTERED = 1; // 0x1
3638  }
3639
3640  public abstract static class AudioPolicy.AudioPolicyFocusListener {
3641    ctor public AudioPolicy.AudioPolicyFocusListener();
3642    method public void onAudioFocusAbandon(android.media.AudioFocusInfo);
3643    method public void onAudioFocusGrant(android.media.AudioFocusInfo, int);
3644    method public void onAudioFocusLoss(android.media.AudioFocusInfo, boolean);
3645    method public void onAudioFocusRequest(android.media.AudioFocusInfo, int);
3646  }
3647
3648  public abstract static class AudioPolicy.AudioPolicyStatusListener {
3649    ctor public AudioPolicy.AudioPolicyStatusListener();
3650    method public void onMixStateUpdate(android.media.audiopolicy.AudioMix);
3651    method public void onStatusChange();
3652  }
3653
3654  public abstract static class AudioPolicy.AudioPolicyVolumeCallback {
3655    ctor public AudioPolicy.AudioPolicyVolumeCallback();
3656    method public void onVolumeAdjustment(int);
3657  }
3658
3659  public static class AudioPolicy.Builder {
3660    ctor public AudioPolicy.Builder(android.content.Context);
3661    method @NonNull public android.media.audiopolicy.AudioPolicy.Builder addMix(@NonNull android.media.audiopolicy.AudioMix) throws java.lang.IllegalArgumentException;
3662    method @NonNull public android.media.audiopolicy.AudioPolicy build();
3663    method public void setAudioPolicyFocusListener(android.media.audiopolicy.AudioPolicy.AudioPolicyFocusListener);
3664    method public void setAudioPolicyStatusListener(android.media.audiopolicy.AudioPolicy.AudioPolicyStatusListener);
3665    method @NonNull public android.media.audiopolicy.AudioPolicy.Builder setAudioPolicyVolumeCallback(@NonNull android.media.audiopolicy.AudioPolicy.AudioPolicyVolumeCallback);
3666    method @NonNull public android.media.audiopolicy.AudioPolicy.Builder setIsAudioFocusPolicy(boolean);
3667    method @NonNull public android.media.audiopolicy.AudioPolicy.Builder setLooper(@NonNull android.os.Looper) throws java.lang.IllegalArgumentException;
3668  }
3669
3670  public final class AudioProductStrategy implements android.os.Parcelable {
3671    method public int describeContents();
3672    method @NonNull public android.media.AudioAttributes getAudioAttributes();
3673    method public int getId();
3674    method public void writeToParcel(@NonNull android.os.Parcel, int);
3675    field @NonNull public static final android.os.Parcelable.Creator<android.media.audiopolicy.AudioProductStrategy> CREATOR;
3676  }
3677
3678  public final class AudioVolumeGroup implements android.os.Parcelable {
3679    method public int describeContents();
3680    method @NonNull public java.util.List<android.media.AudioAttributes> getAudioAttributes();
3681    method public int getId();
3682    method @NonNull public int[] getLegacyStreamTypes();
3683    method @NonNull public String name();
3684    method public void writeToParcel(@NonNull android.os.Parcel, int);
3685    field public static final android.os.Parcelable.Creator<android.media.audiopolicy.AudioVolumeGroup> CREATOR;
3686    field public static final int DEFAULT_VOLUME_GROUP = -1; // 0xffffffff
3687  }
3688
3689}
3690
3691package android.media.session {
3692
3693  public final class MediaSessionManager {
3694    method @RequiresPermission(android.Manifest.permission.SET_MEDIA_KEY_LISTENER) public void setOnMediaKeyListener(android.media.session.MediaSessionManager.OnMediaKeyListener, @Nullable android.os.Handler);
3695    method @RequiresPermission(android.Manifest.permission.SET_VOLUME_KEY_LONG_PRESS_LISTENER) public void setOnVolumeKeyLongPressListener(android.media.session.MediaSessionManager.OnVolumeKeyLongPressListener, @Nullable android.os.Handler);
3696  }
3697
3698  public static interface MediaSessionManager.OnMediaKeyListener {
3699    method public boolean onMediaKey(android.view.KeyEvent);
3700  }
3701
3702  public static interface MediaSessionManager.OnVolumeKeyLongPressListener {
3703    method public void onVolumeKeyLongPress(android.view.KeyEvent);
3704  }
3705
3706}
3707
3708package android.media.soundtrigger {
3709
3710  public abstract class SoundTriggerDetectionService extends android.app.Service {
3711    ctor public SoundTriggerDetectionService();
3712    method @MainThread public void onConnected(@NonNull java.util.UUID, @Nullable android.os.Bundle);
3713    method @MainThread public void onDisconnected(@NonNull java.util.UUID, @Nullable android.os.Bundle);
3714    method @MainThread public void onError(@NonNull java.util.UUID, @Nullable android.os.Bundle, int, int);
3715    method @MainThread public void onGenericRecognitionEvent(@NonNull java.util.UUID, @Nullable android.os.Bundle, int, @NonNull android.hardware.soundtrigger.SoundTrigger.RecognitionEvent);
3716    method @MainThread public abstract void onStopOperation(@NonNull java.util.UUID, @Nullable android.os.Bundle, int);
3717    method public final void operationFinished(@Nullable java.util.UUID, int);
3718  }
3719
3720  public final class SoundTriggerDetector {
3721    method @RequiresPermission(android.Manifest.permission.MANAGE_SOUND_TRIGGER) public boolean startRecognition(int);
3722    method @RequiresPermission(android.Manifest.permission.MANAGE_SOUND_TRIGGER) public boolean stopRecognition();
3723    field public static final int RECOGNITION_FLAG_ALLOW_MULTIPLE_TRIGGERS = 2; // 0x2
3724    field public static final int RECOGNITION_FLAG_CAPTURE_TRIGGER_AUDIO = 1; // 0x1
3725  }
3726
3727  public abstract static class SoundTriggerDetector.Callback {
3728    ctor public SoundTriggerDetector.Callback();
3729    method public abstract void onAvailabilityChanged(int);
3730    method public abstract void onDetected(@NonNull android.media.soundtrigger.SoundTriggerDetector.EventPayload);
3731    method public abstract void onError();
3732    method public abstract void onRecognitionPaused();
3733    method public abstract void onRecognitionResumed();
3734  }
3735
3736  public static class SoundTriggerDetector.EventPayload {
3737    method @Nullable public android.media.AudioFormat getCaptureAudioFormat();
3738    method @Nullable public byte[] getTriggerAudio();
3739  }
3740
3741  public final class SoundTriggerManager {
3742    method @Nullable @RequiresPermission(android.Manifest.permission.MANAGE_SOUND_TRIGGER) public android.media.soundtrigger.SoundTriggerDetector createSoundTriggerDetector(java.util.UUID, @NonNull android.media.soundtrigger.SoundTriggerDetector.Callback, @Nullable android.os.Handler);
3743    method @RequiresPermission(android.Manifest.permission.MANAGE_SOUND_TRIGGER) public void deleteModel(java.util.UUID);
3744    method public int getDetectionServiceOperationsTimeout();
3745    method @RequiresPermission(android.Manifest.permission.MANAGE_SOUND_TRIGGER) public android.media.soundtrigger.SoundTriggerManager.Model getModel(java.util.UUID);
3746    method @RequiresPermission(android.Manifest.permission.MANAGE_SOUND_TRIGGER) public void updateModel(android.media.soundtrigger.SoundTriggerManager.Model);
3747  }
3748
3749  public static class SoundTriggerManager.Model {
3750    method public static android.media.soundtrigger.SoundTriggerManager.Model create(java.util.UUID, java.util.UUID, byte[]);
3751    method public byte[] getModelData();
3752    method public java.util.UUID getModelUuid();
3753    method public java.util.UUID getVendorUuid();
3754  }
3755
3756}
3757
3758package android.media.tv {
3759
3760  public final class TvContentRatingSystemInfo implements android.os.Parcelable {
3761    method public static android.media.tv.TvContentRatingSystemInfo createTvContentRatingSystemInfo(int, android.content.pm.ApplicationInfo);
3762    method public int describeContents();
3763    method public android.net.Uri getXmlUri();
3764    method public boolean isSystemDefined();
3765    method public void writeToParcel(android.os.Parcel, int);
3766  }
3767
3768  public final class TvContract {
3769    method public static android.net.Uri buildChannelsUriForInput(@Nullable String, boolean);
3770    method public static android.net.Uri buildChannelsUriForInput(@Nullable String, @Nullable String, boolean);
3771    field public static final String ACTION_CHANNEL_BROWSABLE_REQUESTED = "android.media.tv.action.CHANNEL_BROWSABLE_REQUESTED";
3772    field public static final String EXTRA_BLOCKED_PACKAGES = "android.media.tv.extra.BLOCKED_PACKAGES";
3773    field public static final String EXTRA_COLUMN_NAME = "android.media.tv.extra.COLUMN_NAME";
3774    field public static final String EXTRA_DATA_TYPE = "android.media.tv.extra.DATA_TYPE";
3775    field public static final String EXTRA_DEFAULT_VALUE = "android.media.tv.extra.DEFAULT_VALUE";
3776    field public static final String EXTRA_EXISTING_COLUMN_NAMES = "android.media.tv.extra.EXISTING_COLUMN_NAMES";
3777    field public static final String EXTRA_PACKAGE_NAME = "android.media.tv.extra.PACKAGE_NAME";
3778    field public static final String EXTRA_RESULT_CODE = "android.media.tv.extra.RESULT_CODE";
3779    field public static final String METHOD_ADD_COLUMN = "add_column";
3780    field public static final String METHOD_BLOCK_PACKAGE = "block_package";
3781    field public static final String METHOD_GET_BLOCKED_PACKAGES = "get_blocked_packages";
3782    field public static final String METHOD_GET_COLUMNS = "get_columns";
3783    field public static final String METHOD_UNBLOCK_PACKAGE = "unblock_package";
3784    field public static final int RESULT_ERROR_INVALID_ARGUMENT = 2; // 0x2
3785    field public static final int RESULT_ERROR_IO = 1; // 0x1
3786    field public static final int RESULT_OK = 0; // 0x0
3787  }
3788
3789  public static final class TvContract.WatchedPrograms implements android.media.tv.TvContract.BaseTvColumns {
3790    field public static final String COLUMN_CHANNEL_ID = "channel_id";
3791    field public static final String COLUMN_DESCRIPTION = "description";
3792    field public static final String COLUMN_END_TIME_UTC_MILLIS = "end_time_utc_millis";
3793    field public static final String COLUMN_INTERNAL_SESSION_TOKEN = "session_token";
3794    field public static final String COLUMN_INTERNAL_TUNE_PARAMS = "tune_params";
3795    field public static final String COLUMN_START_TIME_UTC_MILLIS = "start_time_utc_millis";
3796    field public static final String COLUMN_TITLE = "title";
3797    field public static final String COLUMN_WATCH_END_TIME_UTC_MILLIS = "watch_end_time_utc_millis";
3798    field public static final String COLUMN_WATCH_START_TIME_UTC_MILLIS = "watch_start_time_utc_millis";
3799    field public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/watched_program";
3800    field public static final String CONTENT_TYPE = "vnd.android.cursor.dir/watched_program";
3801    field public static final android.net.Uri CONTENT_URI;
3802  }
3803
3804  public final class TvInputHardwareInfo implements android.os.Parcelable {
3805    method public int describeContents();
3806    method public String getAudioAddress();
3807    method public int getAudioType();
3808    method public int getCableConnectionStatus();
3809    method public int getDeviceId();
3810    method public int getHdmiPortId();
3811    method public int getType();
3812    method public void readFromParcel(android.os.Parcel);
3813    method public void writeToParcel(android.os.Parcel, int);
3814    field public static final int CABLE_CONNECTION_STATUS_CONNECTED = 1; // 0x1
3815    field public static final int CABLE_CONNECTION_STATUS_DISCONNECTED = 2; // 0x2
3816    field public static final int CABLE_CONNECTION_STATUS_UNKNOWN = 0; // 0x0
3817    field @NonNull public static final android.os.Parcelable.Creator<android.media.tv.TvInputHardwareInfo> CREATOR;
3818    field public static final int TV_INPUT_TYPE_COMPONENT = 6; // 0x6
3819    field public static final int TV_INPUT_TYPE_COMPOSITE = 3; // 0x3
3820    field public static final int TV_INPUT_TYPE_DISPLAY_PORT = 10; // 0xa
3821    field public static final int TV_INPUT_TYPE_DVI = 8; // 0x8
3822    field public static final int TV_INPUT_TYPE_HDMI = 9; // 0x9
3823    field public static final int TV_INPUT_TYPE_OTHER_HARDWARE = 1; // 0x1
3824    field public static final int TV_INPUT_TYPE_SCART = 5; // 0x5
3825    field public static final int TV_INPUT_TYPE_SVIDEO = 4; // 0x4
3826    field public static final int TV_INPUT_TYPE_TUNER = 2; // 0x2
3827    field public static final int TV_INPUT_TYPE_VGA = 7; // 0x7
3828  }
3829
3830  public static final class TvInputHardwareInfo.Builder {
3831    ctor public TvInputHardwareInfo.Builder();
3832    method public android.media.tv.TvInputHardwareInfo.Builder audioAddress(String);
3833    method public android.media.tv.TvInputHardwareInfo.Builder audioType(int);
3834    method public android.media.tv.TvInputHardwareInfo build();
3835    method public android.media.tv.TvInputHardwareInfo.Builder cableConnectionStatus(int);
3836    method public android.media.tv.TvInputHardwareInfo.Builder deviceId(int);
3837    method public android.media.tv.TvInputHardwareInfo.Builder hdmiPortId(int);
3838    method public android.media.tv.TvInputHardwareInfo.Builder type(int);
3839  }
3840
3841  public final class TvInputInfo implements android.os.Parcelable {
3842    method @Deprecated public static android.media.tv.TvInputInfo createTvInputInfo(android.content.Context, android.content.pm.ResolveInfo, android.hardware.hdmi.HdmiDeviceInfo, String, String, android.net.Uri) throws java.io.IOException, org.xmlpull.v1.XmlPullParserException;
3843    method @Deprecated public static android.media.tv.TvInputInfo createTvInputInfo(android.content.Context, android.content.pm.ResolveInfo, android.hardware.hdmi.HdmiDeviceInfo, String, int, android.graphics.drawable.Icon) throws java.io.IOException, org.xmlpull.v1.XmlPullParserException;
3844    method @Deprecated public static android.media.tv.TvInputInfo createTvInputInfo(android.content.Context, android.content.pm.ResolveInfo, android.media.tv.TvInputHardwareInfo, String, android.net.Uri) throws java.io.IOException, org.xmlpull.v1.XmlPullParserException;
3845    method @Deprecated public static android.media.tv.TvInputInfo createTvInputInfo(android.content.Context, android.content.pm.ResolveInfo, android.media.tv.TvInputHardwareInfo, int, android.graphics.drawable.Icon) throws java.io.IOException, org.xmlpull.v1.XmlPullParserException;
3846    method public android.hardware.hdmi.HdmiDeviceInfo getHdmiDeviceInfo();
3847    method public boolean isConnectedToHdmiSwitch();
3848    method public boolean isHardwareInput();
3849    method public android.graphics.drawable.Drawable loadIcon(@NonNull android.content.Context, int);
3850  }
3851
3852  public static final class TvInputInfo.Builder {
3853    method public android.media.tv.TvInputInfo.Builder setHdmiDeviceInfo(android.hardware.hdmi.HdmiDeviceInfo);
3854    method public android.media.tv.TvInputInfo.Builder setIcon(android.graphics.drawable.Icon);
3855    method public android.media.tv.TvInputInfo.Builder setIcon(android.graphics.drawable.Icon, int);
3856    method public android.media.tv.TvInputInfo.Builder setLabel(CharSequence);
3857    method public android.media.tv.TvInputInfo.Builder setLabel(@StringRes int);
3858    method public android.media.tv.TvInputInfo.Builder setParentId(String);
3859    method public android.media.tv.TvInputInfo.Builder setTvInputHardwareInfo(android.media.tv.TvInputHardwareInfo);
3860  }
3861
3862  public static final class TvInputInfo.TvInputSettings {
3863    method public static java.util.Map<java.lang.String,java.lang.String> getCustomLabels(android.content.Context, int);
3864    method public static java.util.Set<java.lang.String> getHiddenTvInputIds(android.content.Context, int);
3865    method public static void putCustomLabels(android.content.Context, java.util.Map<java.lang.String,java.lang.String>, int);
3866    method public static void putHiddenTvInputs(android.content.Context, java.util.Set<java.lang.String>, int);
3867  }
3868
3869  public final class TvInputManager {
3870    method @RequiresPermission(android.Manifest.permission.TV_INPUT_HARDWARE) public android.media.tv.TvInputManager.Hardware acquireTvInputHardware(int, android.media.tv.TvInputInfo, android.media.tv.TvInputManager.HardwareCallback);
3871    method @RequiresPermission(android.Manifest.permission.MODIFY_PARENTAL_CONTROLS) public void addBlockedRating(@NonNull android.media.tv.TvContentRating);
3872    method @RequiresPermission(android.Manifest.permission.CAPTURE_TV_INPUT) public boolean captureFrame(String, android.view.Surface, android.media.tv.TvStreamConfig);
3873    method @RequiresPermission(android.Manifest.permission.CAPTURE_TV_INPUT) public java.util.List<android.media.tv.TvStreamConfig> getAvailableTvStreamConfigList(String);
3874    method @RequiresPermission(android.Manifest.permission.TV_INPUT_HARDWARE) public java.util.List<android.media.tv.TvInputHardwareInfo> getHardwareList();
3875    method @RequiresPermission(android.Manifest.permission.READ_CONTENT_RATING_SYSTEMS) public java.util.List<android.media.tv.TvContentRatingSystemInfo> getTvContentRatingSystemList();
3876    method @RequiresPermission(android.Manifest.permission.CAPTURE_TV_INPUT) public boolean isSingleSessionActive();
3877    method @RequiresPermission(android.Manifest.permission.NOTIFY_TV_INPUTS) public void notifyPreviewProgramAddedToWatchNext(String, long, long);
3878    method @RequiresPermission(android.Manifest.permission.NOTIFY_TV_INPUTS) public void notifyPreviewProgramBrowsableDisabled(String, long);
3879    method @RequiresPermission(android.Manifest.permission.NOTIFY_TV_INPUTS) public void notifyWatchNextProgramBrowsableDisabled(String, long);
3880    method @RequiresPermission(android.Manifest.permission.TV_INPUT_HARDWARE) public void releaseTvInputHardware(int, android.media.tv.TvInputManager.Hardware);
3881    method @RequiresPermission(android.Manifest.permission.MODIFY_PARENTAL_CONTROLS) public void removeBlockedRating(@NonNull android.media.tv.TvContentRating);
3882    method @RequiresPermission(android.Manifest.permission.MODIFY_PARENTAL_CONTROLS) public void setParentalControlsEnabled(boolean);
3883  }
3884
3885  public static final class TvInputManager.Hardware {
3886    method public void overrideAudioSink(int, String, int, int, int);
3887    method public void setStreamVolume(float);
3888    method public boolean setSurface(android.view.Surface, android.media.tv.TvStreamConfig);
3889  }
3890
3891  public abstract static class TvInputManager.HardwareCallback {
3892    ctor public TvInputManager.HardwareCallback();
3893    method public abstract void onReleased();
3894    method public abstract void onStreamConfigChanged(android.media.tv.TvStreamConfig[]);
3895  }
3896
3897  public abstract class TvInputService extends android.app.Service {
3898    method @Nullable public android.media.tv.TvInputInfo onHardwareAdded(android.media.tv.TvInputHardwareInfo);
3899    method @Nullable public String onHardwareRemoved(android.media.tv.TvInputHardwareInfo);
3900    method @Nullable public android.media.tv.TvInputInfo onHdmiDeviceAdded(android.hardware.hdmi.HdmiDeviceInfo);
3901    method @Nullable public String onHdmiDeviceRemoved(android.hardware.hdmi.HdmiDeviceInfo);
3902  }
3903
3904  public abstract static class TvInputService.RecordingSession {
3905    method public void notifySessionEvent(@NonNull String, android.os.Bundle);
3906  }
3907
3908  public abstract static class TvInputService.Session implements android.view.KeyEvent.Callback {
3909    method public void notifySessionEvent(@NonNull String, android.os.Bundle);
3910    method public void onSetMain(boolean);
3911  }
3912
3913  public abstract static class TvRecordingClient.RecordingCallback {
3914    method public void onEvent(String, String, android.os.Bundle);
3915  }
3916
3917  public class TvStreamConfig implements android.os.Parcelable {
3918    method public int describeContents();
3919    method public int getGeneration();
3920    method public int getMaxHeight();
3921    method public int getMaxWidth();
3922    method public int getStreamId();
3923    method public int getType();
3924    method public void writeToParcel(android.os.Parcel, int);
3925    field @NonNull public static final android.os.Parcelable.Creator<android.media.tv.TvStreamConfig> CREATOR;
3926    field public static final int STREAM_TYPE_BUFFER_PRODUCER = 2; // 0x2
3927    field public static final int STREAM_TYPE_INDEPENDENT_VIDEO_SOURCE = 1; // 0x1
3928  }
3929
3930  public static final class TvStreamConfig.Builder {
3931    ctor public TvStreamConfig.Builder();
3932    method public android.media.tv.TvStreamConfig build();
3933    method public android.media.tv.TvStreamConfig.Builder generation(int);
3934    method public android.media.tv.TvStreamConfig.Builder maxHeight(int);
3935    method public android.media.tv.TvStreamConfig.Builder maxWidth(int);
3936    method public android.media.tv.TvStreamConfig.Builder streamId(int);
3937    method public android.media.tv.TvStreamConfig.Builder type(int);
3938  }
3939
3940  public class TvView extends android.view.ViewGroup {
3941    method @RequiresPermission("android.permission.CHANGE_HDMI_CEC_ACTIVE_SOURCE") public void setMain();
3942    method @RequiresPermission(android.Manifest.permission.MODIFY_PARENTAL_CONTROLS) public void unblockContent(android.media.tv.TvContentRating);
3943  }
3944
3945  public abstract static class TvView.TvInputCallback {
3946    method public void onEvent(String, String, android.os.Bundle);
3947  }
3948
3949}
3950
3951package android.metrics {
3952
3953  public class LogMaker {
3954    ctor public LogMaker(int);
3955    ctor public LogMaker(Object[]);
3956    method public android.metrics.LogMaker addTaggedData(int, Object);
3957    method public android.metrics.LogMaker clearCategory();
3958    method public android.metrics.LogMaker clearPackageName();
3959    method public android.metrics.LogMaker clearSubtype();
3960    method public android.metrics.LogMaker clearTaggedData(int);
3961    method public android.metrics.LogMaker clearType();
3962    method public void deserialize(Object[]);
3963    method public int getCategory();
3964    method public long getCounterBucket();
3965    method public String getCounterName();
3966    method public int getCounterValue();
3967    method public String getPackageName();
3968    method public int getProcessId();
3969    method public int getSubtype();
3970    method public Object getTaggedData(int);
3971    method public long getTimestamp();
3972    method public int getType();
3973    method public int getUid();
3974    method public boolean isLongCounterBucket();
3975    method public boolean isSubsetOf(android.metrics.LogMaker);
3976    method public boolean isValidValue(Object);
3977    method public Object[] serialize();
3978    method public android.metrics.LogMaker setCategory(int);
3979    method public android.metrics.LogMaker setPackageName(String);
3980    method public android.metrics.LogMaker setSubtype(int);
3981    method public android.metrics.LogMaker setType(int);
3982  }
3983
3984  public class MetricsReader {
3985    ctor public MetricsReader();
3986    method public void checkpoint();
3987    method public boolean hasNext();
3988    method public android.metrics.LogMaker next();
3989    method public void read(long);
3990    method public void reset();
3991  }
3992
3993}
3994
3995package android.net {
3996
3997  public class CaptivePortal implements android.os.Parcelable {
3998    method public void logEvent(int, @NonNull String);
3999    method public void useNetwork();
4000    field public static final int APP_RETURN_DISMISSED = 0; // 0x0
4001    field public static final int APP_RETURN_UNWANTED = 1; // 0x1
4002    field public static final int APP_RETURN_WANTED_AS_IS = 2; // 0x2
4003  }
4004
4005  public class ConnectivityManager {
4006    method @NonNull @RequiresPermission(android.Manifest.permission.PACKET_KEEPALIVE_OFFLOAD) public android.net.SocketKeepalive createNattKeepalive(@NonNull android.net.Network, @NonNull android.os.ParcelFileDescriptor, @NonNull java.net.InetAddress, @NonNull java.net.InetAddress, @NonNull java.util.concurrent.Executor, @NonNull android.net.SocketKeepalive.Callback);
4007    method @NonNull @RequiresPermission(android.Manifest.permission.PACKET_KEEPALIVE_OFFLOAD) public android.net.SocketKeepalive createSocketKeepalive(@NonNull android.net.Network, @NonNull java.net.Socket, @NonNull java.util.concurrent.Executor, @NonNull android.net.SocketKeepalive.Callback);
4008    method @RequiresPermission(android.Manifest.permission.LOCAL_MAC_ADDRESS) public String getCaptivePortalServerUrl();
4009    method @RequiresPermission(android.Manifest.permission.TETHER_PRIVILEGED) public void getLatestTetheringEntitlementResult(int, boolean, @NonNull java.util.concurrent.Executor, @NonNull android.net.ConnectivityManager.OnTetheringEntitlementResultListener);
4010    method @RequiresPermission(anyOf={android.Manifest.permission.TETHER_PRIVILEGED, android.Manifest.permission.WRITE_SETTINGS}) public boolean isTetheringSupported();
4011    method @RequiresPermission(android.Manifest.permission.TETHER_PRIVILEGED) public void registerTetheringEventCallback(@NonNull java.util.concurrent.Executor, @NonNull android.net.ConnectivityManager.OnTetheringEventCallback);
4012    method @RequiresPermission(anyOf={"android.permission.NETWORK_SETTINGS", android.Manifest.permission.NETWORK_SETUP_WIZARD, "android.permission.NETWORK_STACK"}) public void setAirplaneMode(boolean);
4013    method @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, "android.permission.NETWORK_STACK"}) public boolean shouldAvoidBadWifi();
4014    method @RequiresPermission(android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK) public void startCaptivePortalApp(@NonNull android.net.Network, @NonNull android.os.Bundle);
4015    method @RequiresPermission(android.Manifest.permission.TETHER_PRIVILEGED) public void startTethering(int, boolean, android.net.ConnectivityManager.OnStartTetheringCallback);
4016    method @RequiresPermission(android.Manifest.permission.TETHER_PRIVILEGED) public void startTethering(int, boolean, android.net.ConnectivityManager.OnStartTetheringCallback, android.os.Handler);
4017    method @RequiresPermission(android.Manifest.permission.TETHER_PRIVILEGED) public void stopTethering(int);
4018    method @RequiresPermission(android.Manifest.permission.TETHER_PRIVILEGED) public void unregisterTetheringEventCallback(@NonNull android.net.ConnectivityManager.OnTetheringEventCallback);
4019    field public static final String EXTRA_CAPTIVE_PORTAL_PROBE_SPEC = "android.net.extra.CAPTIVE_PORTAL_PROBE_SPEC";
4020    field public static final String EXTRA_CAPTIVE_PORTAL_USER_AGENT = "android.net.extra.CAPTIVE_PORTAL_USER_AGENT";
4021    field public static final int TETHERING_BLUETOOTH = 2; // 0x2
4022    field public static final int TETHERING_USB = 1; // 0x1
4023    field public static final int TETHERING_WIFI = 0; // 0x0
4024    field public static final int TETHER_ERROR_ENTITLEMENT_UNKONWN = 13; // 0xd
4025    field public static final int TETHER_ERROR_NO_ERROR = 0; // 0x0
4026    field public static final int TETHER_ERROR_PROVISION_FAILED = 11; // 0xb
4027  }
4028
4029  public abstract static class ConnectivityManager.OnStartTetheringCallback {
4030    ctor public ConnectivityManager.OnStartTetheringCallback();
4031    method public void onTetheringFailed();
4032    method public void onTetheringStarted();
4033  }
4034
4035  public static interface ConnectivityManager.OnTetheringEntitlementResultListener {
4036    method public void onTetheringEntitlementResult(int);
4037  }
4038
4039  public abstract static class ConnectivityManager.OnTetheringEventCallback {
4040    ctor public ConnectivityManager.OnTetheringEventCallback();
4041    method public void onUpstreamChanged(@Nullable android.net.Network);
4042  }
4043
4044  public final class IpPrefix implements android.os.Parcelable {
4045    ctor public IpPrefix(@NonNull java.net.InetAddress, @IntRange(from=0, to=128) int);
4046    ctor public IpPrefix(@NonNull String);
4047  }
4048
4049  public final class IpSecManager {
4050    method @RequiresPermission(android.Manifest.permission.MANAGE_IPSEC_TUNNELS) public void applyTunnelModeTransform(@NonNull android.net.IpSecManager.IpSecTunnelInterface, int, @NonNull android.net.IpSecTransform) throws java.io.IOException;
4051    method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_IPSEC_TUNNELS) public android.net.IpSecManager.IpSecTunnelInterface createIpSecTunnelInterface(@NonNull java.net.InetAddress, @NonNull java.net.InetAddress, @NonNull android.net.Network) throws java.io.IOException, android.net.IpSecManager.ResourceUnavailableException;
4052  }
4053
4054  public static final class IpSecManager.IpSecTunnelInterface implements java.lang.AutoCloseable {
4055    method @RequiresPermission(android.Manifest.permission.MANAGE_IPSEC_TUNNELS) public void addAddress(@NonNull java.net.InetAddress, int) throws java.io.IOException;
4056    method public void close();
4057    method @NonNull public String getInterfaceName();
4058    method @RequiresPermission(android.Manifest.permission.MANAGE_IPSEC_TUNNELS) public void removeAddress(@NonNull java.net.InetAddress, int) throws java.io.IOException;
4059  }
4060
4061  public static class IpSecTransform.Builder {
4062    method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_IPSEC_TUNNELS) public android.net.IpSecTransform buildTunnelModeTransform(@NonNull java.net.InetAddress, @NonNull android.net.IpSecManager.SecurityParameterIndex) throws java.io.IOException, android.net.IpSecManager.ResourceUnavailableException, android.net.IpSecManager.SpiUnavailableException;
4063  }
4064
4065  public class LinkAddress implements android.os.Parcelable {
4066    ctor public LinkAddress(@NonNull java.net.InetAddress, @IntRange(from=0, to=128) int, int, int);
4067    ctor public LinkAddress(@NonNull java.net.InetAddress, @IntRange(from=0, to=128) int);
4068    ctor public LinkAddress(@NonNull String);
4069    ctor public LinkAddress(@NonNull String, int, int);
4070    method public boolean isGlobalPreferred();
4071    method public boolean isIpv4();
4072    method public boolean isIpv6();
4073    method public boolean isSameAddressAs(@Nullable android.net.LinkAddress);
4074  }
4075
4076  public final class LinkProperties implements android.os.Parcelable {
4077    ctor public LinkProperties(@Nullable android.net.LinkProperties);
4078    method public boolean addDnsServer(@NonNull java.net.InetAddress);
4079    method public boolean addLinkAddress(@NonNull android.net.LinkAddress);
4080    method @Nullable public android.net.IpPrefix getNat64Prefix();
4081    method @NonNull public java.util.List<java.net.InetAddress> getPcscfServers();
4082    method @Nullable public String getTcpBufferSizes();
4083    method @NonNull public java.util.List<java.net.InetAddress> getValidatedPrivateDnsServers();
4084    method public boolean hasGlobalIpv6Address();
4085    method public boolean hasIpv4Address();
4086    method public boolean hasIpv6DefaultRoute();
4087    method public boolean isIpv4Provisioned();
4088    method public boolean isIpv6Provisioned();
4089    method public boolean isProvisioned();
4090    method public boolean isReachable(@NonNull java.net.InetAddress);
4091    method public boolean removeDnsServer(@NonNull java.net.InetAddress);
4092    method public boolean removeLinkAddress(@NonNull android.net.LinkAddress);
4093    method public boolean removeRoute(@NonNull android.net.RouteInfo);
4094    method public void setNat64Prefix(@Nullable android.net.IpPrefix);
4095    method public void setPcscfServers(@NonNull java.util.Collection<java.net.InetAddress>);
4096    method public void setPrivateDnsServerName(@Nullable String);
4097    method public void setTcpBufferSizes(@Nullable String);
4098    method public void setUsePrivateDns(boolean);
4099    method public void setValidatedPrivateDnsServers(@NonNull java.util.Collection<java.net.InetAddress>);
4100  }
4101
4102  public class Network implements android.os.Parcelable {
4103    ctor public Network(@NonNull android.net.Network);
4104    method @NonNull public android.net.Network getPrivateDnsBypassingCopy();
4105  }
4106
4107  public final class NetworkCapabilities implements android.os.Parcelable {
4108    method @NonNull public int[] getTransportTypes();
4109    method public boolean satisfiedByNetworkCapabilities(@Nullable android.net.NetworkCapabilities);
4110    field public static final int NET_CAPABILITY_OEM_PAID = 22; // 0x16
4111    field public static final int NET_CAPABILITY_PARTIAL_CONNECTIVITY = 24; // 0x18
4112  }
4113
4114  public class NetworkKey implements android.os.Parcelable {
4115    ctor public NetworkKey(android.net.WifiKey);
4116    method public int describeContents();
4117    method public void writeToParcel(android.os.Parcel, int);
4118    field @NonNull public static final android.os.Parcelable.Creator<android.net.NetworkKey> CREATOR;
4119    field public static final int TYPE_WIFI = 1; // 0x1
4120    field public final int type;
4121    field public final android.net.WifiKey wifiKey;
4122  }
4123
4124  public abstract class NetworkRecommendationProvider {
4125    ctor public NetworkRecommendationProvider(android.content.Context, java.util.concurrent.Executor);
4126    method public final android.os.IBinder getBinder();
4127    method public abstract void onRequestScores(android.net.NetworkKey[]);
4128  }
4129
4130  public static class NetworkRequest.Builder {
4131    method @NonNull @RequiresPermission(android.Manifest.permission.NETWORK_SIGNAL_STRENGTH_WAKEUP) public android.net.NetworkRequest.Builder setSignalStrength(int);
4132  }
4133
4134  public class NetworkScoreManager {
4135    method @RequiresPermission(anyOf={android.Manifest.permission.SCORE_NETWORKS, "android.permission.REQUEST_NETWORK_SCORES"}) public boolean clearScores() throws java.lang.SecurityException;
4136    method @RequiresPermission(anyOf={android.Manifest.permission.SCORE_NETWORKS, "android.permission.REQUEST_NETWORK_SCORES"}) public void disableScoring() throws java.lang.SecurityException;
4137    method @RequiresPermission(anyOf={android.Manifest.permission.SCORE_NETWORKS, "android.permission.REQUEST_NETWORK_SCORES"}) public String getActiveScorerPackage();
4138    method @RequiresPermission(anyOf={android.Manifest.permission.SCORE_NETWORKS, "android.permission.REQUEST_NETWORK_SCORES"}) public boolean setActiveScorer(String) throws java.lang.SecurityException;
4139    method @RequiresPermission(android.Manifest.permission.SCORE_NETWORKS) public boolean updateScores(android.net.ScoredNetwork[]) throws java.lang.SecurityException;
4140    field public static final String ACTION_CHANGE_ACTIVE = "android.net.scoring.CHANGE_ACTIVE";
4141    field public static final String ACTION_CUSTOM_ENABLE = "android.net.scoring.CUSTOM_ENABLE";
4142    field public static final String ACTION_RECOMMEND_NETWORKS = "android.net.action.RECOMMEND_NETWORKS";
4143    field public static final String ACTION_SCORER_CHANGED = "android.net.scoring.SCORER_CHANGED";
4144    field public static final String ACTION_SCORE_NETWORKS = "android.net.scoring.SCORE_NETWORKS";
4145    field public static final String EXTRA_NETWORKS_TO_SCORE = "networksToScore";
4146    field public static final String EXTRA_NEW_SCORER = "newScorer";
4147    field public static final String EXTRA_PACKAGE_NAME = "packageName";
4148  }
4149
4150  public class NetworkStack {
4151    field public static final String PERMISSION_MAINLINE_NETWORK_STACK = "android.permission.MAINLINE_NETWORK_STACK";
4152  }
4153
4154  public final class RouteInfo implements android.os.Parcelable {
4155    ctor public RouteInfo(@Nullable android.net.IpPrefix, @Nullable java.net.InetAddress, @Nullable String, int);
4156    method public int getType();
4157    field public static final int RTN_THROW = 9; // 0x9
4158    field public static final int RTN_UNICAST = 1; // 0x1
4159    field public static final int RTN_UNREACHABLE = 7; // 0x7
4160  }
4161
4162  public class RssiCurve implements android.os.Parcelable {
4163    ctor public RssiCurve(int, int, byte[]);
4164    ctor public RssiCurve(int, int, byte[], int);
4165    method public int describeContents();
4166    method public byte lookupScore(int);
4167    method public byte lookupScore(int, boolean);
4168    method public void writeToParcel(android.os.Parcel, int);
4169    field @NonNull public static final android.os.Parcelable.Creator<android.net.RssiCurve> CREATOR;
4170    field public final int activeNetworkRssiBoost;
4171    field public final int bucketWidth;
4172    field public final byte[] rssiBuckets;
4173    field public final int start;
4174  }
4175
4176  public class ScoredNetwork implements android.os.Parcelable {
4177    ctor public ScoredNetwork(android.net.NetworkKey, android.net.RssiCurve);
4178    ctor public ScoredNetwork(android.net.NetworkKey, android.net.RssiCurve, boolean);
4179    ctor public ScoredNetwork(android.net.NetworkKey, android.net.RssiCurve, boolean, @Nullable android.os.Bundle);
4180    method public int calculateBadge(int);
4181    method public int describeContents();
4182    method public void writeToParcel(android.os.Parcel, int);
4183    field public static final String ATTRIBUTES_KEY_BADGING_CURVE = "android.net.attributes.key.BADGING_CURVE";
4184    field public static final String ATTRIBUTES_KEY_HAS_CAPTIVE_PORTAL = "android.net.attributes.key.HAS_CAPTIVE_PORTAL";
4185    field public static final String ATTRIBUTES_KEY_RANKING_SCORE_OFFSET = "android.net.attributes.key.RANKING_SCORE_OFFSET";
4186    field @NonNull public static final android.os.Parcelable.Creator<android.net.ScoredNetwork> CREATOR;
4187    field @Nullable public final android.os.Bundle attributes;
4188    field public final boolean meteredHint;
4189    field public final android.net.NetworkKey networkKey;
4190    field public final android.net.RssiCurve rssiCurve;
4191  }
4192
4193  public final class StaticIpConfiguration implements android.os.Parcelable {
4194    ctor public StaticIpConfiguration();
4195    ctor public StaticIpConfiguration(@Nullable android.net.StaticIpConfiguration);
4196    method public void addDnsServer(@NonNull java.net.InetAddress);
4197    method public void clear();
4198    method public int describeContents();
4199    method @NonNull public java.util.List<java.net.InetAddress> getDnsServers();
4200    method @Nullable public String getDomains();
4201    method @Nullable public java.net.InetAddress getGateway();
4202    method @Nullable public android.net.LinkAddress getIpAddress();
4203    method @NonNull public java.util.List<android.net.RouteInfo> getRoutes(@Nullable String);
4204    method public void writeToParcel(android.os.Parcel, int);
4205    field @NonNull public static final android.os.Parcelable.Creator<android.net.StaticIpConfiguration> CREATOR;
4206  }
4207
4208  public static final class StaticIpConfiguration.Builder {
4209    ctor public StaticIpConfiguration.Builder();
4210    method @NonNull public android.net.StaticIpConfiguration build();
4211    method @NonNull public android.net.StaticIpConfiguration.Builder setDnsServers(@NonNull Iterable<java.net.InetAddress>);
4212    method @NonNull public android.net.StaticIpConfiguration.Builder setDomains(@Nullable String);
4213    method @NonNull public android.net.StaticIpConfiguration.Builder setGateway(@Nullable java.net.InetAddress);
4214    method @NonNull public android.net.StaticIpConfiguration.Builder setIpAddress(@Nullable android.net.LinkAddress);
4215  }
4216
4217  public class TrafficStats {
4218    method public static void setThreadStatsTagApp();
4219    method public static void setThreadStatsTagBackup();
4220    method public static void setThreadStatsTagRestore();
4221    field public static final int TAG_NETWORK_STACK_IMPERSONATION_RANGE_END = -113; // 0xffffff8f
4222    field public static final int TAG_NETWORK_STACK_IMPERSONATION_RANGE_START = -128; // 0xffffff80
4223    field public static final int TAG_NETWORK_STACK_RANGE_END = -257; // 0xfffffeff
4224    field public static final int TAG_NETWORK_STACK_RANGE_START = -768; // 0xfffffd00
4225    field public static final int TAG_SYSTEM_IMPERSONATION_RANGE_END = -241; // 0xffffff0f
4226    field public static final int TAG_SYSTEM_IMPERSONATION_RANGE_START = -256; // 0xffffff00
4227  }
4228
4229  public abstract class Uri implements java.lang.Comparable<android.net.Uri> android.os.Parcelable {
4230    method @NonNull public String toSafeString();
4231  }
4232
4233  public class VpnService extends android.app.Service {
4234    method @RequiresPermission(android.Manifest.permission.CONTROL_VPN) public static void prepareAndAuthorize(android.content.Context);
4235  }
4236
4237  public class WebAddress {
4238    ctor public WebAddress(String) throws android.net.ParseException;
4239  }
4240
4241  public class WifiKey implements android.os.Parcelable {
4242    ctor public WifiKey(String, String);
4243    method public int describeContents();
4244    method public void writeToParcel(android.os.Parcel, int);
4245    field @NonNull public static final android.os.Parcelable.Creator<android.net.WifiKey> CREATOR;
4246    field public final String bssid;
4247    field public final String ssid;
4248  }
4249
4250}
4251
4252package android.net.apf {
4253
4254  public final class ApfCapabilities implements android.os.Parcelable {
4255    ctor public ApfCapabilities(int, int, int);
4256    method public int describeContents();
4257    method public static boolean getApfDrop8023Frames();
4258    method @NonNull public static int[] getApfEtherTypeBlackList();
4259    method public boolean hasDataAccess();
4260    method public void writeToParcel(android.os.Parcel, int);
4261    field public static final android.os.Parcelable.Creator<android.net.apf.ApfCapabilities> CREATOR;
4262    field public final int apfPacketFormat;
4263    field public final int apfVersionSupported;
4264    field public final int maximumApfProgramSize;
4265  }
4266
4267}
4268
4269package android.net.metrics {
4270
4271  public final class ApfProgramEvent implements android.net.metrics.IpConnectivityLog.Event {
4272  }
4273
4274  public static final class ApfProgramEvent.Builder {
4275    ctor public ApfProgramEvent.Builder();
4276    method @NonNull public android.net.metrics.ApfProgramEvent build();
4277    method @NonNull public android.net.metrics.ApfProgramEvent.Builder setActualLifetime(long);
4278    method @NonNull public android.net.metrics.ApfProgramEvent.Builder setCurrentRas(int);
4279    method @NonNull public android.net.metrics.ApfProgramEvent.Builder setFilteredRas(int);
4280    method @NonNull public android.net.metrics.ApfProgramEvent.Builder setFlags(boolean, boolean);
4281    method @NonNull public android.net.metrics.ApfProgramEvent.Builder setLifetime(long);
4282    method @NonNull public android.net.metrics.ApfProgramEvent.Builder setProgramLength(int);
4283  }
4284
4285  public final class ApfStats implements android.net.metrics.IpConnectivityLog.Event {
4286  }
4287
4288  public static final class ApfStats.Builder {
4289    ctor public ApfStats.Builder();
4290    method @NonNull public android.net.metrics.ApfStats build();
4291    method @NonNull public android.net.metrics.ApfStats.Builder setDroppedRas(int);
4292    method @NonNull public android.net.metrics.ApfStats.Builder setDurationMs(long);
4293    method @NonNull public android.net.metrics.ApfStats.Builder setMatchingRas(int);
4294    method @NonNull public android.net.metrics.ApfStats.Builder setMaxProgramSize(int);
4295    method @NonNull public android.net.metrics.ApfStats.Builder setParseErrors(int);
4296    method @NonNull public android.net.metrics.ApfStats.Builder setProgramUpdates(int);
4297    method @NonNull public android.net.metrics.ApfStats.Builder setProgramUpdatesAll(int);
4298    method @NonNull public android.net.metrics.ApfStats.Builder setProgramUpdatesAllowingMulticast(int);
4299    method @NonNull public android.net.metrics.ApfStats.Builder setReceivedRas(int);
4300    method @NonNull public android.net.metrics.ApfStats.Builder setZeroLifetimeRas(int);
4301  }
4302
4303  public final class DhcpClientEvent implements android.net.metrics.IpConnectivityLog.Event {
4304  }
4305
4306  public static final class DhcpClientEvent.Builder {
4307    ctor public DhcpClientEvent.Builder();
4308    method @NonNull public android.net.metrics.DhcpClientEvent build();
4309    method @NonNull public android.net.metrics.DhcpClientEvent.Builder setDurationMs(int);
4310    method @NonNull public android.net.metrics.DhcpClientEvent.Builder setMsg(String);
4311  }
4312
4313  public final class DhcpErrorEvent implements android.net.metrics.IpConnectivityLog.Event {
4314    ctor public DhcpErrorEvent(int);
4315    method public static int errorCodeWithOption(int, int);
4316    field public static final int BOOTP_TOO_SHORT = 67174400; // 0x4010000
4317    field public static final int BUFFER_UNDERFLOW = 83951616; // 0x5010000
4318    field public static final int DHCP_BAD_MAGIC_COOKIE = 67239936; // 0x4020000
4319    field public static final int DHCP_ERROR = 4; // 0x4
4320    field public static final int DHCP_INVALID_OPTION_LENGTH = 67305472; // 0x4030000
4321    field public static final int DHCP_NO_COOKIE = 67502080; // 0x4060000
4322    field public static final int DHCP_NO_MSG_TYPE = 67371008; // 0x4040000
4323    field public static final int DHCP_UNKNOWN_MSG_TYPE = 67436544; // 0x4050000
4324    field public static final int L2_ERROR = 1; // 0x1
4325    field public static final int L2_TOO_SHORT = 16842752; // 0x1010000
4326    field public static final int L2_WRONG_ETH_TYPE = 16908288; // 0x1020000
4327    field public static final int L3_ERROR = 2; // 0x2
4328    field public static final int L3_INVALID_IP = 33751040; // 0x2030000
4329    field public static final int L3_NOT_IPV4 = 33685504; // 0x2020000
4330    field public static final int L3_TOO_SHORT = 33619968; // 0x2010000
4331    field public static final int L4_ERROR = 3; // 0x3
4332    field public static final int L4_NOT_UDP = 50397184; // 0x3010000
4333    field public static final int L4_WRONG_PORT = 50462720; // 0x3020000
4334    field public static final int MISC_ERROR = 5; // 0x5
4335    field public static final int PARSING_ERROR = 84082688; // 0x5030000
4336    field public static final int RECEIVE_ERROR = 84017152; // 0x5020000
4337  }
4338
4339  public class IpConnectivityLog {
4340    ctor public IpConnectivityLog();
4341    method public boolean log(long, @NonNull android.net.metrics.IpConnectivityLog.Event);
4342    method public boolean log(@NonNull String, @NonNull android.net.metrics.IpConnectivityLog.Event);
4343    method public boolean log(@NonNull android.net.Network, @NonNull int[], @NonNull android.net.metrics.IpConnectivityLog.Event);
4344    method public boolean log(int, @NonNull int[], @NonNull android.net.metrics.IpConnectivityLog.Event);
4345    method public boolean log(@NonNull android.net.metrics.IpConnectivityLog.Event);
4346  }
4347
4348  public static interface IpConnectivityLog.Event extends android.os.Parcelable {
4349  }
4350
4351  public final class IpManagerEvent implements android.net.metrics.IpConnectivityLog.Event {
4352    ctor public IpManagerEvent(int, long);
4353    field public static final int COMPLETE_LIFECYCLE = 3; // 0x3
4354    field public static final int ERROR_INTERFACE_NOT_FOUND = 8; // 0x8
4355    field public static final int ERROR_INVALID_PROVISIONING = 7; // 0x7
4356    field public static final int ERROR_STARTING_IPREACHABILITYMONITOR = 6; // 0x6
4357    field public static final int ERROR_STARTING_IPV4 = 4; // 0x4
4358    field public static final int ERROR_STARTING_IPV6 = 5; // 0x5
4359    field public static final int PROVISIONING_FAIL = 2; // 0x2
4360    field public static final int PROVISIONING_OK = 1; // 0x1
4361  }
4362
4363  public final class IpReachabilityEvent implements android.net.metrics.IpConnectivityLog.Event {
4364    ctor public IpReachabilityEvent(int);
4365    field public static final int NUD_FAILED = 512; // 0x200
4366    field public static final int NUD_FAILED_ORGANIC = 1024; // 0x400
4367    field public static final int PROBE = 256; // 0x100
4368    field public static final int PROVISIONING_LOST = 768; // 0x300
4369    field public static final int PROVISIONING_LOST_ORGANIC = 1280; // 0x500
4370  }
4371
4372  public final class NetworkEvent implements android.net.metrics.IpConnectivityLog.Event {
4373    ctor public NetworkEvent(int, long);
4374    ctor public NetworkEvent(int);
4375    field public static final int NETWORK_CAPTIVE_PORTAL_FOUND = 4; // 0x4
4376    field public static final int NETWORK_CONNECTED = 1; // 0x1
4377    field public static final int NETWORK_CONSECUTIVE_DNS_TIMEOUT_FOUND = 12; // 0xc
4378    field public static final int NETWORK_DISCONNECTED = 7; // 0x7
4379    field public static final int NETWORK_FIRST_VALIDATION_PORTAL_FOUND = 10; // 0xa
4380    field public static final int NETWORK_FIRST_VALIDATION_SUCCESS = 8; // 0x8
4381    field public static final int NETWORK_LINGER = 5; // 0x5
4382    field public static final int NETWORK_PARTIAL_CONNECTIVITY = 13; // 0xd
4383    field public static final int NETWORK_REVALIDATION_PORTAL_FOUND = 11; // 0xb
4384    field public static final int NETWORK_REVALIDATION_SUCCESS = 9; // 0x9
4385    field public static final int NETWORK_UNLINGER = 6; // 0x6
4386    field public static final int NETWORK_VALIDATED = 2; // 0x2
4387    field public static final int NETWORK_VALIDATION_FAILED = 3; // 0x3
4388  }
4389
4390  public final class RaEvent implements android.net.metrics.IpConnectivityLog.Event {
4391  }
4392
4393  public static final class RaEvent.Builder {
4394    ctor public RaEvent.Builder();
4395    method @NonNull public android.net.metrics.RaEvent build();
4396    method @NonNull public android.net.metrics.RaEvent.Builder updateDnsslLifetime(long);
4397    method @NonNull public android.net.metrics.RaEvent.Builder updatePrefixPreferredLifetime(long);
4398    method @NonNull public android.net.metrics.RaEvent.Builder updatePrefixValidLifetime(long);
4399    method @NonNull public android.net.metrics.RaEvent.Builder updateRdnssLifetime(long);
4400    method @NonNull public android.net.metrics.RaEvent.Builder updateRouteInfoLifetime(long);
4401    method @NonNull public android.net.metrics.RaEvent.Builder updateRouterLifetime(long);
4402  }
4403
4404  public final class ValidationProbeEvent implements android.net.metrics.IpConnectivityLog.Event {
4405    method @NonNull public static String getProbeName(int);
4406    field public static final int DNS_FAILURE = 0; // 0x0
4407    field public static final int DNS_SUCCESS = 1; // 0x1
4408    field public static final int PROBE_DNS = 0; // 0x0
4409    field public static final int PROBE_FALLBACK = 4; // 0x4
4410    field public static final int PROBE_HTTP = 1; // 0x1
4411    field public static final int PROBE_HTTPS = 2; // 0x2
4412    field public static final int PROBE_PAC = 3; // 0x3
4413    field public static final int PROBE_PRIVDNS = 5; // 0x5
4414  }
4415
4416  public static final class ValidationProbeEvent.Builder {
4417    ctor public ValidationProbeEvent.Builder();
4418    method @NonNull public android.net.metrics.ValidationProbeEvent build();
4419    method @NonNull public android.net.metrics.ValidationProbeEvent.Builder setDurationMs(long);
4420    method @NonNull public android.net.metrics.ValidationProbeEvent.Builder setProbeType(int, boolean);
4421    method @NonNull public android.net.metrics.ValidationProbeEvent.Builder setReturnCode(int);
4422  }
4423
4424}
4425
4426package android.net.util {
4427
4428  public final class SocketUtils {
4429    method public static void bindSocketToInterface(@NonNull java.io.FileDescriptor, @NonNull String) throws android.system.ErrnoException;
4430    method public static void closeSocket(@Nullable java.io.FileDescriptor) throws java.io.IOException;
4431    method @NonNull public static java.net.SocketAddress makeNetlinkSocketAddress(int, int);
4432    method @NonNull public static java.net.SocketAddress makePacketSocketAddress(int, int);
4433    method @NonNull public static java.net.SocketAddress makePacketSocketAddress(int, @NonNull byte[]);
4434  }
4435
4436}
4437
4438package android.net.wifi {
4439
4440  public abstract class EasyConnectStatusCallback {
4441    ctor public EasyConnectStatusCallback();
4442    method public abstract void onConfiguratorSuccess(int);
4443    method public abstract void onEnrolleeSuccess(int);
4444    method public abstract void onFailure(int);
4445    method public abstract void onProgress(int);
4446    field public static final int EASY_CONNECT_EVENT_FAILURE_AUTHENTICATION = -2; // 0xfffffffe
4447    field public static final int EASY_CONNECT_EVENT_FAILURE_BUSY = -5; // 0xfffffffb
4448    field public static final int EASY_CONNECT_EVENT_FAILURE_CONFIGURATION = -4; // 0xfffffffc
4449    field public static final int EASY_CONNECT_EVENT_FAILURE_GENERIC = -7; // 0xfffffff9
4450    field public static final int EASY_CONNECT_EVENT_FAILURE_INVALID_NETWORK = -9; // 0xfffffff7
4451    field public static final int EASY_CONNECT_EVENT_FAILURE_INVALID_URI = -1; // 0xffffffff
4452    field public static final int EASY_CONNECT_EVENT_FAILURE_NOT_COMPATIBLE = -3; // 0xfffffffd
4453    field public static final int EASY_CONNECT_EVENT_FAILURE_NOT_SUPPORTED = -8; // 0xfffffff8
4454    field public static final int EASY_CONNECT_EVENT_FAILURE_TIMEOUT = -6; // 0xfffffffa
4455    field public static final int EASY_CONNECT_EVENT_PROGRESS_AUTHENTICATION_SUCCESS = 0; // 0x0
4456    field public static final int EASY_CONNECT_EVENT_PROGRESS_RESPONSE_PENDING = 1; // 0x1
4457    field public static final int EASY_CONNECT_EVENT_SUCCESS_CONFIGURATION_SENT = 0; // 0x0
4458  }
4459
4460  @Deprecated public class RttManager {
4461    method @Deprecated @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public void disableResponder(android.net.wifi.RttManager.ResponderCallback);
4462    method @Deprecated @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public void enableResponder(android.net.wifi.RttManager.ResponderCallback);
4463    method @Deprecated public android.net.wifi.RttManager.Capabilities getCapabilities();
4464    method @Deprecated @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public android.net.wifi.RttManager.RttCapabilities getRttCapabilities();
4465    method @Deprecated @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public void startRanging(android.net.wifi.RttManager.RttParams[], android.net.wifi.RttManager.RttListener);
4466    method @Deprecated @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public void stopRanging(android.net.wifi.RttManager.RttListener);
4467    field @Deprecated public static final int BASE = 160256; // 0x27200
4468    field @Deprecated public static final int CMD_OP_ABORTED = 160260; // 0x27204
4469    field @Deprecated public static final int CMD_OP_DISABLE_RESPONDER = 160262; // 0x27206
4470    field @Deprecated public static final int CMD_OP_ENABLE_RESPONDER = 160261; // 0x27205
4471    field @Deprecated public static final int CMD_OP_ENALBE_RESPONDER_FAILED = 160264; // 0x27208
4472    field @Deprecated public static final int CMD_OP_ENALBE_RESPONDER_SUCCEEDED = 160263; // 0x27207
4473    field @Deprecated public static final int CMD_OP_FAILED = 160258; // 0x27202
4474    field @Deprecated public static final int CMD_OP_START_RANGING = 160256; // 0x27200
4475    field @Deprecated public static final int CMD_OP_STOP_RANGING = 160257; // 0x27201
4476    field @Deprecated public static final int CMD_OP_SUCCEEDED = 160259; // 0x27203
4477    field @Deprecated public static final String DESCRIPTION_KEY = "android.net.wifi.RttManager.Description";
4478    field @Deprecated public static final int PREAMBLE_HT = 2; // 0x2
4479    field @Deprecated public static final int PREAMBLE_LEGACY = 1; // 0x1
4480    field @Deprecated public static final int PREAMBLE_VHT = 4; // 0x4
4481    field @Deprecated public static final int REASON_INITIATOR_NOT_ALLOWED_WHEN_RESPONDER_ON = -6; // 0xfffffffa
4482    field @Deprecated public static final int REASON_INVALID_LISTENER = -3; // 0xfffffffd
4483    field @Deprecated public static final int REASON_INVALID_REQUEST = -4; // 0xfffffffc
4484    field @Deprecated public static final int REASON_NOT_AVAILABLE = -2; // 0xfffffffe
4485    field @Deprecated public static final int REASON_PERMISSION_DENIED = -5; // 0xfffffffb
4486    field @Deprecated public static final int REASON_UNSPECIFIED = -1; // 0xffffffff
4487    field @Deprecated public static final int RTT_BW_10_SUPPORT = 2; // 0x2
4488    field @Deprecated public static final int RTT_BW_160_SUPPORT = 32; // 0x20
4489    field @Deprecated public static final int RTT_BW_20_SUPPORT = 4; // 0x4
4490    field @Deprecated public static final int RTT_BW_40_SUPPORT = 8; // 0x8
4491    field @Deprecated public static final int RTT_BW_5_SUPPORT = 1; // 0x1
4492    field @Deprecated public static final int RTT_BW_80_SUPPORT = 16; // 0x10
4493    field @Deprecated public static final int RTT_CHANNEL_WIDTH_10 = 6; // 0x6
4494    field @Deprecated public static final int RTT_CHANNEL_WIDTH_160 = 3; // 0x3
4495    field @Deprecated public static final int RTT_CHANNEL_WIDTH_20 = 0; // 0x0
4496    field @Deprecated public static final int RTT_CHANNEL_WIDTH_40 = 1; // 0x1
4497    field @Deprecated public static final int RTT_CHANNEL_WIDTH_5 = 5; // 0x5
4498    field @Deprecated public static final int RTT_CHANNEL_WIDTH_80 = 2; // 0x2
4499    field @Deprecated public static final int RTT_CHANNEL_WIDTH_80P80 = 4; // 0x4
4500    field @Deprecated public static final int RTT_CHANNEL_WIDTH_UNSPECIFIED = -1; // 0xffffffff
4501    field @Deprecated public static final int RTT_PEER_NAN = 5; // 0x5
4502    field @Deprecated public static final int RTT_PEER_P2P_CLIENT = 4; // 0x4
4503    field @Deprecated public static final int RTT_PEER_P2P_GO = 3; // 0x3
4504    field @Deprecated public static final int RTT_PEER_TYPE_AP = 1; // 0x1
4505    field @Deprecated public static final int RTT_PEER_TYPE_STA = 2; // 0x2
4506    field @Deprecated public static final int RTT_PEER_TYPE_UNSPECIFIED = 0; // 0x0
4507    field @Deprecated public static final int RTT_STATUS_ABORTED = 8; // 0x8
4508    field @Deprecated public static final int RTT_STATUS_FAILURE = 1; // 0x1
4509    field @Deprecated public static final int RTT_STATUS_FAIL_AP_ON_DIFF_CHANNEL = 6; // 0x6
4510    field @Deprecated public static final int RTT_STATUS_FAIL_BUSY_TRY_LATER = 12; // 0xc
4511    field @Deprecated public static final int RTT_STATUS_FAIL_FTM_PARAM_OVERRIDE = 15; // 0xf
4512    field @Deprecated public static final int RTT_STATUS_FAIL_INVALID_TS = 9; // 0x9
4513    field @Deprecated public static final int RTT_STATUS_FAIL_NOT_SCHEDULED_YET = 4; // 0x4
4514    field @Deprecated public static final int RTT_STATUS_FAIL_NO_CAPABILITY = 7; // 0x7
4515    field @Deprecated public static final int RTT_STATUS_FAIL_NO_RSP = 2; // 0x2
4516    field @Deprecated public static final int RTT_STATUS_FAIL_PROTOCOL = 10; // 0xa
4517    field @Deprecated public static final int RTT_STATUS_FAIL_REJECTED = 3; // 0x3
4518    field @Deprecated public static final int RTT_STATUS_FAIL_SCHEDULE = 11; // 0xb
4519    field @Deprecated public static final int RTT_STATUS_FAIL_TM_TIMEOUT = 5; // 0x5
4520    field @Deprecated public static final int RTT_STATUS_INVALID_REQ = 13; // 0xd
4521    field @Deprecated public static final int RTT_STATUS_NO_WIFI = 14; // 0xe
4522    field @Deprecated public static final int RTT_STATUS_SUCCESS = 0; // 0x0
4523    field @Deprecated public static final int RTT_TYPE_11_MC = 4; // 0x4
4524    field @Deprecated public static final int RTT_TYPE_11_V = 2; // 0x2
4525    field @Deprecated public static final int RTT_TYPE_ONE_SIDED = 1; // 0x1
4526    field @Deprecated public static final int RTT_TYPE_TWO_SIDED = 2; // 0x2
4527    field @Deprecated public static final int RTT_TYPE_UNSPECIFIED = 0; // 0x0
4528  }
4529
4530  @Deprecated public class RttManager.Capabilities {
4531    ctor @Deprecated public RttManager.Capabilities();
4532    field @Deprecated public int supportedPeerType;
4533    field @Deprecated public int supportedType;
4534  }
4535
4536  @Deprecated public static class RttManager.ParcelableRttParams implements android.os.Parcelable {
4537    field @Deprecated @NonNull public android.net.wifi.RttManager.RttParams[] mParams;
4538  }
4539
4540  @Deprecated public static class RttManager.ParcelableRttResults implements android.os.Parcelable {
4541    ctor @Deprecated public RttManager.ParcelableRttResults(android.net.wifi.RttManager.RttResult[]);
4542    field @Deprecated public android.net.wifi.RttManager.RttResult[] mResults;
4543  }
4544
4545  @Deprecated public abstract static class RttManager.ResponderCallback {
4546    ctor @Deprecated public RttManager.ResponderCallback();
4547    method @Deprecated public abstract void onResponderEnableFailure(int);
4548    method @Deprecated public abstract void onResponderEnabled(android.net.wifi.RttManager.ResponderConfig);
4549  }
4550
4551  @Deprecated public static class RttManager.ResponderConfig implements android.os.Parcelable {
4552    ctor @Deprecated public RttManager.ResponderConfig();
4553    method @Deprecated public int describeContents();
4554    method @Deprecated public void writeToParcel(android.os.Parcel, int);
4555    field @Deprecated @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.RttManager.ResponderConfig> CREATOR;
4556    field @Deprecated public int centerFreq0;
4557    field @Deprecated public int centerFreq1;
4558    field @Deprecated public int channelWidth;
4559    field @Deprecated public int frequency;
4560    field @Deprecated public String macAddress;
4561    field @Deprecated public int preamble;
4562  }
4563
4564  @Deprecated public static class RttManager.RttCapabilities implements android.os.Parcelable {
4565    ctor @Deprecated public RttManager.RttCapabilities();
4566    field @Deprecated public int bwSupported;
4567    field @Deprecated public boolean lciSupported;
4568    field @Deprecated public boolean lcrSupported;
4569    field @Deprecated public int mcVersion;
4570    field @Deprecated public boolean oneSidedRttSupported;
4571    field @Deprecated public int preambleSupported;
4572    field @Deprecated public boolean responderSupported;
4573    field @Deprecated public boolean secureRttSupported;
4574    field @Deprecated public boolean supportedPeerType;
4575    field @Deprecated public boolean supportedType;
4576    field @Deprecated public boolean twoSided11McRttSupported;
4577  }
4578
4579  @Deprecated public static interface RttManager.RttListener {
4580    method @Deprecated public void onAborted();
4581    method @Deprecated public void onFailure(int, String);
4582    method @Deprecated public void onSuccess(android.net.wifi.RttManager.RttResult[]);
4583  }
4584
4585  @Deprecated public static class RttManager.RttParams {
4586    ctor @Deprecated public RttManager.RttParams();
4587    field @Deprecated public boolean LCIRequest;
4588    field @Deprecated public boolean LCRRequest;
4589    field @Deprecated public int bandwidth;
4590    field @Deprecated public String bssid;
4591    field @Deprecated public int burstTimeout;
4592    field @Deprecated public int centerFreq0;
4593    field @Deprecated public int centerFreq1;
4594    field @Deprecated public int channelWidth;
4595    field @Deprecated public int deviceType;
4596    field @Deprecated public int frequency;
4597    field @Deprecated public int interval;
4598    field @Deprecated public int numRetriesPerFTMR;
4599    field @Deprecated public int numRetriesPerMeasurementFrame;
4600    field @Deprecated public int numSamplesPerBurst;
4601    field @Deprecated public int num_retries;
4602    field @Deprecated public int num_samples;
4603    field @Deprecated public int numberBurst;
4604    field @Deprecated public int preamble;
4605    field @Deprecated public int requestType;
4606    field @Deprecated public boolean secure;
4607  }
4608
4609  @Deprecated public static class RttManager.RttResult {
4610    ctor @Deprecated public RttManager.RttResult();
4611    field @Deprecated public android.net.wifi.RttManager.WifiInformationElement LCI;
4612    field @Deprecated public android.net.wifi.RttManager.WifiInformationElement LCR;
4613    field @Deprecated public String bssid;
4614    field @Deprecated public int burstDuration;
4615    field @Deprecated public int burstNumber;
4616    field @Deprecated public int distance;
4617    field @Deprecated public int distanceSpread;
4618    field @Deprecated public int distanceStandardDeviation;
4619    field @Deprecated public int distance_cm;
4620    field @Deprecated public int distance_sd_cm;
4621    field @Deprecated public int distance_spread_cm;
4622    field @Deprecated public int frameNumberPerBurstPeer;
4623    field @Deprecated public int measurementFrameNumber;
4624    field @Deprecated public int measurementType;
4625    field @Deprecated public int negotiatedBurstNum;
4626    field @Deprecated public int requestType;
4627    field @Deprecated public int retryAfterDuration;
4628    field @Deprecated public int rssi;
4629    field @Deprecated public int rssiSpread;
4630    field @Deprecated public int rssi_spread;
4631    field @Deprecated public long rtt;
4632    field @Deprecated public long rttSpread;
4633    field @Deprecated public long rttStandardDeviation;
4634    field @Deprecated public long rtt_ns;
4635    field @Deprecated public long rtt_sd_ns;
4636    field @Deprecated public long rtt_spread_ns;
4637    field @Deprecated public int rxRate;
4638    field @Deprecated public boolean secure;
4639    field @Deprecated public int status;
4640    field @Deprecated public int successMeasurementFrameNumber;
4641    field @Deprecated public long ts;
4642    field @Deprecated public int txRate;
4643    field @Deprecated public int tx_rate;
4644  }
4645
4646  @Deprecated public static class RttManager.WifiInformationElement {
4647    ctor @Deprecated public RttManager.WifiInformationElement();
4648    field @Deprecated public byte[] data;
4649    field @Deprecated public byte id;
4650  }
4651
4652  @Deprecated public class WifiConfiguration implements android.os.Parcelable {
4653    method @Deprecated public boolean hasNoInternetAccess();
4654    method @Deprecated public boolean isEphemeral();
4655    method @Deprecated public boolean isNoInternetAccessExpected();
4656    field @Deprecated public String creatorName;
4657    field @Deprecated public int creatorUid;
4658    field @Deprecated public String lastUpdateName;
4659    field @Deprecated public int lastUpdateUid;
4660    field @Deprecated public boolean meteredHint;
4661    field @Deprecated public int numAssociation;
4662    field @Deprecated public int numScorerOverride;
4663    field @Deprecated public int numScorerOverrideAndSwitchedNetwork;
4664    field @Deprecated public boolean useExternalScores;
4665  }
4666
4667  @Deprecated public static class WifiConfiguration.KeyMgmt {
4668    field @Deprecated public static final int WPA2_PSK = 4; // 0x4
4669  }
4670
4671  public class WifiInfo implements android.os.Parcelable {
4672    method public boolean isOsuAp();
4673    method public boolean isPasspointAp();
4674  }
4675
4676  public class WifiManager {
4677    method @RequiresPermission("android.permission.WIFI_UPDATE_USABILITY_STATS_SCORE") public void addOnWifiUsabilityStatsListener(@NonNull java.util.concurrent.Executor, @NonNull android.net.wifi.WifiManager.OnWifiUsabilityStatsListener);
4678    method @RequiresPermission(anyOf={"android.permission.NETWORK_SETTINGS", android.Manifest.permission.NETWORK_SETUP_WIZARD, "android.permission.NETWORK_STACK"}) public void connect(@NonNull android.net.wifi.WifiConfiguration, @Nullable android.net.wifi.WifiManager.ActionListener);
4679    method @RequiresPermission(anyOf={"android.permission.NETWORK_SETTINGS", android.Manifest.permission.NETWORK_SETUP_WIZARD, "android.permission.NETWORK_STACK"}) public void connect(int, @Nullable android.net.wifi.WifiManager.ActionListener);
4680    method @RequiresPermission(anyOf={"android.permission.NETWORK_SETTINGS", android.Manifest.permission.NETWORK_SETUP_WIZARD, "android.permission.NETWORK_STACK"}) public void disable(int, @Nullable android.net.wifi.WifiManager.ActionListener);
4681    method @RequiresPermission(anyOf={"android.permission.NETWORK_SETTINGS", android.Manifest.permission.NETWORK_SETUP_WIZARD, "android.permission.NETWORK_STACK"}) public void forget(int, @Nullable android.net.wifi.WifiManager.ActionListener);
4682    method @NonNull @RequiresPermission(anyOf={"android.permission.NETWORK_SETTINGS", android.Manifest.permission.NETWORK_SETUP_WIZARD}) public java.util.List<android.util.Pair<android.net.wifi.WifiConfiguration,java.util.Map<java.lang.Integer,java.util.List<android.net.wifi.ScanResult>>>> getAllMatchingWifiConfigs(@NonNull java.util.List<android.net.wifi.ScanResult>);
4683    method @NonNull @RequiresPermission(anyOf={"android.permission.NETWORK_SETTINGS", android.Manifest.permission.NETWORK_SETUP_WIZARD}) public java.util.Map<android.net.wifi.hotspot2.OsuProvider,java.util.List<android.net.wifi.ScanResult>> getMatchingOsuProviders(@Nullable java.util.List<android.net.wifi.ScanResult>);
4684    method @NonNull @RequiresPermission(anyOf={"android.permission.NETWORK_SETTINGS", android.Manifest.permission.NETWORK_SETUP_WIZARD}) public java.util.Map<android.net.wifi.hotspot2.OsuProvider,android.net.wifi.hotspot2.PasspointConfiguration> getMatchingPasspointConfigsForOsuProviders(@NonNull java.util.Set<android.net.wifi.hotspot2.OsuProvider>);
4685    method @RequiresPermission(allOf={android.Manifest.permission.ACCESS_FINE_LOCATION, android.Manifest.permission.ACCESS_WIFI_STATE, android.Manifest.permission.READ_WIFI_CREDENTIAL}) public java.util.List<android.net.wifi.WifiConfiguration> getPrivilegedConfiguredNetworks();
4686    method @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public android.net.wifi.WifiConfiguration getWifiApConfiguration();
4687    method @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public int getWifiApState();
4688    method @Deprecated public boolean isDeviceToDeviceRttSupported();
4689    method public boolean isPortableHotspotSupported();
4690    method @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public boolean isWifiApEnabled();
4691    method public boolean isWifiScannerSupported();
4692    method @RequiresPermission("android.permission.WIFI_UPDATE_USABILITY_STATS_SCORE") public void removeOnWifiUsabilityStatsListener(@NonNull android.net.wifi.WifiManager.OnWifiUsabilityStatsListener);
4693    method @RequiresPermission(anyOf={"android.permission.NETWORK_SETTINGS", android.Manifest.permission.NETWORK_SETUP_WIZARD, "android.permission.NETWORK_STACK"}) public void save(@NonNull android.net.wifi.WifiConfiguration, @Nullable android.net.wifi.WifiManager.ActionListener);
4694    method @RequiresPermission("android.permission.WIFI_SET_DEVICE_MOBILITY_STATE") public void setDeviceMobilityState(int);
4695    method @RequiresPermission(android.Manifest.permission.CHANGE_WIFI_STATE) public boolean setWifiApConfiguration(android.net.wifi.WifiConfiguration);
4696    method @RequiresPermission(anyOf={"android.permission.NETWORK_SETTINGS", android.Manifest.permission.NETWORK_SETUP_WIZARD}) public void startEasyConnectAsConfiguratorInitiator(@NonNull String, int, int, @NonNull java.util.concurrent.Executor, @NonNull android.net.wifi.EasyConnectStatusCallback);
4697    method @RequiresPermission(anyOf={"android.permission.NETWORK_SETTINGS", android.Manifest.permission.NETWORK_SETUP_WIZARD}) public void startEasyConnectAsEnrolleeInitiator(@NonNull String, @NonNull java.util.concurrent.Executor, @NonNull android.net.wifi.EasyConnectStatusCallback);
4698    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public boolean startScan(android.os.WorkSource);
4699    method @RequiresPermission(anyOf={"android.permission.NETWORK_SETTINGS", android.Manifest.permission.NETWORK_SETUP_WIZARD}) public void startSubscriptionProvisioning(@NonNull android.net.wifi.hotspot2.OsuProvider, @NonNull java.util.concurrent.Executor, @NonNull android.net.wifi.hotspot2.ProvisioningCallback);
4700    method @RequiresPermission(anyOf={"android.permission.NETWORK_SETTINGS", android.Manifest.permission.NETWORK_SETUP_WIZARD}) public void stopEasyConnectSession();
4701    method @RequiresPermission("android.permission.WIFI_UPDATE_USABILITY_STATS_SCORE") public void updateWifiUsabilityScore(int, int, int);
4702    field public static final int CHANGE_REASON_ADDED = 0; // 0x0
4703    field public static final int CHANGE_REASON_CONFIG_CHANGE = 2; // 0x2
4704    field public static final int CHANGE_REASON_REMOVED = 1; // 0x1
4705    field public static final String CONFIGURED_NETWORKS_CHANGED_ACTION = "android.net.wifi.CONFIGURED_NETWORKS_CHANGE";
4706    field public static final int DEVICE_MOBILITY_STATE_HIGH_MVMT = 1; // 0x1
4707    field public static final int DEVICE_MOBILITY_STATE_LOW_MVMT = 2; // 0x2
4708    field public static final int DEVICE_MOBILITY_STATE_STATIONARY = 3; // 0x3
4709    field public static final int DEVICE_MOBILITY_STATE_UNKNOWN = 0; // 0x0
4710    field public static final int EASY_CONNECT_NETWORK_ROLE_AP = 1; // 0x1
4711    field public static final int EASY_CONNECT_NETWORK_ROLE_STA = 0; // 0x0
4712    field public static final String EXTRA_CHANGE_REASON = "changeReason";
4713    field public static final String EXTRA_MULTIPLE_NETWORKS_CHANGED = "multipleChanges";
4714    field public static final String EXTRA_PREVIOUS_WIFI_AP_STATE = "previous_wifi_state";
4715    field public static final String EXTRA_WIFI_AP_STATE = "wifi_state";
4716    field public static final String EXTRA_WIFI_CONFIGURATION = "wifiConfiguration";
4717    field public static final String EXTRA_WIFI_CREDENTIAL_EVENT_TYPE = "et";
4718    field public static final String EXTRA_WIFI_CREDENTIAL_SSID = "ssid";
4719    field public static final int PASSPOINT_HOME_NETWORK = 0; // 0x0
4720    field public static final int PASSPOINT_ROAMING_NETWORK = 1; // 0x1
4721    field public static final String WIFI_AP_STATE_CHANGED_ACTION = "android.net.wifi.WIFI_AP_STATE_CHANGED";
4722    field public static final int WIFI_AP_STATE_DISABLED = 11; // 0xb
4723    field public static final int WIFI_AP_STATE_DISABLING = 10; // 0xa
4724    field public static final int WIFI_AP_STATE_ENABLED = 13; // 0xd
4725    field public static final int WIFI_AP_STATE_ENABLING = 12; // 0xc
4726    field public static final int WIFI_AP_STATE_FAILED = 14; // 0xe
4727    field public static final String WIFI_CREDENTIAL_CHANGED_ACTION = "android.net.wifi.WIFI_CREDENTIAL_CHANGED";
4728    field public static final int WIFI_CREDENTIAL_FORGOT = 1; // 0x1
4729    field public static final int WIFI_CREDENTIAL_SAVED = 0; // 0x0
4730  }
4731
4732  public static interface WifiManager.ActionListener {
4733    method public void onFailure(int);
4734    method public void onSuccess();
4735  }
4736
4737  public static interface WifiManager.OnWifiUsabilityStatsListener {
4738    method public void onWifiUsabilityStats(int, boolean, @NonNull android.net.wifi.WifiUsabilityStatsEntry);
4739  }
4740
4741  public class WifiNetworkConnectionStatistics implements android.os.Parcelable {
4742    ctor public WifiNetworkConnectionStatistics(int, int);
4743    ctor public WifiNetworkConnectionStatistics();
4744    ctor public WifiNetworkConnectionStatistics(android.net.wifi.WifiNetworkConnectionStatistics);
4745    method public int describeContents();
4746    method public void writeToParcel(android.os.Parcel, int);
4747    field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.WifiNetworkConnectionStatistics> CREATOR;
4748    field public int numConnection;
4749    field public int numUsage;
4750  }
4751
4752  public class WifiScanner {
4753    method @Deprecated public void configureWifiChange(int, int, int, int, int, android.net.wifi.WifiScanner.BssidInfo[]);
4754    method @Deprecated public void configureWifiChange(android.net.wifi.WifiScanner.WifiChangeSettings);
4755    method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public boolean getScanResults();
4756    method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public void startBackgroundScan(android.net.wifi.WifiScanner.ScanSettings, android.net.wifi.WifiScanner.ScanListener);
4757    method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public void startBackgroundScan(android.net.wifi.WifiScanner.ScanSettings, android.net.wifi.WifiScanner.ScanListener, android.os.WorkSource);
4758    method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public void startScan(android.net.wifi.WifiScanner.ScanSettings, android.net.wifi.WifiScanner.ScanListener);
4759    method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public void startScan(android.net.wifi.WifiScanner.ScanSettings, android.net.wifi.WifiScanner.ScanListener, android.os.WorkSource);
4760    method @Deprecated public void startTrackingBssids(android.net.wifi.WifiScanner.BssidInfo[], int, android.net.wifi.WifiScanner.BssidListener);
4761    method @Deprecated public void startTrackingWifiChange(android.net.wifi.WifiScanner.WifiChangeListener);
4762    method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public void stopBackgroundScan(android.net.wifi.WifiScanner.ScanListener);
4763    method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public void stopScan(android.net.wifi.WifiScanner.ScanListener);
4764    method @Deprecated public void stopTrackingBssids(android.net.wifi.WifiScanner.BssidListener);
4765    method @Deprecated public void stopTrackingWifiChange(android.net.wifi.WifiScanner.WifiChangeListener);
4766    field public static final int MAX_SCAN_PERIOD_MS = 1024000; // 0xfa000
4767    field public static final int MIN_SCAN_PERIOD_MS = 1000; // 0x3e8
4768    field public static final int REASON_DUPLICATE_REQEUST = -5; // 0xfffffffb
4769    field public static final int REASON_INVALID_LISTENER = -2; // 0xfffffffe
4770    field public static final int REASON_INVALID_REQUEST = -3; // 0xfffffffd
4771    field public static final int REASON_NOT_AUTHORIZED = -4; // 0xfffffffc
4772    field public static final int REASON_SUCCEEDED = 0; // 0x0
4773    field public static final int REASON_UNSPECIFIED = -1; // 0xffffffff
4774    field @Deprecated public static final int REPORT_EVENT_AFTER_BUFFER_FULL = 0; // 0x0
4775    field public static final int REPORT_EVENT_AFTER_EACH_SCAN = 1; // 0x1
4776    field public static final int REPORT_EVENT_FULL_SCAN_RESULT = 2; // 0x2
4777    field public static final int REPORT_EVENT_NO_BATCH = 4; // 0x4
4778    field public static final int WIFI_BAND_24_GHZ = 1; // 0x1
4779    field public static final int WIFI_BAND_5_GHZ = 2; // 0x2
4780    field public static final int WIFI_BAND_5_GHZ_DFS_ONLY = 4; // 0x4
4781    field public static final int WIFI_BAND_5_GHZ_WITH_DFS = 6; // 0x6
4782    field public static final int WIFI_BAND_BOTH = 3; // 0x3
4783    field public static final int WIFI_BAND_BOTH_WITH_DFS = 7; // 0x7
4784    field public static final int WIFI_BAND_UNSPECIFIED = 0; // 0x0
4785  }
4786
4787  public static interface WifiScanner.ActionListener {
4788    method public void onFailure(int, String);
4789    method public void onSuccess();
4790  }
4791
4792  @Deprecated public static class WifiScanner.BssidInfo {
4793    ctor @Deprecated public WifiScanner.BssidInfo();
4794    field @Deprecated public String bssid;
4795    field @Deprecated public int frequencyHint;
4796    field @Deprecated public int high;
4797    field @Deprecated public int low;
4798  }
4799
4800  @Deprecated public static interface WifiScanner.BssidListener extends android.net.wifi.WifiScanner.ActionListener {
4801    method @Deprecated public void onFound(android.net.wifi.ScanResult[]);
4802    method @Deprecated public void onLost(android.net.wifi.ScanResult[]);
4803  }
4804
4805  public static class WifiScanner.ChannelSpec {
4806    ctor public WifiScanner.ChannelSpec(int);
4807    field public int frequency;
4808  }
4809
4810  @Deprecated public static class WifiScanner.HotlistSettings implements android.os.Parcelable {
4811    ctor @Deprecated public WifiScanner.HotlistSettings();
4812    field @Deprecated public int apLostThreshold;
4813    field @Deprecated public android.net.wifi.WifiScanner.BssidInfo[] bssidInfos;
4814  }
4815
4816  public static class WifiScanner.ParcelableScanData implements android.os.Parcelable {
4817    ctor public WifiScanner.ParcelableScanData(android.net.wifi.WifiScanner.ScanData[]);
4818    method public android.net.wifi.WifiScanner.ScanData[] getResults();
4819    field public android.net.wifi.WifiScanner.ScanData[] mResults;
4820  }
4821
4822  public static class WifiScanner.ParcelableScanResults implements android.os.Parcelable {
4823    ctor public WifiScanner.ParcelableScanResults(android.net.wifi.ScanResult[]);
4824    method public android.net.wifi.ScanResult[] getResults();
4825    field public android.net.wifi.ScanResult[] mResults;
4826  }
4827
4828  public static class WifiScanner.ScanData implements android.os.Parcelable {
4829    ctor public WifiScanner.ScanData(int, int, android.net.wifi.ScanResult[]);
4830    ctor public WifiScanner.ScanData(android.net.wifi.WifiScanner.ScanData);
4831    method public int getFlags();
4832    method public int getId();
4833    method public android.net.wifi.ScanResult[] getResults();
4834  }
4835
4836  public static interface WifiScanner.ScanListener extends android.net.wifi.WifiScanner.ActionListener {
4837    method public void onFullResult(android.net.wifi.ScanResult);
4838    method public void onPeriodChanged(int);
4839    method public void onResults(android.net.wifi.WifiScanner.ScanData[]);
4840  }
4841
4842  public static class WifiScanner.ScanSettings implements android.os.Parcelable {
4843    ctor public WifiScanner.ScanSettings();
4844    field public int band;
4845    field public android.net.wifi.WifiScanner.ChannelSpec[] channels;
4846    field public boolean hideFromAppOps;
4847    field public boolean ignoreLocationSettings;
4848    field public int maxPeriodInMs;
4849    field public int maxScansToCache;
4850    field public int numBssidsPerScan;
4851    field public int periodInMs;
4852    field public int reportEvents;
4853    field public int stepCount;
4854  }
4855
4856  @Deprecated public static interface WifiScanner.WifiChangeListener extends android.net.wifi.WifiScanner.ActionListener {
4857    method @Deprecated public void onChanging(android.net.wifi.ScanResult[]);
4858    method @Deprecated public void onQuiescence(android.net.wifi.ScanResult[]);
4859  }
4860
4861  @Deprecated public static class WifiScanner.WifiChangeSettings implements android.os.Parcelable {
4862    ctor @Deprecated public WifiScanner.WifiChangeSettings();
4863    field @Deprecated public android.net.wifi.WifiScanner.BssidInfo[] bssidInfos;
4864    field @Deprecated public int lostApSampleSize;
4865    field @Deprecated public int minApsBreachingThreshold;
4866    field @Deprecated public int periodInMs;
4867    field @Deprecated public int rssiSampleSize;
4868    field @Deprecated public int unchangedSampleSize;
4869  }
4870
4871  public final class WifiUsabilityStatsEntry implements android.os.Parcelable {
4872    method public int describeContents();
4873    method public int getCellularDataNetworkType();
4874    method public int getCellularSignalStrengthDb();
4875    method public int getCellularSignalStrengthDbm();
4876    method public int getLinkSpeedMbps();
4877    method public int getProbeElapsedTimeSinceLastUpdateMillis();
4878    method public int getProbeMcsRateSinceLastUpdate();
4879    method public int getProbeStatusSinceLastUpdate();
4880    method public int getRssi();
4881    method public int getRxLinkSpeedMbps();
4882    method public long getTimeStampMillis();
4883    method public long getTotalBackgroundScanTimeMillis();
4884    method public long getTotalBeaconRx();
4885    method public long getTotalCcaBusyFreqTimeMillis();
4886    method public long getTotalHotspot2ScanTimeMillis();
4887    method public long getTotalNanScanTimeMillis();
4888    method public long getTotalPnoScanTimeMillis();
4889    method public long getTotalRadioOnFreqTimeMillis();
4890    method public long getTotalRadioOnTimeMillis();
4891    method public long getTotalRadioRxTimeMillis();
4892    method public long getTotalRadioTxTimeMillis();
4893    method public long getTotalRoamScanTimeMillis();
4894    method public long getTotalRxSuccess();
4895    method public long getTotalScanTimeMillis();
4896    method public long getTotalTxBad();
4897    method public long getTotalTxRetries();
4898    method public long getTotalTxSuccess();
4899    method public boolean isSameRegisteredCell();
4900    method public void writeToParcel(android.os.Parcel, int);
4901    field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.WifiUsabilityStatsEntry> CREATOR;
4902    field public static final int PROBE_STATUS_FAILURE = 3; // 0x3
4903    field public static final int PROBE_STATUS_NO_PROBE = 1; // 0x1
4904    field public static final int PROBE_STATUS_SUCCESS = 2; // 0x2
4905    field public static final int PROBE_STATUS_UNKNOWN = 0; // 0x0
4906  }
4907
4908}
4909
4910package android.net.wifi.aware {
4911
4912  public class DiscoverySession implements java.lang.AutoCloseable {
4913    method @Deprecated public android.net.NetworkSpecifier createNetworkSpecifierPmk(@NonNull android.net.wifi.aware.PeerHandle, @NonNull byte[]);
4914  }
4915
4916  public static final class WifiAwareNetworkSpecifier.Builder {
4917    method @NonNull public android.net.wifi.aware.WifiAwareNetworkSpecifier.Builder setPmk(@NonNull byte[]);
4918  }
4919
4920  public class WifiAwareSession implements java.lang.AutoCloseable {
4921    method public android.net.NetworkSpecifier createNetworkSpecifierPmk(int, @NonNull byte[], @NonNull byte[]);
4922  }
4923
4924}
4925
4926package android.net.wifi.hotspot2 {
4927
4928  public final class OsuProvider implements android.os.Parcelable {
4929    method public int describeContents();
4930    method @Nullable public String getFriendlyName();
4931    method @Nullable public android.net.Uri getServerUri();
4932    method public void writeToParcel(android.os.Parcel, int);
4933    field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.hotspot2.OsuProvider> CREATOR;
4934  }
4935
4936  public abstract class ProvisioningCallback {
4937    ctor public ProvisioningCallback();
4938    method public abstract void onProvisioningComplete();
4939    method public abstract void onProvisioningFailure(int);
4940    method public abstract void onProvisioningStatus(int);
4941    field public static final int OSU_FAILURE_ADD_PASSPOINT_CONFIGURATION = 22; // 0x16
4942    field public static final int OSU_FAILURE_AP_CONNECTION = 1; // 0x1
4943    field public static final int OSU_FAILURE_INVALID_URL_FORMAT_FOR_OSU = 8; // 0x8
4944    field public static final int OSU_FAILURE_NO_AAA_SERVER_TRUST_ROOT_NODE = 17; // 0x11
4945    field public static final int OSU_FAILURE_NO_AAA_TRUST_ROOT_CERTIFICATE = 21; // 0x15
4946    field public static final int OSU_FAILURE_NO_OSU_ACTIVITY_FOUND = 14; // 0xe
4947    field public static final int OSU_FAILURE_NO_POLICY_SERVER_TRUST_ROOT_NODE = 19; // 0x13
4948    field public static final int OSU_FAILURE_NO_PPS_MO = 16; // 0x10
4949    field public static final int OSU_FAILURE_NO_REMEDIATION_SERVER_TRUST_ROOT_NODE = 18; // 0x12
4950    field public static final int OSU_FAILURE_OSU_PROVIDER_NOT_FOUND = 23; // 0x17
4951    field public static final int OSU_FAILURE_PROVISIONING_ABORTED = 6; // 0x6
4952    field public static final int OSU_FAILURE_PROVISIONING_NOT_AVAILABLE = 7; // 0x7
4953    field public static final int OSU_FAILURE_RETRIEVE_TRUST_ROOT_CERTIFICATES = 20; // 0x14
4954    field public static final int OSU_FAILURE_SERVER_CONNECTION = 3; // 0x3
4955    field public static final int OSU_FAILURE_SERVER_URL_INVALID = 2; // 0x2
4956    field public static final int OSU_FAILURE_SERVER_VALIDATION = 4; // 0x4
4957    field public static final int OSU_FAILURE_SERVICE_PROVIDER_VERIFICATION = 5; // 0x5
4958    field public static final int OSU_FAILURE_SOAP_MESSAGE_EXCHANGE = 11; // 0xb
4959    field public static final int OSU_FAILURE_START_REDIRECT_LISTENER = 12; // 0xc
4960    field public static final int OSU_FAILURE_TIMED_OUT_REDIRECT_LISTENER = 13; // 0xd
4961    field public static final int OSU_FAILURE_UNEXPECTED_COMMAND_TYPE = 9; // 0x9
4962    field public static final int OSU_FAILURE_UNEXPECTED_SOAP_MESSAGE_STATUS = 15; // 0xf
4963    field public static final int OSU_FAILURE_UNEXPECTED_SOAP_MESSAGE_TYPE = 10; // 0xa
4964    field public static final int OSU_STATUS_AP_CONNECTED = 2; // 0x2
4965    field public static final int OSU_STATUS_AP_CONNECTING = 1; // 0x1
4966    field public static final int OSU_STATUS_INIT_SOAP_EXCHANGE = 6; // 0x6
4967    field public static final int OSU_STATUS_REDIRECT_RESPONSE_RECEIVED = 8; // 0x8
4968    field public static final int OSU_STATUS_RETRIEVING_TRUST_ROOT_CERTS = 11; // 0xb
4969    field public static final int OSU_STATUS_SECOND_SOAP_EXCHANGE = 9; // 0x9
4970    field public static final int OSU_STATUS_SERVER_CONNECTED = 5; // 0x5
4971    field public static final int OSU_STATUS_SERVER_CONNECTING = 3; // 0x3
4972    field public static final int OSU_STATUS_SERVER_VALIDATED = 4; // 0x4
4973    field public static final int OSU_STATUS_THIRD_SOAP_EXCHANGE = 10; // 0xa
4974    field public static final int OSU_STATUS_WAITING_FOR_REDIRECT_RESPONSE = 7; // 0x7
4975  }
4976
4977}
4978
4979package android.net.wifi.rtt {
4980
4981  public static final class RangingRequest.Builder {
4982    method public android.net.wifi.rtt.RangingRequest.Builder addResponder(@NonNull android.net.wifi.rtt.ResponderConfig);
4983  }
4984
4985  public final class RangingResult implements android.os.Parcelable {
4986    method @NonNull public byte[] getLci();
4987    method @NonNull public byte[] getLcr();
4988  }
4989
4990  public final class ResponderConfig implements android.os.Parcelable {
4991    ctor public ResponderConfig(@NonNull android.net.MacAddress, int, boolean, int, int, int, int, int);
4992    ctor public ResponderConfig(@NonNull android.net.wifi.aware.PeerHandle, int, boolean, int, int, int, int, int);
4993    method public int describeContents();
4994    method public static android.net.wifi.rtt.ResponderConfig fromScanResult(android.net.wifi.ScanResult);
4995    method public static android.net.wifi.rtt.ResponderConfig fromWifiAwarePeerHandleWithDefaults(android.net.wifi.aware.PeerHandle);
4996    method public static android.net.wifi.rtt.ResponderConfig fromWifiAwarePeerMacAddressWithDefaults(android.net.MacAddress);
4997    method public void writeToParcel(android.os.Parcel, int);
4998    field public static final int CHANNEL_WIDTH_160MHZ = 3; // 0x3
4999    field public static final int CHANNEL_WIDTH_20MHZ = 0; // 0x0
5000    field public static final int CHANNEL_WIDTH_40MHZ = 1; // 0x1
5001    field public static final int CHANNEL_WIDTH_80MHZ = 2; // 0x2
5002    field public static final int CHANNEL_WIDTH_80MHZ_PLUS_MHZ = 4; // 0x4
5003    field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.rtt.ResponderConfig> CREATOR;
5004    field public static final int PREAMBLE_HT = 1; // 0x1
5005    field public static final int PREAMBLE_LEGACY = 0; // 0x0
5006    field public static final int PREAMBLE_VHT = 2; // 0x2
5007    field public static final int RESPONDER_AP = 0; // 0x0
5008    field public static final int RESPONDER_AWARE = 4; // 0x4
5009    field public static final int RESPONDER_P2P_CLIENT = 3; // 0x3
5010    field public static final int RESPONDER_P2P_GO = 2; // 0x2
5011    field public static final int RESPONDER_STA = 1; // 0x1
5012    field public final int centerFreq0;
5013    field public final int centerFreq1;
5014    field public final int channelWidth;
5015    field public final int frequency;
5016    field public final android.net.MacAddress macAddress;
5017    field public final android.net.wifi.aware.PeerHandle peerHandle;
5018    field public final int preamble;
5019    field public final int responderType;
5020    field public final boolean supports80211mc;
5021  }
5022
5023  public final class ResponderLocation implements android.os.Parcelable {
5024    method public boolean getExtraInfoOnAssociationIndication();
5025  }
5026
5027  public class WifiRttManager {
5028    method @RequiresPermission(allOf={android.Manifest.permission.LOCATION_HARDWARE}) public void cancelRanging(@Nullable android.os.WorkSource);
5029    method @RequiresPermission(allOf={android.Manifest.permission.LOCATION_HARDWARE, android.Manifest.permission.ACCESS_FINE_LOCATION, android.Manifest.permission.CHANGE_WIFI_STATE, android.Manifest.permission.ACCESS_WIFI_STATE}) public void startRanging(@Nullable android.os.WorkSource, @NonNull android.net.wifi.rtt.RangingRequest, @NonNull java.util.concurrent.Executor, @NonNull android.net.wifi.rtt.RangingResultCallback);
5030  }
5031
5032}
5033
5034package android.nfc {
5035
5036  public final class NfcAdapter {
5037    method @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public boolean addNfcUnlockHandler(android.nfc.NfcAdapter.NfcUnlockHandler, String[]);
5038    method @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public boolean disable();
5039    method @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public boolean disable(boolean);
5040    method @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public boolean disableNdefPush();
5041    method @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public boolean enable();
5042    method @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public boolean enableNdefPush();
5043    method @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public boolean enableSecureNfc(boolean);
5044    method @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public boolean removeNfcUnlockHandler(android.nfc.NfcAdapter.NfcUnlockHandler);
5045    method public void setNdefPushMessage(android.nfc.NdefMessage, android.app.Activity, int);
5046    field public static final int FLAG_NDEF_PUSH_NO_CONFIRM = 1; // 0x1
5047  }
5048
5049  public static interface NfcAdapter.NfcUnlockHandler {
5050    method public boolean onUnlockAttempted(android.nfc.Tag);
5051  }
5052
5053}
5054
5055package android.os {
5056
5057  public class BatteryManager {
5058    method @RequiresPermission(android.Manifest.permission.POWER_SAVER) public boolean setChargingStateUpdateDelayMillis(int);
5059    field public static final String EXTRA_EVENTS = "android.os.extra.EVENTS";
5060    field public static final String EXTRA_EVENT_TIMESTAMP = "android.os.extra.EVENT_TIMESTAMP";
5061  }
5062
5063  public final class BatterySaverPolicyConfig implements android.os.Parcelable {
5064    method public int describeContents();
5065    method public float getAdjustBrightnessFactor();
5066    method public boolean getAdvertiseIsEnabled();
5067    method public boolean getDeferFullBackup();
5068    method public boolean getDeferKeyValueBackup();
5069    method @NonNull public java.util.Map<java.lang.String,java.lang.String> getDeviceSpecificSettings();
5070    method public boolean getDisableAnimation();
5071    method public boolean getDisableAod();
5072    method public boolean getDisableLaunchBoost();
5073    method public boolean getDisableOptionalSensors();
5074    method public boolean getDisableSoundTrigger();
5075    method public boolean getDisableVibration();
5076    method public boolean getEnableAdjustBrightness();
5077    method public boolean getEnableDataSaver();
5078    method public boolean getEnableFirewall();
5079    method public boolean getEnableNightMode();
5080    method public boolean getEnableQuickDoze();
5081    method public boolean getForceAllAppsStandby();
5082    method public boolean getForceBackgroundCheck();
5083    method public int getLocationMode();
5084    method public void writeToParcel(android.os.Parcel, int);
5085    field @NonNull public static final android.os.Parcelable.Creator<android.os.BatterySaverPolicyConfig> CREATOR;
5086  }
5087
5088  public static final class BatterySaverPolicyConfig.Builder {
5089    ctor public BatterySaverPolicyConfig.Builder();
5090    method @NonNull public android.os.BatterySaverPolicyConfig.Builder addDeviceSpecificSetting(@NonNull String, @NonNull String);
5091    method @NonNull public android.os.BatterySaverPolicyConfig build();
5092    method @NonNull public android.os.BatterySaverPolicyConfig.Builder setAdjustBrightnessFactor(float);
5093    method @NonNull public android.os.BatterySaverPolicyConfig.Builder setAdvertiseIsEnabled(boolean);
5094    method @NonNull public android.os.BatterySaverPolicyConfig.Builder setDeferFullBackup(boolean);
5095    method @NonNull public android.os.BatterySaverPolicyConfig.Builder setDeferKeyValueBackup(boolean);
5096    method @NonNull public android.os.BatterySaverPolicyConfig.Builder setDisableAnimation(boolean);
5097    method @NonNull public android.os.BatterySaverPolicyConfig.Builder setDisableAod(boolean);
5098    method @NonNull public android.os.BatterySaverPolicyConfig.Builder setDisableLaunchBoost(boolean);
5099    method @NonNull public android.os.BatterySaverPolicyConfig.Builder setDisableOptionalSensors(boolean);
5100    method @NonNull public android.os.BatterySaverPolicyConfig.Builder setDisableSoundTrigger(boolean);
5101    method @NonNull public android.os.BatterySaverPolicyConfig.Builder setDisableVibration(boolean);
5102    method @NonNull public android.os.BatterySaverPolicyConfig.Builder setEnableAdjustBrightness(boolean);
5103    method @NonNull public android.os.BatterySaverPolicyConfig.Builder setEnableDataSaver(boolean);
5104    method @NonNull public android.os.BatterySaverPolicyConfig.Builder setEnableFirewall(boolean);
5105    method @NonNull public android.os.BatterySaverPolicyConfig.Builder setEnableNightMode(boolean);
5106    method @NonNull public android.os.BatterySaverPolicyConfig.Builder setEnableQuickDoze(boolean);
5107    method @NonNull public android.os.BatterySaverPolicyConfig.Builder setForceAllAppsStandby(boolean);
5108    method @NonNull public android.os.BatterySaverPolicyConfig.Builder setForceBackgroundCheck(boolean);
5109    method @NonNull public android.os.BatterySaverPolicyConfig.Builder setLocationMode(int);
5110  }
5111
5112  public class Binder implements android.os.IBinder {
5113    method public static void setProxyTransactListener(@Nullable android.os.Binder.ProxyTransactListener);
5114  }
5115
5116  public static interface Binder.ProxyTransactListener {
5117    method public void onTransactEnded(@Nullable Object);
5118    method @Nullable public Object onTransactStarted(@NonNull android.os.IBinder, int);
5119  }
5120
5121  public final class BugreportManager {
5122    method @RequiresPermission(android.Manifest.permission.DUMP) public void cancelBugreport();
5123    method @RequiresPermission(android.Manifest.permission.DUMP) public void startBugreport(@NonNull android.os.ParcelFileDescriptor, @Nullable android.os.ParcelFileDescriptor, @NonNull android.os.BugreportParams, @NonNull java.util.concurrent.Executor, @NonNull android.os.BugreportManager.BugreportCallback);
5124  }
5125
5126  public abstract static class BugreportManager.BugreportCallback {
5127    ctor public BugreportManager.BugreportCallback();
5128    method public void onError(int);
5129    method public void onFinished();
5130    method public void onProgress(@FloatRange(from=0.0f, to=100.0f) float);
5131    field public static final int BUGREPORT_ERROR_ANOTHER_REPORT_IN_PROGRESS = 5; // 0x5
5132    field public static final int BUGREPORT_ERROR_INVALID_INPUT = 1; // 0x1
5133    field public static final int BUGREPORT_ERROR_RUNTIME = 2; // 0x2
5134    field public static final int BUGREPORT_ERROR_USER_CONSENT_TIMED_OUT = 4; // 0x4
5135    field public static final int BUGREPORT_ERROR_USER_DENIED_CONSENT = 3; // 0x3
5136  }
5137
5138  public final class BugreportParams {
5139    ctor public BugreportParams(int);
5140    method public int getMode();
5141    field public static final int BUGREPORT_MODE_FULL = 0; // 0x0
5142    field public static final int BUGREPORT_MODE_INTERACTIVE = 1; // 0x1
5143    field public static final int BUGREPORT_MODE_REMOTE = 2; // 0x2
5144    field public static final int BUGREPORT_MODE_TELEPHONY = 4; // 0x4
5145    field public static final int BUGREPORT_MODE_WEAR = 3; // 0x3
5146    field public static final int BUGREPORT_MODE_WIFI = 5; // 0x5
5147  }
5148
5149  public static class Build.VERSION {
5150    field @NonNull public static final String PREVIEW_SDK_FINGERPRINT;
5151  }
5152
5153  public final class ConfigUpdate {
5154    field public static final String ACTION_UPDATE_CARRIER_ID_DB = "android.os.action.UPDATE_CARRIER_ID_DB";
5155    field public static final String ACTION_UPDATE_CARRIER_PROVISIONING_URLS = "android.intent.action.UPDATE_CARRIER_PROVISIONING_URLS";
5156    field public static final String ACTION_UPDATE_CONVERSATION_ACTIONS = "android.intent.action.UPDATE_CONVERSATION_ACTIONS";
5157    field public static final String ACTION_UPDATE_CT_LOGS = "android.intent.action.UPDATE_CT_LOGS";
5158    field public static final String ACTION_UPDATE_INTENT_FIREWALL = "android.intent.action.UPDATE_INTENT_FIREWALL";
5159    field public static final String ACTION_UPDATE_LANG_ID = "android.intent.action.UPDATE_LANG_ID";
5160    field public static final String ACTION_UPDATE_NETWORK_WATCHLIST = "android.intent.action.UPDATE_NETWORK_WATCHLIST";
5161    field public static final String ACTION_UPDATE_PINS = "android.intent.action.UPDATE_PINS";
5162    field public static final String ACTION_UPDATE_SMART_SELECTION = "android.intent.action.UPDATE_SMART_SELECTION";
5163    field public static final String ACTION_UPDATE_SMS_SHORT_CODES = "android.intent.action.UPDATE_SMS_SHORT_CODES";
5164  }
5165
5166  public class Environment {
5167    method @NonNull public static java.io.File getOdmDirectory();
5168    method @NonNull public static java.io.File getOemDirectory();
5169    method @NonNull public static java.io.File getProductDirectory();
5170    method @NonNull public static java.io.File getProductServicesDirectory();
5171    method @NonNull public static java.io.File getVendorDirectory();
5172  }
5173
5174  public class HidlSupport {
5175    method public static boolean deepEquals(Object, Object);
5176    method public static int deepHashCode(Object);
5177    method public static int getPidIfSharable();
5178    method public static boolean interfacesEqual(android.os.IHwInterface, Object);
5179  }
5180
5181  public abstract class HwBinder implements android.os.IHwBinder {
5182    ctor public HwBinder();
5183    method public static final void configureRpcThreadpool(long, boolean);
5184    method public static void enableInstrumentation();
5185    method public static final android.os.IHwBinder getService(String, String) throws java.util.NoSuchElementException, android.os.RemoteException;
5186    method public static final android.os.IHwBinder getService(String, String, boolean) throws java.util.NoSuchElementException, android.os.RemoteException;
5187    method public static final void joinRpcThreadpool();
5188    method public abstract void onTransact(int, android.os.HwParcel, android.os.HwParcel, int) throws android.os.RemoteException;
5189    method public final void registerService(String) throws android.os.RemoteException;
5190    method public final void transact(int, android.os.HwParcel, android.os.HwParcel, int) throws android.os.RemoteException;
5191  }
5192
5193  public class HwBlob {
5194    ctor public HwBlob(int);
5195    method public final void copyToBoolArray(long, boolean[], int);
5196    method public final void copyToDoubleArray(long, double[], int);
5197    method public final void copyToFloatArray(long, float[], int);
5198    method public final void copyToInt16Array(long, short[], int);
5199    method public final void copyToInt32Array(long, int[], int);
5200    method public final void copyToInt64Array(long, long[], int);
5201    method public final void copyToInt8Array(long, byte[], int);
5202    method public final boolean getBool(long);
5203    method public final double getDouble(long);
5204    method public final float getFloat(long);
5205    method public final short getInt16(long);
5206    method public final int getInt32(long);
5207    method public final long getInt64(long);
5208    method public final byte getInt8(long);
5209    method public final String getString(long);
5210    method public final long handle();
5211    method public final void putBlob(long, android.os.HwBlob);
5212    method public final void putBool(long, boolean);
5213    method public final void putBoolArray(long, boolean[]);
5214    method public final void putDouble(long, double);
5215    method public final void putDoubleArray(long, double[]);
5216    method public final void putFloat(long, float);
5217    method public final void putFloatArray(long, float[]);
5218    method public final void putInt16(long, short);
5219    method public final void putInt16Array(long, short[]);
5220    method public final void putInt32(long, int);
5221    method public final void putInt32Array(long, int[]);
5222    method public final void putInt64(long, long);
5223    method public final void putInt64Array(long, long[]);
5224    method public final void putInt8(long, byte);
5225    method public final void putInt8Array(long, byte[]);
5226    method public final void putNativeHandle(long, @Nullable android.os.NativeHandle);
5227    method public final void putString(long, String);
5228    method public static Boolean[] wrapArray(@NonNull boolean[]);
5229    method public static Long[] wrapArray(@NonNull long[]);
5230    method public static Byte[] wrapArray(@NonNull byte[]);
5231    method public static Short[] wrapArray(@NonNull short[]);
5232    method public static Integer[] wrapArray(@NonNull int[]);
5233    method public static Float[] wrapArray(@NonNull float[]);
5234    method public static Double[] wrapArray(@NonNull double[]);
5235  }
5236
5237  public class HwParcel {
5238    ctor public HwParcel();
5239    method public final void enforceInterface(String);
5240    method public final boolean readBool();
5241    method public final java.util.ArrayList<java.lang.Boolean> readBoolVector();
5242    method public final android.os.HwBlob readBuffer(long);
5243    method public final double readDouble();
5244    method public final java.util.ArrayList<java.lang.Double> readDoubleVector();
5245    method public final android.os.HwBlob readEmbeddedBuffer(long, long, long, boolean);
5246    method @Nullable public final android.os.NativeHandle readEmbeddedNativeHandle(long, long);
5247    method public final float readFloat();
5248    method public final java.util.ArrayList<java.lang.Float> readFloatVector();
5249    method public final short readInt16();
5250    method public final java.util.ArrayList<java.lang.Short> readInt16Vector();
5251    method public final int readInt32();
5252    method public final java.util.ArrayList<java.lang.Integer> readInt32Vector();
5253    method public final long readInt64();
5254    method public final java.util.ArrayList<java.lang.Long> readInt64Vector();
5255    method public final byte readInt8();
5256    method public final java.util.ArrayList<java.lang.Byte> readInt8Vector();
5257    method @Nullable public final android.os.NativeHandle readNativeHandle();
5258    method @NonNull public final java.util.ArrayList<android.os.NativeHandle> readNativeHandleVector();
5259    method public final String readString();
5260    method public final java.util.ArrayList<java.lang.String> readStringVector();
5261    method public final android.os.IHwBinder readStrongBinder();
5262    method public final void release();
5263    method public final void releaseTemporaryStorage();
5264    method public final void send();
5265    method public final void verifySuccess();
5266    method public final void writeBool(boolean);
5267    method public final void writeBoolVector(java.util.ArrayList<java.lang.Boolean>);
5268    method public final void writeBuffer(android.os.HwBlob);
5269    method public final void writeDouble(double);
5270    method public final void writeDoubleVector(java.util.ArrayList<java.lang.Double>);
5271    method public final void writeFloat(float);
5272    method public final void writeFloatVector(java.util.ArrayList<java.lang.Float>);
5273    method public final void writeInt16(short);
5274    method public final void writeInt16Vector(java.util.ArrayList<java.lang.Short>);
5275    method public final void writeInt32(int);
5276    method public final void writeInt32Vector(java.util.ArrayList<java.lang.Integer>);
5277    method public final void writeInt64(long);
5278    method public final void writeInt64Vector(java.util.ArrayList<java.lang.Long>);
5279    method public final void writeInt8(byte);
5280    method public final void writeInt8Vector(java.util.ArrayList<java.lang.Byte>);
5281    method public final void writeInterfaceToken(String);
5282    method public final void writeNativeHandle(@Nullable android.os.NativeHandle);
5283    method public final void writeNativeHandleVector(@NonNull java.util.ArrayList<android.os.NativeHandle>);
5284    method public final void writeStatus(int);
5285    method public final void writeString(String);
5286    method public final void writeStringVector(java.util.ArrayList<java.lang.String>);
5287    method public final void writeStrongBinder(android.os.IHwBinder);
5288    field public static final int STATUS_SUCCESS = 0; // 0x0
5289  }
5290
5291  @IntDef(prefix={"STATUS_"}, value={android.os.HwParcel.STATUS_SUCCESS}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface HwParcel.Status {
5292  }
5293
5294  public interface IHwBinder {
5295    method public boolean linkToDeath(android.os.IHwBinder.DeathRecipient, long);
5296    method public android.os.IHwInterface queryLocalInterface(String);
5297    method public void transact(int, android.os.HwParcel, android.os.HwParcel, int) throws android.os.RemoteException;
5298    method public boolean unlinkToDeath(android.os.IHwBinder.DeathRecipient);
5299  }
5300
5301  public static interface IHwBinder.DeathRecipient {
5302    method public void serviceDied(long);
5303  }
5304
5305  public interface IHwInterface {
5306    method public android.os.IHwBinder asBinder();
5307  }
5308
5309  public class IncidentManager {
5310    method @RequiresPermission(android.Manifest.permission.APPROVE_INCIDENT_REPORTS) public void approveReport(android.net.Uri);
5311    method @RequiresPermission("android.permission.REQUEST_INCIDENT_REPORT_APPROVAL") public void cancelAuthorization(android.os.IncidentManager.AuthListener);
5312    method @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public void deleteIncidentReports(android.net.Uri);
5313    method @RequiresPermission(android.Manifest.permission.APPROVE_INCIDENT_REPORTS) public void denyReport(android.net.Uri);
5314    method @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) @Nullable public android.os.IncidentManager.IncidentReport getIncidentReport(android.net.Uri);
5315    method @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) @NonNull public java.util.List<android.net.Uri> getIncidentReportList(String);
5316    method @RequiresPermission(android.Manifest.permission.APPROVE_INCIDENT_REPORTS) public java.util.List<android.os.IncidentManager.PendingReport> getPendingReports();
5317    method @RequiresPermission(allOf={android.Manifest.permission.DUMP, android.Manifest.permission.PACKAGE_USAGE_STATS}) public void reportIncident(android.os.IncidentReportArgs);
5318    method @RequiresPermission("android.permission.REQUEST_INCIDENT_REPORT_APPROVAL") public void requestAuthorization(int, String, int, android.os.IncidentManager.AuthListener);
5319    field public static final int FLAG_CONFIRMATION_DIALOG = 1; // 0x1
5320    field public static final int PRIVACY_POLICY_AUTO = 200; // 0xc8
5321    field public static final int PRIVACY_POLICY_EXPLICIT = 100; // 0x64
5322    field public static final int PRIVACY_POLICY_LOCAL = 0; // 0x0
5323  }
5324
5325  public static class IncidentManager.AuthListener {
5326    ctor public IncidentManager.AuthListener();
5327    method public void onReportApproved();
5328    method public void onReportDenied();
5329  }
5330
5331  public static class IncidentManager.IncidentReport implements java.io.Closeable android.os.Parcelable {
5332    ctor public IncidentManager.IncidentReport(android.os.Parcel);
5333    method public void close();
5334    method public int describeContents();
5335    method public java.io.InputStream getInputStream() throws java.io.IOException;
5336    method public long getPrivacyPolicy();
5337    method public long getTimestamp();
5338    method public void writeToParcel(android.os.Parcel, int);
5339    field @NonNull public static final android.os.Parcelable.Creator<android.os.IncidentManager.IncidentReport> CREATOR;
5340  }
5341
5342  public static class IncidentManager.PendingReport {
5343    ctor public IncidentManager.PendingReport(@NonNull android.net.Uri);
5344    method public int getFlags();
5345    method @NonNull public String getRequestingPackage();
5346    method public long getTimestamp();
5347    method @NonNull public android.net.Uri getUri();
5348  }
5349
5350  public final class IncidentReportArgs implements android.os.Parcelable {
5351    ctor public IncidentReportArgs();
5352    ctor public IncidentReportArgs(android.os.Parcel);
5353    method public void addHeader(byte[]);
5354    method public void addSection(int);
5355    method public boolean containsSection(int);
5356    method public int describeContents();
5357    method public boolean isAll();
5358    method public void readFromParcel(android.os.Parcel);
5359    method public int sectionCount();
5360    method public void setAll(boolean);
5361    method public void setPrivacyPolicy(int);
5362    method public void writeToParcel(android.os.Parcel, int);
5363    field @NonNull public static final android.os.Parcelable.Creator<android.os.IncidentReportArgs> CREATOR;
5364  }
5365
5366  public final class NativeHandle implements java.io.Closeable {
5367    ctor public NativeHandle();
5368    ctor public NativeHandle(@NonNull java.io.FileDescriptor, boolean);
5369    ctor public NativeHandle(@NonNull java.io.FileDescriptor[], @NonNull int[], boolean);
5370    method public void close() throws java.io.IOException;
5371    method @NonNull public android.os.NativeHandle dup() throws java.io.IOException;
5372    method @NonNull public java.io.FileDescriptor getFileDescriptor();
5373    method @NonNull public java.io.FileDescriptor[] getFileDescriptors();
5374    method @NonNull public int[] getInts();
5375    method public boolean hasSingleFileDescriptor();
5376  }
5377
5378  public final class PowerManager {
5379    method @RequiresPermission(allOf={android.Manifest.permission.READ_DREAM_STATE, android.Manifest.permission.WRITE_DREAM_STATE}) public void dream(long);
5380    method @RequiresPermission(android.Manifest.permission.DEVICE_POWER) public boolean forceSuspend();
5381    method @RequiresPermission(android.Manifest.permission.POWER_SAVER) public int getPowerSaveModeTrigger();
5382    method @RequiresPermission(anyOf={android.Manifest.permission.DEVICE_POWER, android.Manifest.permission.POWER_SAVER}) public boolean setAdaptivePowerSaveEnabled(boolean);
5383    method @RequiresPermission(anyOf={android.Manifest.permission.DEVICE_POWER, android.Manifest.permission.POWER_SAVER}) public boolean setAdaptivePowerSavePolicy(@NonNull android.os.BatterySaverPolicyConfig);
5384    method @RequiresPermission(android.Manifest.permission.POWER_SAVER) public boolean setDynamicPowerSaveHint(boolean, int);
5385    method @RequiresPermission(anyOf={android.Manifest.permission.DEVICE_POWER, android.Manifest.permission.POWER_SAVER}) public boolean setPowerSaveModeEnabled(boolean);
5386    method @RequiresPermission(anyOf={android.Manifest.permission.DEVICE_POWER, android.Manifest.permission.USER_ACTIVITY}) public void userActivity(long, int, int);
5387    field public static final int POWER_SAVE_MODE_TRIGGER_DYNAMIC = 1; // 0x1
5388    field public static final int POWER_SAVE_MODE_TRIGGER_PERCENTAGE = 0; // 0x0
5389    field public static final int USER_ACTIVITY_EVENT_ACCESSIBILITY = 3; // 0x3
5390    field public static final int USER_ACTIVITY_EVENT_BUTTON = 1; // 0x1
5391    field public static final int USER_ACTIVITY_EVENT_OTHER = 0; // 0x0
5392    field public static final int USER_ACTIVITY_EVENT_TOUCH = 2; // 0x2
5393    field public static final int USER_ACTIVITY_FLAG_INDIRECT = 2; // 0x2
5394    field public static final int USER_ACTIVITY_FLAG_NO_CHANGE_LIGHTS = 1; // 0x1
5395  }
5396
5397  public class RecoverySystem {
5398    method @RequiresPermission(android.Manifest.permission.RECOVERY) public static void cancelScheduledUpdate(android.content.Context) throws java.io.IOException;
5399    method @RequiresPermission(android.Manifest.permission.RECOVERY) public static void installPackage(android.content.Context, java.io.File, boolean) throws java.io.IOException;
5400    method @RequiresPermission(android.Manifest.permission.RECOVERY) public static void processPackage(android.content.Context, java.io.File, android.os.RecoverySystem.ProgressListener, android.os.Handler) throws java.io.IOException;
5401    method @RequiresPermission(android.Manifest.permission.RECOVERY) public static void processPackage(android.content.Context, java.io.File, android.os.RecoverySystem.ProgressListener) throws java.io.IOException;
5402    method @RequiresPermission(allOf={android.Manifest.permission.RECOVERY, android.Manifest.permission.REBOOT}) public static void rebootWipeAb(android.content.Context, java.io.File, String) throws java.io.IOException;
5403    method @RequiresPermission(android.Manifest.permission.RECOVERY) public static void scheduleUpdateOnBoot(android.content.Context, java.io.File) throws java.io.IOException;
5404    method public static boolean verifyPackageCompatibility(java.io.File) throws java.io.IOException;
5405  }
5406
5407  public final class RemoteCallback implements android.os.Parcelable {
5408    ctor public RemoteCallback(android.os.RemoteCallback.OnResultListener);
5409    ctor public RemoteCallback(@NonNull android.os.RemoteCallback.OnResultListener, @Nullable android.os.Handler);
5410    method public int describeContents();
5411    method public void sendResult(@Nullable android.os.Bundle);
5412    method public void writeToParcel(android.os.Parcel, int);
5413    field @NonNull public static final android.os.Parcelable.Creator<android.os.RemoteCallback> CREATOR;
5414  }
5415
5416  public static interface RemoteCallback.OnResultListener {
5417    method public void onResult(@Nullable android.os.Bundle);
5418  }
5419
5420  public class ServiceSpecificException extends java.lang.RuntimeException {
5421    ctor public ServiceSpecificException(int, @Nullable String);
5422    ctor public ServiceSpecificException(int);
5423    field public final int errorCode;
5424  }
5425
5426  public final class StatsDimensionsValue implements android.os.Parcelable {
5427    method public int describeContents();
5428    method public boolean getBooleanValue();
5429    method public int getField();
5430    method public float getFloatValue();
5431    method public int getIntValue();
5432    method public long getLongValue();
5433    method public String getStringValue();
5434    method public java.util.List<android.os.StatsDimensionsValue> getTupleValueList();
5435    method public int getValueType();
5436    method public boolean isValueType(int);
5437    method public void writeToParcel(android.os.Parcel, int);
5438    field public static final int BOOLEAN_VALUE_TYPE = 5; // 0x5
5439    field @NonNull public static final android.os.Parcelable.Creator<android.os.StatsDimensionsValue> CREATOR;
5440    field public static final int FLOAT_VALUE_TYPE = 6; // 0x6
5441    field public static final int INT_VALUE_TYPE = 3; // 0x3
5442    field public static final int LONG_VALUE_TYPE = 4; // 0x4
5443    field public static final int STRING_VALUE_TYPE = 2; // 0x2
5444    field public static final int TUPLE_VALUE_TYPE = 7; // 0x7
5445  }
5446
5447  public class SystemProperties {
5448    method @NonNull public static String get(@NonNull String);
5449    method @NonNull public static String get(@NonNull String, @Nullable String);
5450    method public static boolean getBoolean(@NonNull String, boolean);
5451    method public static int getInt(@NonNull String, int);
5452    method public static long getLong(@NonNull String, long);
5453  }
5454
5455  public class SystemUpdateManager {
5456    method @RequiresPermission(anyOf={android.Manifest.permission.READ_SYSTEM_UPDATE_INFO, android.Manifest.permission.RECOVERY}) public android.os.Bundle retrieveSystemUpdateInfo();
5457    method @RequiresPermission(android.Manifest.permission.RECOVERY) public void updateSystemUpdateInfo(android.os.PersistableBundle);
5458    field public static final String KEY_IS_SECURITY_UPDATE = "is_security_update";
5459    field public static final String KEY_STATUS = "status";
5460    field public static final String KEY_TARGET_BUILD_FINGERPRINT = "target_build_fingerprint";
5461    field public static final String KEY_TARGET_SECURITY_PATCH_LEVEL = "target_security_patch_level";
5462    field public static final String KEY_TITLE = "title";
5463    field public static final int STATUS_IDLE = 1; // 0x1
5464    field public static final int STATUS_IN_PROGRESS = 3; // 0x3
5465    field public static final int STATUS_UNKNOWN = 0; // 0x0
5466    field public static final int STATUS_WAITING_DOWNLOAD = 2; // 0x2
5467    field public static final int STATUS_WAITING_INSTALL = 4; // 0x4
5468    field public static final int STATUS_WAITING_REBOOT = 5; // 0x5
5469  }
5470
5471  public class UpdateEngine {
5472    ctor public UpdateEngine();
5473    method public void applyPayload(String, long, long, String[]);
5474    method public boolean bind(android.os.UpdateEngineCallback, android.os.Handler);
5475    method public boolean bind(android.os.UpdateEngineCallback);
5476    method public void cancel();
5477    method public void resetStatus();
5478    method public void resume();
5479    method public void suspend();
5480    method public boolean unbind();
5481    method public boolean verifyPayloadMetadata(String);
5482  }
5483
5484  public static final class UpdateEngine.ErrorCodeConstants {
5485    ctor public UpdateEngine.ErrorCodeConstants();
5486    field public static final int DOWNLOAD_PAYLOAD_VERIFICATION_ERROR = 12; // 0xc
5487    field public static final int DOWNLOAD_TRANSFER_ERROR = 9; // 0x9
5488    field public static final int ERROR = 1; // 0x1
5489    field public static final int FILESYSTEM_COPIER_ERROR = 4; // 0x4
5490    field public static final int INSTALL_DEVICE_OPEN_ERROR = 7; // 0x7
5491    field public static final int KERNEL_DEVICE_OPEN_ERROR = 8; // 0x8
5492    field public static final int PAYLOAD_HASH_MISMATCH_ERROR = 10; // 0xa
5493    field public static final int PAYLOAD_MISMATCHED_TYPE_ERROR = 6; // 0x6
5494    field public static final int PAYLOAD_SIZE_MISMATCH_ERROR = 11; // 0xb
5495    field public static final int PAYLOAD_TIMESTAMP_ERROR = 51; // 0x33
5496    field public static final int POST_INSTALL_RUNNER_ERROR = 5; // 0x5
5497    field public static final int SUCCESS = 0; // 0x0
5498    field public static final int UPDATED_BUT_NOT_ACTIVE = 52; // 0x34
5499  }
5500
5501  public static final class UpdateEngine.UpdateStatusConstants {
5502    ctor public UpdateEngine.UpdateStatusConstants();
5503    field public static final int ATTEMPTING_ROLLBACK = 8; // 0x8
5504    field public static final int CHECKING_FOR_UPDATE = 1; // 0x1
5505    field public static final int DISABLED = 9; // 0x9
5506    field public static final int DOWNLOADING = 3; // 0x3
5507    field public static final int FINALIZING = 5; // 0x5
5508    field public static final int IDLE = 0; // 0x0
5509    field public static final int REPORTING_ERROR_EVENT = 7; // 0x7
5510    field public static final int UPDATED_NEED_REBOOT = 6; // 0x6
5511    field public static final int UPDATE_AVAILABLE = 2; // 0x2
5512    field public static final int VERIFYING = 4; // 0x4
5513  }
5514
5515  public abstract class UpdateEngineCallback {
5516    ctor public UpdateEngineCallback();
5517    method public abstract void onPayloadApplicationComplete(int);
5518    method public abstract void onStatusUpdate(int, float);
5519  }
5520
5521  public final class UserHandle implements android.os.Parcelable {
5522    method public static int getAppId(int);
5523    method public int getIdentifier();
5524    method @Deprecated public boolean isOwner();
5525    method public boolean isSystem();
5526    method public static int myUserId();
5527    method public static android.os.UserHandle of(int);
5528    field @NonNull public static final android.os.UserHandle ALL;
5529    field @NonNull public static final android.os.UserHandle CURRENT;
5530    field @NonNull public static final android.os.UserHandle SYSTEM;
5531  }
5532
5533  public class UserManager {
5534    method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public void clearSeedAccountData();
5535    method @Nullable @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public android.os.UserHandle getProfileParent(@NonNull android.os.UserHandle);
5536    method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public String getSeedAccountName();
5537    method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public android.os.PersistableBundle getSeedAccountOptions();
5538    method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public String getSeedAccountType();
5539    method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public long[] getSerialNumbersOfUsers(boolean);
5540    method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.GET_ACCOUNTS_PRIVILEGED}) public android.graphics.Bitmap getUserIcon();
5541    method @Deprecated @android.os.UserManager.UserRestrictionSource @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public int getUserRestrictionSource(String, android.os.UserHandle);
5542    method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public java.util.List<android.os.UserManager.EnforcingUser> getUserRestrictionSources(String, android.os.UserHandle);
5543    method @RequiresPermission(allOf={android.Manifest.permission.READ_PHONE_STATE, android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.INTERACT_ACROSS_USERS}, conditional=true) public int getUserSwitchability();
5544    method public boolean hasRestrictedProfiles();
5545    method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public boolean isAdminUser();
5546    method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public boolean isGuestUser();
5547    method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public boolean isManagedProfile();
5548    method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public boolean isManagedProfile(int);
5549    method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public boolean isPrimaryUser();
5550    method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public boolean isRestrictedProfile();
5551    method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public boolean isRestrictedProfile(@NonNull android.os.UserHandle);
5552    method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public boolean removeUser(@NonNull android.os.UserHandle);
5553    method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public void setUserIcon(@NonNull android.graphics.Bitmap);
5554    method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public void setUserName(@Nullable String);
5555    field public static final String ACTION_USER_RESTRICTIONS_CHANGED = "android.os.action.USER_RESTRICTIONS_CHANGED";
5556    field @Deprecated public static final String DISALLOW_OEM_UNLOCK = "no_oem_unlock";
5557    field public static final String DISALLOW_RUN_IN_BACKGROUND = "no_run_in_background";
5558    field public static final int RESTRICTION_NOT_SET = 0; // 0x0
5559    field public static final int RESTRICTION_SOURCE_DEVICE_OWNER = 2; // 0x2
5560    field public static final int RESTRICTION_SOURCE_PROFILE_OWNER = 4; // 0x4
5561    field public static final int RESTRICTION_SOURCE_SYSTEM = 1; // 0x1
5562    field public static final int SWITCHABILITY_STATUS_OK = 0; // 0x0
5563    field public static final int SWITCHABILITY_STATUS_SYSTEM_USER_LOCKED = 4; // 0x4
5564    field public static final int SWITCHABILITY_STATUS_USER_IN_CALL = 1; // 0x1
5565    field public static final int SWITCHABILITY_STATUS_USER_SWITCH_DISALLOWED = 2; // 0x2
5566  }
5567
5568  public static final class UserManager.EnforcingUser implements android.os.Parcelable {
5569    method public int describeContents();
5570    method public android.os.UserHandle getUserHandle();
5571    method @android.os.UserManager.UserRestrictionSource public int getUserRestrictionSource();
5572    method public void writeToParcel(android.os.Parcel, int);
5573    field @NonNull public static final android.os.Parcelable.Creator<android.os.UserManager.EnforcingUser> CREATOR;
5574  }
5575
5576  @IntDef(flag=true, prefix={"RESTRICTION_"}, value={android.os.UserManager.RESTRICTION_NOT_SET, android.os.UserManager.RESTRICTION_SOURCE_SYSTEM, android.os.UserManager.RESTRICTION_SOURCE_DEVICE_OWNER, android.os.UserManager.RESTRICTION_SOURCE_PROFILE_OWNER}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface UserManager.UserRestrictionSource {
5577  }
5578
5579  public class WorkSource implements android.os.Parcelable {
5580    method public android.os.WorkSource.WorkChain createWorkChain();
5581  }
5582
5583  public static final class WorkSource.WorkChain implements android.os.Parcelable {
5584    ctor public WorkSource.WorkChain();
5585    method public android.os.WorkSource.WorkChain addNode(int, @Nullable String);
5586    method public int describeContents();
5587    method public String getAttributionTag();
5588    method public int getAttributionUid();
5589    method public void writeToParcel(android.os.Parcel, int);
5590    field @NonNull public static final android.os.Parcelable.Creator<android.os.WorkSource.WorkChain> CREATOR;
5591  }
5592
5593}
5594
5595package android.os.image {
5596
5597  public class DynamicSystemClient {
5598    ctor public DynamicSystemClient(@NonNull android.content.Context);
5599    method @RequiresPermission(android.Manifest.permission.INSTALL_DYNAMIC_SYSTEM) public void bind();
5600    method public void setOnStatusChangedListener(@NonNull java.util.concurrent.Executor, @NonNull android.os.image.DynamicSystemClient.OnStatusChangedListener);
5601    method public void setOnStatusChangedListener(@NonNull android.os.image.DynamicSystemClient.OnStatusChangedListener);
5602    method @RequiresPermission(android.Manifest.permission.INSTALL_DYNAMIC_SYSTEM) public void start(@NonNull android.net.Uri, long);
5603    method @RequiresPermission(android.Manifest.permission.INSTALL_DYNAMIC_SYSTEM) public void start(@NonNull android.net.Uri, long, long);
5604    method @RequiresPermission(android.Manifest.permission.INSTALL_DYNAMIC_SYSTEM) public void unbind();
5605    field public static final int CAUSE_ERROR_EXCEPTION = 6; // 0x6
5606    field public static final int CAUSE_ERROR_INVALID_URL = 4; // 0x4
5607    field public static final int CAUSE_ERROR_IO = 3; // 0x3
5608    field public static final int CAUSE_ERROR_IPC = 5; // 0x5
5609    field public static final int CAUSE_INSTALL_CANCELLED = 2; // 0x2
5610    field public static final int CAUSE_INSTALL_COMPLETED = 1; // 0x1
5611    field public static final int CAUSE_NOT_SPECIFIED = 0; // 0x0
5612    field public static final int STATUS_IN_PROGRESS = 2; // 0x2
5613    field public static final int STATUS_IN_USE = 4; // 0x4
5614    field public static final int STATUS_NOT_STARTED = 1; // 0x1
5615    field public static final int STATUS_READY = 3; // 0x3
5616    field public static final int STATUS_UNKNOWN = 0; // 0x0
5617  }
5618
5619  public static interface DynamicSystemClient.OnStatusChangedListener {
5620    method public void onStatusChanged(int, int, long, @Nullable Throwable);
5621  }
5622
5623}
5624
5625package android.os.storage {
5626
5627  public class StorageManager {
5628    method @WorkerThread public void allocateBytes(@NonNull java.util.UUID, long, @RequiresPermission int) throws java.io.IOException;
5629    method @WorkerThread public void allocateBytes(java.io.FileDescriptor, long, @RequiresPermission int) throws java.io.IOException;
5630    method @WorkerThread public long getAllocatableBytes(@NonNull java.util.UUID, @RequiresPermission int) throws java.io.IOException;
5631    method public static boolean hasIsolatedStorage();
5632    field @RequiresPermission(android.Manifest.permission.ALLOCATE_AGGRESSIVE) public static final int FLAG_ALLOCATE_AGGRESSIVE = 1; // 0x1
5633  }
5634
5635}
5636
5637package android.permission {
5638
5639  public final class PermissionControllerManager {
5640    method @RequiresPermission(android.Manifest.permission.REVOKE_RUNTIME_PERMISSIONS) public void revokeRuntimePermissions(@NonNull java.util.Map<java.lang.String,java.util.List<java.lang.String>>, boolean, int, @NonNull java.util.concurrent.Executor, @NonNull android.permission.PermissionControllerManager.OnRevokeRuntimePermissionsCallback);
5641    field public static final int COUNT_ONLY_WHEN_GRANTED = 1; // 0x1
5642    field public static final int COUNT_WHEN_SYSTEM = 2; // 0x2
5643    field public static final int REASON_INSTALLER_POLICY_VIOLATION = 2; // 0x2
5644    field public static final int REASON_MALWARE = 1; // 0x1
5645  }
5646
5647  public abstract static class PermissionControllerManager.OnRevokeRuntimePermissionsCallback {
5648    ctor public PermissionControllerManager.OnRevokeRuntimePermissionsCallback();
5649    method public abstract void onRevokeRuntimePermissions(@NonNull java.util.Map<java.lang.String,java.util.List<java.lang.String>>);
5650  }
5651
5652  public abstract class PermissionControllerService extends android.app.Service {
5653    ctor public PermissionControllerService();
5654    method @NonNull public final android.os.IBinder onBind(android.content.Intent);
5655    method @BinderThread public abstract void onCountPermissionApps(@NonNull java.util.List<java.lang.String>, int, @NonNull java.util.function.IntConsumer);
5656    method @BinderThread public abstract void onGetAppPermissions(@NonNull String, @NonNull java.util.function.Consumer<java.util.List<android.permission.RuntimePermissionPresentationInfo>>);
5657    method @BinderThread public abstract void onGetPermissionUsages(boolean, long, @NonNull java.util.function.Consumer<java.util.List<android.permission.RuntimePermissionUsageInfo>>);
5658    method @BinderThread public abstract void onGetRuntimePermissionsBackup(@NonNull android.os.UserHandle, @NonNull java.io.OutputStream, @NonNull Runnable);
5659    method @BinderThread public abstract void onGrantOrUpgradeDefaultRuntimePermissions(@NonNull Runnable);
5660    method @BinderThread public abstract void onRestoreDelayedRuntimePermissionsBackup(@NonNull String, @NonNull android.os.UserHandle, @NonNull java.util.function.Consumer<java.lang.Boolean>);
5661    method @BinderThread public abstract void onRestoreRuntimePermissionsBackup(@NonNull android.os.UserHandle, @NonNull java.io.InputStream, @NonNull Runnable);
5662    method @BinderThread public abstract void onRevokeRuntimePermission(@NonNull String, @NonNull String, @NonNull Runnable);
5663    method @BinderThread public abstract void onRevokeRuntimePermissions(@NonNull java.util.Map<java.lang.String,java.util.List<java.lang.String>>, boolean, int, @NonNull String, @NonNull java.util.function.Consumer<java.util.Map<java.lang.String,java.util.List<java.lang.String>>>);
5664    method @BinderThread public abstract void onSetRuntimePermissionGrantStateByDeviceAdmin(@NonNull String, @NonNull String, @NonNull String, int, @NonNull java.util.function.Consumer<java.lang.Boolean>);
5665    field public static final String SERVICE_INTERFACE = "android.permission.PermissionControllerService";
5666  }
5667
5668  public final class PermissionManager {
5669    method @IntRange(from=0) @RequiresPermission(android.Manifest.permission.ADJUST_RUNTIME_PERMISSIONS_POLICY) public int getRuntimePermissionsVersion();
5670    method @NonNull public java.util.List<android.permission.PermissionManager.SplitPermissionInfo> getSplitPermissions();
5671    method @RequiresPermission(android.Manifest.permission.ADJUST_RUNTIME_PERMISSIONS_POLICY) public void setRuntimePermissionsVersion(@IntRange(from=0) int);
5672  }
5673
5674  public static final class PermissionManager.SplitPermissionInfo {
5675    method @NonNull public java.util.List<java.lang.String> getNewPermissions();
5676    method @NonNull public String getSplitPermission();
5677    method public int getTargetSdk();
5678  }
5679
5680  public final class RuntimePermissionPresentationInfo implements android.os.Parcelable {
5681    ctor public RuntimePermissionPresentationInfo(@NonNull CharSequence, boolean, boolean);
5682    method public int describeContents();
5683    method @NonNull public CharSequence getLabel();
5684    method public boolean isGranted();
5685    method public boolean isStandard();
5686    method public void writeToParcel(android.os.Parcel, int);
5687    field @NonNull public static final android.os.Parcelable.Creator<android.permission.RuntimePermissionPresentationInfo> CREATOR;
5688  }
5689
5690  public final class RuntimePermissionUsageInfo implements android.os.Parcelable {
5691    ctor public RuntimePermissionUsageInfo(@NonNull String, int);
5692    method public int describeContents();
5693    method public int getAppAccessCount();
5694    method @NonNull public String getName();
5695    method public void writeToParcel(android.os.Parcel, int);
5696    field @NonNull public static final android.os.Parcelable.Creator<android.permission.RuntimePermissionUsageInfo> CREATOR;
5697  }
5698
5699}
5700
5701package android.permissionpresenterservice {
5702
5703  @Deprecated public abstract class RuntimePermissionPresenterService extends android.app.Service {
5704    ctor @Deprecated public RuntimePermissionPresenterService();
5705    method @Deprecated public final void attachBaseContext(android.content.Context);
5706    method @Deprecated public final android.os.IBinder onBind(android.content.Intent);
5707    method @Deprecated public abstract java.util.List<android.content.pm.permission.RuntimePermissionPresentationInfo> onGetAppPermissions(@NonNull String);
5708    field @Deprecated public static final String SERVICE_INTERFACE = "android.permissionpresenterservice.RuntimePermissionPresenterService";
5709  }
5710
5711}
5712
5713package android.preference {
5714
5715  @Deprecated public class PreferenceManager {
5716    method @Deprecated public boolean isStorageCredentialProtected();
5717    method @Deprecated public void setStorageCredentialProtected();
5718  }
5719
5720}
5721
5722package android.print {
5723
5724  public final class PrintManager {
5725    method @RequiresPermission(android.Manifest.permission.READ_PRINT_SERVICE_RECOMMENDATIONS) public void addPrintServiceRecommendationsChangeListener(@NonNull android.print.PrintManager.PrintServiceRecommendationsChangeListener, @Nullable android.os.Handler);
5726    method @RequiresPermission(android.Manifest.permission.READ_PRINT_SERVICES) public void addPrintServicesChangeListener(@NonNull android.print.PrintManager.PrintServicesChangeListener, @Nullable android.os.Handler);
5727    method @NonNull @RequiresPermission(android.Manifest.permission.READ_PRINT_SERVICE_RECOMMENDATIONS) public java.util.List<android.printservice.recommendation.RecommendationInfo> getPrintServiceRecommendations();
5728    method @NonNull @RequiresPermission(android.Manifest.permission.READ_PRINT_SERVICES) public java.util.List<android.printservice.PrintServiceInfo> getPrintServices(int);
5729    method @RequiresPermission(android.Manifest.permission.READ_PRINT_SERVICE_RECOMMENDATIONS) public void removePrintServiceRecommendationsChangeListener(@NonNull android.print.PrintManager.PrintServiceRecommendationsChangeListener);
5730    method @RequiresPermission(android.Manifest.permission.READ_PRINT_SERVICES) public void removePrintServicesChangeListener(@NonNull android.print.PrintManager.PrintServicesChangeListener);
5731    field public static final int ENABLED_SERVICES = 1; // 0x1
5732  }
5733
5734  public static interface PrintManager.PrintServiceRecommendationsChangeListener {
5735    method public void onPrintServiceRecommendationsChanged();
5736  }
5737
5738  public static interface PrintManager.PrintServicesChangeListener {
5739    method public void onPrintServicesChanged();
5740  }
5741
5742}
5743
5744package android.printservice {
5745
5746  public final class PrintServiceInfo implements android.os.Parcelable {
5747    method public int describeContents();
5748    method @NonNull public android.content.ComponentName getComponentName();
5749    method public void writeToParcel(android.os.Parcel, int);
5750    field @NonNull public static final android.os.Parcelable.Creator<android.printservice.PrintServiceInfo> CREATOR;
5751  }
5752
5753}
5754
5755package android.printservice.recommendation {
5756
5757  public final class RecommendationInfo implements android.os.Parcelable {
5758    ctor public RecommendationInfo(@NonNull CharSequence, @NonNull CharSequence, @NonNull java.util.List<java.net.InetAddress>, boolean);
5759    ctor @Deprecated public RecommendationInfo(@NonNull CharSequence, @NonNull CharSequence, @IntRange(from=0) int, boolean);
5760    method public int describeContents();
5761    method @NonNull public java.util.List<java.net.InetAddress> getDiscoveredPrinters();
5762    method public CharSequence getName();
5763    method public int getNumDiscoveredPrinters();
5764    method public CharSequence getPackageName();
5765    method public boolean recommendsMultiVendorService();
5766    method public void writeToParcel(android.os.Parcel, int);
5767    field @NonNull public static final android.os.Parcelable.Creator<android.printservice.recommendation.RecommendationInfo> CREATOR;
5768  }
5769
5770  public abstract class RecommendationService extends android.app.Service {
5771    ctor public RecommendationService();
5772    method public final android.os.IBinder onBind(android.content.Intent);
5773    method public abstract void onConnected();
5774    method public abstract void onDisconnected();
5775    method public final void updateRecommendations(@Nullable java.util.List<android.printservice.recommendation.RecommendationInfo>);
5776    field public static final String SERVICE_INTERFACE = "android.printservice.recommendation.RecommendationService";
5777  }
5778
5779}
5780
5781package android.provider {
5782
5783  public static final class ContactsContract.MetadataSync implements android.provider.BaseColumns android.provider.ContactsContract.MetadataSyncColumns {
5784    field public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/contact_metadata";
5785    field public static final String CONTENT_TYPE = "vnd.android.cursor.dir/contact_metadata";
5786    field public static final android.net.Uri CONTENT_URI;
5787    field public static final String METADATA_AUTHORITY = "com.android.contacts.metadata";
5788    field public static final android.net.Uri METADATA_AUTHORITY_URI;
5789  }
5790
5791  protected static interface ContactsContract.MetadataSyncColumns {
5792    field public static final String ACCOUNT_NAME = "account_name";
5793    field public static final String ACCOUNT_TYPE = "account_type";
5794    field public static final String DATA = "data";
5795    field public static final String DATA_SET = "data_set";
5796    field public static final String DELETED = "deleted";
5797    field public static final String RAW_CONTACT_BACKUP_ID = "raw_contact_backup_id";
5798  }
5799
5800  public static final class ContactsContract.MetadataSyncState implements android.provider.BaseColumns android.provider.ContactsContract.MetadataSyncStateColumns {
5801    field public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/contact_metadata_sync_state";
5802    field public static final String CONTENT_TYPE = "vnd.android.cursor.dir/contact_metadata_sync_state";
5803    field public static final android.net.Uri CONTENT_URI;
5804  }
5805
5806  protected static interface ContactsContract.MetadataSyncStateColumns {
5807    field public static final String ACCOUNT_NAME = "account_name";
5808    field public static final String ACCOUNT_TYPE = "account_type";
5809    field public static final String DATA_SET = "data_set";
5810    field public static final String STATE = "state";
5811  }
5812
5813  public final class DeviceConfig {
5814    method @RequiresPermission(android.Manifest.permission.READ_DEVICE_CONFIG) public static void addOnPropertiesChangedListener(@NonNull String, @NonNull java.util.concurrent.Executor, @NonNull android.provider.DeviceConfig.OnPropertiesChangedListener);
5815    method @RequiresPermission(android.Manifest.permission.READ_DEVICE_CONFIG) public static boolean getBoolean(@NonNull String, @NonNull String, boolean);
5816    method @RequiresPermission(android.Manifest.permission.READ_DEVICE_CONFIG) public static float getFloat(@NonNull String, @NonNull String, float);
5817    method @RequiresPermission(android.Manifest.permission.READ_DEVICE_CONFIG) public static int getInt(@NonNull String, @NonNull String, int);
5818    method @RequiresPermission(android.Manifest.permission.READ_DEVICE_CONFIG) public static long getLong(@NonNull String, @NonNull String, long);
5819    method @RequiresPermission(android.Manifest.permission.READ_DEVICE_CONFIG) public static String getProperty(@NonNull String, @NonNull String);
5820    method @RequiresPermission(android.Manifest.permission.READ_DEVICE_CONFIG) public static String getString(@NonNull String, @NonNull String, @Nullable String);
5821    method public static void removeOnPropertiesChangedListener(@NonNull android.provider.DeviceConfig.OnPropertiesChangedListener);
5822    method @RequiresPermission(android.Manifest.permission.WRITE_DEVICE_CONFIG) public static void resetToDefaults(int, @Nullable String);
5823    method @RequiresPermission(android.Manifest.permission.WRITE_DEVICE_CONFIG) public static boolean setProperty(@NonNull String, @NonNull String, @Nullable String, boolean);
5824    field public static final String NAMESPACE_ACTIVITY_MANAGER = "activity_manager";
5825    field public static final String NAMESPACE_ACTIVITY_MANAGER_NATIVE_BOOT = "activity_manager_native_boot";
5826    field public static final String NAMESPACE_APP_COMPAT = "app_compat";
5827    field public static final String NAMESPACE_ATTENTION_MANAGER_SERVICE = "attention_manager_service";
5828    field public static final String NAMESPACE_AUTOFILL = "autofill";
5829    field public static final String NAMESPACE_CONNECTIVITY = "connectivity";
5830    field public static final String NAMESPACE_CONTENT_CAPTURE = "content_capture";
5831    field public static final String NAMESPACE_DEX_BOOT = "dex_boot";
5832    field public static final String NAMESPACE_GAME_DRIVER = "game_driver";
5833    field public static final String NAMESPACE_INPUT_NATIVE_BOOT = "input_native_boot";
5834    field public static final String NAMESPACE_INTELLIGENCE_ATTENTION = "intelligence_attention";
5835    field public static final String NAMESPACE_MEDIA_NATIVE = "media_native";
5836    field public static final String NAMESPACE_NETD_NATIVE = "netd_native";
5837    field public static final String NAMESPACE_PRIVACY = "privacy";
5838    field public static final String NAMESPACE_ROLLBACK = "rollback";
5839    field public static final String NAMESPACE_ROLLBACK_BOOT = "rollback_boot";
5840    field public static final String NAMESPACE_RUNTIME = "runtime";
5841    field public static final String NAMESPACE_RUNTIME_NATIVE = "runtime_native";
5842    field public static final String NAMESPACE_RUNTIME_NATIVE_BOOT = "runtime_native_boot";
5843    field public static final String NAMESPACE_SCHEDULER = "scheduler";
5844    field public static final String NAMESPACE_STORAGE = "storage";
5845    field public static final String NAMESPACE_SYSTEMUI = "systemui";
5846    field public static final String NAMESPACE_TELEPHONY = "telephony";
5847    field public static final String NAMESPACE_TEXTCLASSIFIER = "textclassifier";
5848  }
5849
5850  public static interface DeviceConfig.OnPropertiesChangedListener {
5851    method public void onPropertiesChanged(@NonNull android.provider.DeviceConfig.Properties);
5852  }
5853
5854  public static class DeviceConfig.Properties {
5855    method public boolean getBoolean(@NonNull String, boolean);
5856    method public float getFloat(@NonNull String, float);
5857    method public int getInt(@NonNull String, int);
5858    method @NonNull public java.util.Set<java.lang.String> getKeyset();
5859    method public long getLong(@NonNull String, long);
5860    method @NonNull public String getNamespace();
5861    method @Nullable public String getString(@NonNull String, @Nullable String);
5862  }
5863
5864  public final class DocumentsContract {
5865    method public static boolean isManageMode(@NonNull android.net.Uri);
5866    method @NonNull public static android.net.Uri setManageMode(@NonNull android.net.Uri);
5867    field public static final String ACTION_DOCUMENT_ROOT_SETTINGS = "android.provider.action.DOCUMENT_ROOT_SETTINGS";
5868    field public static final String ACTION_MANAGE_DOCUMENT = "android.provider.action.MANAGE_DOCUMENT";
5869    field public static final String EXTRA_SHOW_ADVANCED = "android.provider.extra.SHOW_ADVANCED";
5870  }
5871
5872  public static final class DocumentsContract.Root {
5873    field public static final int FLAG_ADVANCED = 65536; // 0x10000
5874    field public static final int FLAG_HAS_SETTINGS = 131072; // 0x20000
5875    field public static final int FLAG_REMOVABLE_SD = 262144; // 0x40000
5876    field public static final int FLAG_REMOVABLE_USB = 524288; // 0x80000
5877  }
5878
5879  public abstract class SearchIndexableData {
5880    ctor public SearchIndexableData();
5881    ctor public SearchIndexableData(android.content.Context);
5882    field public String className;
5883    field public android.content.Context context;
5884    field public boolean enabled;
5885    field public int iconResId;
5886    field public String intentAction;
5887    field public String intentTargetClass;
5888    field public String intentTargetPackage;
5889    field public String key;
5890    field public java.util.Locale locale;
5891    field public String packageName;
5892    field public int rank;
5893    field public int userId;
5894  }
5895
5896  public class SearchIndexableResource extends android.provider.SearchIndexableData {
5897    ctor public SearchIndexableResource(int, int, String, int);
5898    ctor public SearchIndexableResource(android.content.Context);
5899    field public int xmlResId;
5900  }
5901
5902  public class SearchIndexablesContract {
5903    ctor public SearchIndexablesContract();
5904    field public static final int COLUMN_INDEX_NON_INDEXABLE_KEYS_KEY_VALUE = 0; // 0x0
5905    field public static final int COLUMN_INDEX_RAW_CLASS_NAME = 7; // 0x7
5906    field public static final int COLUMN_INDEX_RAW_ENTRIES = 4; // 0x4
5907    field public static final int COLUMN_INDEX_RAW_ICON_RESID = 8; // 0x8
5908    field public static final int COLUMN_INDEX_RAW_INTENT_ACTION = 9; // 0x9
5909    field public static final int COLUMN_INDEX_RAW_INTENT_TARGET_CLASS = 11; // 0xb
5910    field public static final int COLUMN_INDEX_RAW_INTENT_TARGET_PACKAGE = 10; // 0xa
5911    field public static final int COLUMN_INDEX_RAW_KEY = 12; // 0xc
5912    field public static final int COLUMN_INDEX_RAW_KEYWORDS = 5; // 0x5
5913    field public static final int COLUMN_INDEX_RAW_RANK = 0; // 0x0
5914    field public static final int COLUMN_INDEX_RAW_SCREEN_TITLE = 6; // 0x6
5915    field public static final int COLUMN_INDEX_RAW_SUMMARY_OFF = 3; // 0x3
5916    field public static final int COLUMN_INDEX_RAW_SUMMARY_ON = 2; // 0x2
5917    field public static final int COLUMN_INDEX_RAW_TITLE = 1; // 0x1
5918    field public static final int COLUMN_INDEX_RAW_USER_ID = 13; // 0xd
5919    field public static final int COLUMN_INDEX_XML_RES_CLASS_NAME = 2; // 0x2
5920    field public static final int COLUMN_INDEX_XML_RES_ICON_RESID = 3; // 0x3
5921    field public static final int COLUMN_INDEX_XML_RES_INTENT_ACTION = 4; // 0x4
5922    field public static final int COLUMN_INDEX_XML_RES_INTENT_TARGET_CLASS = 6; // 0x6
5923    field public static final int COLUMN_INDEX_XML_RES_INTENT_TARGET_PACKAGE = 5; // 0x5
5924    field public static final int COLUMN_INDEX_XML_RES_RANK = 0; // 0x0
5925    field public static final int COLUMN_INDEX_XML_RES_RESID = 1; // 0x1
5926    field public static final String INDEXABLES_RAW = "indexables_raw";
5927    field public static final String[] INDEXABLES_RAW_COLUMNS;
5928    field public static final String INDEXABLES_RAW_PATH = "settings/indexables_raw";
5929    field public static final String INDEXABLES_XML_RES = "indexables_xml_res";
5930    field public static final String[] INDEXABLES_XML_RES_COLUMNS;
5931    field public static final String INDEXABLES_XML_RES_PATH = "settings/indexables_xml_res";
5932    field public static final String NON_INDEXABLES_KEYS = "non_indexables_key";
5933    field public static final String[] NON_INDEXABLES_KEYS_COLUMNS;
5934    field public static final String NON_INDEXABLES_KEYS_PATH = "settings/non_indexables_key";
5935    field public static final String PROVIDER_INTERFACE = "android.content.action.SEARCH_INDEXABLES_PROVIDER";
5936    field public static final String SLICE_URI_PAIRS = "slice_uri_pairs";
5937    field @NonNull public static final String[] SLICE_URI_PAIRS_COLUMNS;
5938    field public static final String SLICE_URI_PAIRS_PATH = "settings/slice_uri_pairs";
5939  }
5940
5941  public static class SearchIndexablesContract.BaseColumns {
5942    field public static final String COLUMN_CLASS_NAME = "className";
5943    field public static final String COLUMN_ICON_RESID = "iconResId";
5944    field public static final String COLUMN_INTENT_ACTION = "intentAction";
5945    field public static final String COLUMN_INTENT_TARGET_CLASS = "intentTargetClass";
5946    field public static final String COLUMN_INTENT_TARGET_PACKAGE = "intentTargetPackage";
5947    field public static final String COLUMN_RANK = "rank";
5948  }
5949
5950  public static final class SearchIndexablesContract.NonIndexableKey extends android.provider.SearchIndexablesContract.BaseColumns {
5951    field public static final String COLUMN_KEY_VALUE = "key";
5952    field public static final String MIME_TYPE = "vnd.android.cursor.dir/non_indexables_key";
5953  }
5954
5955  public static final class SearchIndexablesContract.RawData extends android.provider.SearchIndexablesContract.BaseColumns {
5956    field public static final String COLUMN_ENTRIES = "entries";
5957    field public static final String COLUMN_KEY = "key";
5958    field public static final String COLUMN_KEYWORDS = "keywords";
5959    field public static final String COLUMN_SCREEN_TITLE = "screenTitle";
5960    field public static final String COLUMN_SUMMARY_OFF = "summaryOff";
5961    field public static final String COLUMN_SUMMARY_ON = "summaryOn";
5962    field public static final String COLUMN_TITLE = "title";
5963    field public static final String COLUMN_USER_ID = "user_id";
5964    field public static final String MIME_TYPE = "vnd.android.cursor.dir/indexables_raw";
5965  }
5966
5967  public static final class SearchIndexablesContract.SliceUriPairColumns {
5968    field public static final String KEY = "key";
5969    field public static final String SLICE_URI = "slice_uri";
5970  }
5971
5972  public static final class SearchIndexablesContract.XmlResource extends android.provider.SearchIndexablesContract.BaseColumns {
5973    field public static final String COLUMN_XML_RESID = "xmlResId";
5974    field public static final String MIME_TYPE = "vnd.android.cursor.dir/indexables_xml_res";
5975  }
5976
5977  public abstract class SearchIndexablesProvider extends android.content.ContentProvider {
5978    ctor public SearchIndexablesProvider();
5979    method public final int delete(android.net.Uri, String, String[]);
5980    method public String getType(android.net.Uri);
5981    method public final android.net.Uri insert(android.net.Uri, android.content.ContentValues);
5982    method public android.database.Cursor query(android.net.Uri, String[], String, String[], String);
5983    method public abstract android.database.Cursor queryNonIndexableKeys(String[]);
5984    method public abstract android.database.Cursor queryRawData(String[]);
5985    method @Nullable public android.database.Cursor querySliceUriPairs();
5986    method public abstract android.database.Cursor queryXmlResources(String[]);
5987    method public final int update(android.net.Uri, android.content.ContentValues, String, String[]);
5988  }
5989
5990  public final class Settings {
5991    field public static final String ACTION_ACCESSIBILITY_DETAILS_SETTINGS = "android.settings.ACCESSIBILITY_DETAILS_SETTINGS";
5992    field public static final String ACTION_ENTERPRISE_PRIVACY_SETTINGS = "android.settings.ENTERPRISE_PRIVACY_SETTINGS";
5993    field public static final String ACTION_LOCATION_CONTROLLER_EXTRA_PACKAGE_SETTINGS = "android.settings.LOCATION_CONTROLLER_EXTRA_PACKAGE_SETTINGS";
5994    field public static final String ACTION_MANAGE_DOMAIN_URLS = "android.settings.MANAGE_DOMAIN_URLS";
5995    field public static final String ACTION_MANAGE_MORE_DEFAULT_APPS_SETTINGS = "android.settings.MANAGE_MORE_DEFAULT_APPS_SETTINGS";
5996    field public static final String ACTION_NOTIFICATION_POLICY_ACCESS_DETAIL_SETTINGS = "android.settings.NOTIFICATION_POLICY_ACCESS_DETAIL_SETTINGS";
5997    field public static final String ACTION_REQUEST_ENABLE_CONTENT_CAPTURE = "android.settings.REQUEST_ENABLE_CONTENT_CAPTURE";
5998    field public static final String ACTION_SHOW_ADMIN_SUPPORT_DETAILS = "android.settings.SHOW_ADMIN_SUPPORT_DETAILS";
5999  }
6000
6001  public static final class Settings.Global extends android.provider.Settings.NameValueTable {
6002    method @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public static boolean putString(@NonNull android.content.ContentResolver, @NonNull String, @Nullable String, @Nullable String, boolean);
6003    method @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public static void resetToDefaults(@NonNull android.content.ContentResolver, @Nullable String);
6004    field public static final String APP_STANDBY_ENABLED = "app_standby_enabled";
6005    field public static final String AUTOFILL_COMPAT_MODE_ALLOWED_PACKAGES = "autofill_compat_mode_allowed_packages";
6006    field public static final String CARRIER_APP_NAMES = "carrier_app_names";
6007    field public static final String CARRIER_APP_WHITELIST = "carrier_app_whitelist";
6008    field public static final String DEFAULT_SM_DP_PLUS = "default_sm_dp_plus";
6009    field public static final String DEVICE_DEMO_MODE = "device_demo_mode";
6010    field public static final String DEVICE_PROVISIONING_MOBILE_DATA_ENABLED = "device_provisioning_mobile_data";
6011    field public static final String EUICC_PROVISIONED = "euicc_provisioned";
6012    field public static final String INSTALL_CARRIER_APP_NOTIFICATION_PERSISTENT = "install_carrier_app_notification_persistent";
6013    field public static final String INSTALL_CARRIER_APP_NOTIFICATION_SLEEP_MILLIS = "install_carrier_app_notification_sleep_millis";
6014    field public static final String OTA_DISABLE_AUTOMATIC_UPDATE = "ota_disable_automatic_update";
6015    field public static final String REQUIRE_PASSWORD_TO_DECRYPT = "require_password_to_decrypt";
6016    field public static final String THEATER_MODE_ON = "theater_mode_on";
6017    field public static final String WEBVIEW_MULTIPROCESS = "webview_multiprocess";
6018    field public static final String WIFI_BADGING_THRESHOLDS = "wifi_badging_thresholds";
6019    field public static final String WIFI_WAKEUP_ENABLED = "wifi_wakeup_enabled";
6020  }
6021
6022  public static final class Settings.Secure extends android.provider.Settings.NameValueTable {
6023    method @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public static boolean putString(@NonNull android.content.ContentResolver, @NonNull String, @Nullable String, @Nullable String, boolean);
6024    method @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public static void resetToDefaults(@NonNull android.content.ContentResolver, @Nullable String);
6025    field public static final String ACCESSIBILITY_DISPLAY_MAGNIFICATION_NAVBAR_ENABLED = "accessibility_display_magnification_navbar_enabled";
6026    field public static final String ASSIST_GESTURE_SETUP_COMPLETE = "assist_gesture_setup_complete";
6027    field public static final String AUTOFILL_FEATURE_FIELD_CLASSIFICATION = "autofill_field_classification";
6028    field public static final String AUTOFILL_USER_DATA_MAX_CATEGORY_COUNT = "autofill_user_data_max_category_count";
6029    field public static final String AUTOFILL_USER_DATA_MAX_FIELD_CLASSIFICATION_IDS_SIZE = "autofill_user_data_max_field_classification_size";
6030    field public static final String AUTOFILL_USER_DATA_MAX_USER_DATA_SIZE = "autofill_user_data_max_user_data_size";
6031    field public static final String AUTOFILL_USER_DATA_MAX_VALUE_LENGTH = "autofill_user_data_max_value_length";
6032    field public static final String AUTOFILL_USER_DATA_MIN_VALUE_LENGTH = "autofill_user_data_min_value_length";
6033    field public static final String COMPLETED_CATEGORY_PREFIX = "suggested.completed_category.";
6034    field public static final String DOZE_ALWAYS_ON = "doze_always_on";
6035    field public static final String HUSH_GESTURE_USED = "hush_gesture_used";
6036    field public static final String INSTANT_APPS_ENABLED = "instant_apps_enabled";
6037    field public static final String LAST_SETUP_SHOWN = "last_setup_shown";
6038    field public static final String LOCATION_ACCESS_CHECK_DELAY_MILLIS = "location_access_check_delay_millis";
6039    field public static final String LOCATION_ACCESS_CHECK_INTERVAL_MILLIS = "location_access_check_interval_millis";
6040    field public static final int LOCATION_MODE_ON = 3; // 0x3
6041    field public static final String LOCATION_PERMISSIONS_UPGRADE_TO_Q_MODE = "location_permissions_upgrade_to_q_mode";
6042    field public static final String LOCK_SCREEN_ALLOW_PRIVATE_NOTIFICATIONS = "lock_screen_allow_private_notifications";
6043    field public static final String LOCK_SCREEN_SHOW_NOTIFICATIONS = "lock_screen_show_notifications";
6044    field public static final String ODI_CAPTIONS_ENABLED = "odi_captions_enabled";
6045    field public static final String THEME_CUSTOMIZATION_OVERLAY_PACKAGES = "theme_customization_overlay_packages";
6046    field public static final String USER_SETUP_COMPLETE = "user_setup_complete";
6047    field public static final int USER_SETUP_PERSONALIZATION_COMPLETE = 10; // 0xa
6048    field public static final int USER_SETUP_PERSONALIZATION_NOT_STARTED = 0; // 0x0
6049    field public static final int USER_SETUP_PERSONALIZATION_PAUSED = 2; // 0x2
6050    field public static final int USER_SETUP_PERSONALIZATION_STARTED = 1; // 0x1
6051    field public static final String USER_SETUP_PERSONALIZATION_STATE = "user_setup_personalization_state";
6052    field public static final String VOLUME_HUSH_GESTURE = "volume_hush_gesture";
6053    field public static final int VOLUME_HUSH_MUTE = 2; // 0x2
6054    field public static final int VOLUME_HUSH_OFF = 0; // 0x0
6055    field public static final int VOLUME_HUSH_VIBRATE = 1; // 0x1
6056  }
6057
6058  public static final class Telephony.Carriers implements android.provider.BaseColumns {
6059    field public static final String APN_SET_ID = "apn_set_id";
6060    field public static final int CARRIER_EDITED = 4; // 0x4
6061    field public static final String EDITED_STATUS = "edited";
6062    field public static final String MAX_CONNECTIONS = "max_conns";
6063    field public static final String MODEM_PERSIST = "modem_cognitive";
6064    field public static final String MTU = "mtu";
6065    field public static final int NO_APN_SET_ID = 0; // 0x0
6066    field public static final String TIME_LIMIT_FOR_MAX_CONNECTIONS = "max_conns_time";
6067    field public static final int UNEDITED = 0; // 0x0
6068    field public static final int USER_DELETED = 2; // 0x2
6069    field public static final String USER_EDITABLE = "user_editable";
6070    field public static final int USER_EDITED = 1; // 0x1
6071    field public static final String USER_VISIBLE = "user_visible";
6072    field public static final String WAIT_TIME_RETRY = "wait_time";
6073  }
6074
6075  public final class TimeZoneRulesDataContract {
6076    field public static final String AUTHORITY = "com.android.timezone";
6077  }
6078
6079  public static final class TimeZoneRulesDataContract.Operation {
6080    field public static final String COLUMN_DISTRO_MAJOR_VERSION = "distro_major_version";
6081    field public static final String COLUMN_DISTRO_MINOR_VERSION = "distro_minor_version";
6082    field public static final String COLUMN_REVISION = "revision";
6083    field public static final String COLUMN_RULES_VERSION = "rules_version";
6084    field public static final String COLUMN_TYPE = "type";
6085    field public static final android.net.Uri CONTENT_URI;
6086    field public static final String TYPE_INSTALL = "INSTALL";
6087    field public static final String TYPE_NO_OP = "NOOP";
6088    field public static final String TYPE_UNINSTALL = "UNINSTALL";
6089  }
6090
6091}
6092
6093package android.security.keystore {
6094
6095  public abstract class AttestationUtils {
6096    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) @NonNull public static java.security.cert.X509Certificate[] attestDeviceIds(android.content.Context, @NonNull int[], @NonNull byte[]) throws android.security.keystore.DeviceIdAttestationException;
6097    field public static final int ID_TYPE_IMEI = 2; // 0x2
6098    field public static final int ID_TYPE_MEID = 3; // 0x3
6099    field public static final int ID_TYPE_SERIAL = 1; // 0x1
6100  }
6101
6102  public class DeviceIdAttestationException extends java.lang.Exception {
6103    ctor public DeviceIdAttestationException(@Nullable String);
6104    ctor public DeviceIdAttestationException(@Nullable String, @Nullable Throwable);
6105  }
6106
6107}
6108
6109package android.security.keystore.recovery {
6110
6111  public class DecryptionFailedException extends java.security.GeneralSecurityException {
6112    ctor public DecryptionFailedException(String);
6113  }
6114
6115  public class InternalRecoveryServiceException extends java.security.GeneralSecurityException {
6116    ctor public InternalRecoveryServiceException(String);
6117    ctor public InternalRecoveryServiceException(String, Throwable);
6118  }
6119
6120  public final class KeyChainProtectionParams implements android.os.Parcelable {
6121    method public void clearSecret();
6122    method public int describeContents();
6123    method @NonNull public android.security.keystore.recovery.KeyDerivationParams getKeyDerivationParams();
6124    method public int getLockScreenUiFormat();
6125    method @NonNull public byte[] getSecret();
6126    method public int getUserSecretType();
6127    method public void writeToParcel(android.os.Parcel, int);
6128    field @NonNull public static final android.os.Parcelable.Creator<android.security.keystore.recovery.KeyChainProtectionParams> CREATOR;
6129    field public static final int TYPE_LOCKSCREEN = 100; // 0x64
6130    field public static final int UI_FORMAT_PASSWORD = 2; // 0x2
6131    field public static final int UI_FORMAT_PATTERN = 3; // 0x3
6132    field public static final int UI_FORMAT_PIN = 1; // 0x1
6133  }
6134
6135  public static class KeyChainProtectionParams.Builder {
6136    ctor public KeyChainProtectionParams.Builder();
6137    method @NonNull public android.security.keystore.recovery.KeyChainProtectionParams build();
6138    method @NonNull public android.security.keystore.recovery.KeyChainProtectionParams.Builder setKeyDerivationParams(@NonNull android.security.keystore.recovery.KeyDerivationParams);
6139    method @NonNull public android.security.keystore.recovery.KeyChainProtectionParams.Builder setLockScreenUiFormat(int);
6140    method @NonNull public android.security.keystore.recovery.KeyChainProtectionParams.Builder setSecret(@NonNull byte[]);
6141    method @NonNull public android.security.keystore.recovery.KeyChainProtectionParams.Builder setUserSecretType(int);
6142  }
6143
6144  public final class KeyChainSnapshot implements android.os.Parcelable {
6145    method public int describeContents();
6146    method public long getCounterId();
6147    method @NonNull public byte[] getEncryptedRecoveryKeyBlob();
6148    method @NonNull public java.util.List<android.security.keystore.recovery.KeyChainProtectionParams> getKeyChainProtectionParams();
6149    method public int getMaxAttempts();
6150    method @NonNull public byte[] getServerParams();
6151    method public int getSnapshotVersion();
6152    method @NonNull public java.security.cert.CertPath getTrustedHardwareCertPath();
6153    method @NonNull public java.util.List<android.security.keystore.recovery.WrappedApplicationKey> getWrappedApplicationKeys();
6154    method public void writeToParcel(android.os.Parcel, int);
6155    field @NonNull public static final android.os.Parcelable.Creator<android.security.keystore.recovery.KeyChainSnapshot> CREATOR;
6156  }
6157
6158  public final class KeyDerivationParams implements android.os.Parcelable {
6159    method @NonNull public static android.security.keystore.recovery.KeyDerivationParams createScryptParams(@NonNull byte[], int);
6160    method @NonNull public static android.security.keystore.recovery.KeyDerivationParams createSha256Params(@NonNull byte[]);
6161    method public int describeContents();
6162    method public int getAlgorithm();
6163    method public int getMemoryDifficulty();
6164    method @NonNull public byte[] getSalt();
6165    method public void writeToParcel(android.os.Parcel, int);
6166    field public static final int ALGORITHM_SCRYPT = 2; // 0x2
6167    field public static final int ALGORITHM_SHA256 = 1; // 0x1
6168    field @NonNull public static final android.os.Parcelable.Creator<android.security.keystore.recovery.KeyDerivationParams> CREATOR;
6169  }
6170
6171  public class LockScreenRequiredException extends java.security.GeneralSecurityException {
6172    ctor public LockScreenRequiredException(String);
6173  }
6174
6175  public class RecoveryController {
6176    method @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) @NonNull public android.security.keystore.recovery.RecoverySession createRecoverySession();
6177    method @Deprecated @NonNull @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public java.security.Key generateKey(@NonNull String) throws android.security.keystore.recovery.InternalRecoveryServiceException, android.security.keystore.recovery.LockScreenRequiredException;
6178    method @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) @NonNull public java.security.Key generateKey(@NonNull String, @Nullable byte[]) throws android.security.keystore.recovery.InternalRecoveryServiceException, android.security.keystore.recovery.LockScreenRequiredException;
6179    method @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) @NonNull public java.util.List<java.lang.String> getAliases() throws android.security.keystore.recovery.InternalRecoveryServiceException;
6180    method @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) @NonNull public static android.security.keystore.recovery.RecoveryController getInstance(@NonNull android.content.Context);
6181    method @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) @Nullable public java.security.Key getKey(@NonNull String) throws android.security.keystore.recovery.InternalRecoveryServiceException, java.security.UnrecoverableKeyException;
6182    method @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) @Nullable public android.security.keystore.recovery.KeyChainSnapshot getKeyChainSnapshot() throws android.security.keystore.recovery.InternalRecoveryServiceException;
6183    method @NonNull @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public int[] getRecoverySecretTypes() throws android.security.keystore.recovery.InternalRecoveryServiceException;
6184    method @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public int getRecoveryStatus(@NonNull String) throws android.security.keystore.recovery.InternalRecoveryServiceException;
6185    method @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) @NonNull public java.util.Map<java.lang.String,java.security.cert.X509Certificate> getRootCertificates();
6186    method @Deprecated @NonNull @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public java.security.Key importKey(@NonNull String, @NonNull byte[]) throws android.security.keystore.recovery.InternalRecoveryServiceException, android.security.keystore.recovery.LockScreenRequiredException;
6187    method @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) @NonNull public java.security.Key importKey(@NonNull String, @NonNull byte[], @Nullable byte[]) throws android.security.keystore.recovery.InternalRecoveryServiceException, android.security.keystore.recovery.LockScreenRequiredException;
6188    method @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public void initRecoveryService(@NonNull String, @NonNull byte[], @NonNull byte[]) throws java.security.cert.CertificateException, android.security.keystore.recovery.InternalRecoveryServiceException;
6189    method @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public static boolean isRecoverableKeyStoreEnabled(@NonNull android.content.Context);
6190    method @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public void removeKey(@NonNull String) throws android.security.keystore.recovery.InternalRecoveryServiceException;
6191    method @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public void setRecoverySecretTypes(@NonNull int[]) throws android.security.keystore.recovery.InternalRecoveryServiceException;
6192    method @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public void setRecoveryStatus(@NonNull String, int) throws android.security.keystore.recovery.InternalRecoveryServiceException;
6193    method @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public void setServerParams(@NonNull byte[]) throws android.security.keystore.recovery.InternalRecoveryServiceException;
6194    method @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public void setSnapshotCreatedPendingIntent(@Nullable android.app.PendingIntent) throws android.security.keystore.recovery.InternalRecoveryServiceException;
6195    field public static final int RECOVERY_STATUS_PERMANENT_FAILURE = 3; // 0x3
6196    field public static final int RECOVERY_STATUS_SYNCED = 0; // 0x0
6197    field public static final int RECOVERY_STATUS_SYNC_IN_PROGRESS = 1; // 0x1
6198  }
6199
6200  public class RecoverySession implements java.lang.AutoCloseable {
6201    method @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) public void close();
6202    method @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) @NonNull public java.util.Map<java.lang.String,java.security.Key> recoverKeyChainSnapshot(@NonNull byte[], @NonNull java.util.List<android.security.keystore.recovery.WrappedApplicationKey>) throws android.security.keystore.recovery.DecryptionFailedException, android.security.keystore.recovery.InternalRecoveryServiceException, android.security.keystore.recovery.SessionExpiredException;
6203    method @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE) @NonNull public byte[] start(@NonNull String, @NonNull java.security.cert.CertPath, @NonNull byte[], @NonNull byte[], @NonNull java.util.List<android.security.keystore.recovery.KeyChainProtectionParams>) throws java.security.cert.CertificateException, android.security.keystore.recovery.InternalRecoveryServiceException;
6204  }
6205
6206  public class SessionExpiredException extends java.security.GeneralSecurityException {
6207    ctor public SessionExpiredException(String);
6208  }
6209
6210  public final class WrappedApplicationKey implements android.os.Parcelable {
6211    method public int describeContents();
6212    method @NonNull public String getAlias();
6213    method @NonNull public byte[] getEncryptedKeyMaterial();
6214    method @Nullable public byte[] getMetadata();
6215    method public void writeToParcel(android.os.Parcel, int);
6216    field @NonNull public static final android.os.Parcelable.Creator<android.security.keystore.recovery.WrappedApplicationKey> CREATOR;
6217  }
6218
6219  public static class WrappedApplicationKey.Builder {
6220    ctor public WrappedApplicationKey.Builder();
6221    method @NonNull public android.security.keystore.recovery.WrappedApplicationKey build();
6222    method @NonNull public android.security.keystore.recovery.WrappedApplicationKey.Builder setAlias(@NonNull String);
6223    method @NonNull public android.security.keystore.recovery.WrappedApplicationKey.Builder setEncryptedKeyMaterial(@NonNull byte[]);
6224    method @NonNull public android.security.keystore.recovery.WrappedApplicationKey.Builder setMetadata(@Nullable byte[]);
6225  }
6226
6227}
6228
6229package android.service.appprediction {
6230
6231  public abstract class AppPredictionService extends android.app.Service {
6232    ctor public AppPredictionService();
6233    method @MainThread public abstract void onAppTargetEvent(@NonNull android.app.prediction.AppPredictionSessionId, @NonNull android.app.prediction.AppTargetEvent);
6234    method @NonNull public final android.os.IBinder onBind(@NonNull android.content.Intent);
6235    method public void onCreatePredictionSession(@NonNull android.app.prediction.AppPredictionContext, @NonNull android.app.prediction.AppPredictionSessionId);
6236    method @MainThread public void onDestroyPredictionSession(@NonNull android.app.prediction.AppPredictionSessionId);
6237    method @MainThread public abstract void onLaunchLocationShown(@NonNull android.app.prediction.AppPredictionSessionId, @NonNull String, @NonNull java.util.List<android.app.prediction.AppTargetId>);
6238    method @MainThread public abstract void onRequestPredictionUpdate(@NonNull android.app.prediction.AppPredictionSessionId);
6239    method @MainThread public abstract void onSortAppTargets(@NonNull android.app.prediction.AppPredictionSessionId, @NonNull java.util.List<android.app.prediction.AppTarget>, @NonNull android.os.CancellationSignal, @NonNull java.util.function.Consumer<java.util.List<android.app.prediction.AppTarget>>);
6240    method @MainThread public void onStartPredictionUpdates();
6241    method @MainThread public void onStopPredictionUpdates();
6242    method public final void updatePredictions(@NonNull android.app.prediction.AppPredictionSessionId, @NonNull java.util.List<android.app.prediction.AppTarget>);
6243  }
6244
6245}
6246
6247package android.service.attention {
6248
6249  public abstract class AttentionService extends android.app.Service {
6250    ctor public AttentionService();
6251    method @Nullable public final android.os.IBinder onBind(@NonNull android.content.Intent);
6252    method public abstract void onCancelAttentionCheck(@NonNull android.service.attention.AttentionService.AttentionCallback);
6253    method public abstract void onCheckAttention(@NonNull android.service.attention.AttentionService.AttentionCallback);
6254    field public static final int ATTENTION_FAILURE_CAMERA_PERMISSION_ABSENT = 6; // 0x6
6255    field public static final int ATTENTION_FAILURE_CANCELLED = 3; // 0x3
6256    field public static final int ATTENTION_FAILURE_PREEMPTED = 4; // 0x4
6257    field public static final int ATTENTION_FAILURE_TIMED_OUT = 5; // 0x5
6258    field public static final int ATTENTION_FAILURE_UNKNOWN = 2; // 0x2
6259    field public static final int ATTENTION_SUCCESS_ABSENT = 0; // 0x0
6260    field public static final int ATTENTION_SUCCESS_PRESENT = 1; // 0x1
6261    field public static final String SERVICE_INTERFACE = "android.service.attention.AttentionService";
6262  }
6263
6264  public static final class AttentionService.AttentionCallback {
6265    method public void onFailure(int);
6266    method public void onSuccess(int, long);
6267  }
6268
6269}
6270
6271package android.service.autofill {
6272
6273  public abstract class AutofillFieldClassificationService extends android.app.Service {
6274    method public android.os.IBinder onBind(android.content.Intent);
6275    method @Nullable public float[][] onCalculateScores(@NonNull java.util.List<android.view.autofill.AutofillValue>, @NonNull java.util.List<java.lang.String>, @NonNull java.util.List<java.lang.String>, @Nullable String, @Nullable android.os.Bundle, @Nullable java.util.Map, @Nullable java.util.Map);
6276    method @Deprecated @Nullable public float[][] onGetScores(@Nullable String, @Nullable android.os.Bundle, @NonNull java.util.List<android.view.autofill.AutofillValue>, @NonNull java.util.List<java.lang.String>);
6277    field public static final String REQUIRED_ALGORITHM_EDIT_DISTANCE = "EDIT_DISTANCE";
6278    field public static final String REQUIRED_ALGORITHM_EXACT_MATCH = "EXACT_MATCH";
6279    field public static final String SERVICE_INTERFACE = "android.service.autofill.AutofillFieldClassificationService";
6280    field public static final String SERVICE_META_DATA_KEY_AVAILABLE_ALGORITHMS = "android.autofill.field_classification.available_algorithms";
6281    field public static final String SERVICE_META_DATA_KEY_DEFAULT_ALGORITHM = "android.autofill.field_classification.default_algorithm";
6282  }
6283
6284}
6285
6286package android.service.autofill.augmented {
6287
6288  public abstract class AugmentedAutofillService extends android.app.Service {
6289    ctor public AugmentedAutofillService();
6290    method protected final void dump(java.io.FileDescriptor, java.io.PrintWriter, String[]);
6291    method protected void dump(@NonNull java.io.PrintWriter, @NonNull String[]);
6292    method public void onConnected();
6293    method public void onDisconnected();
6294    method public void onFillRequest(@NonNull android.service.autofill.augmented.FillRequest, @NonNull android.os.CancellationSignal, @NonNull android.service.autofill.augmented.FillController, @NonNull android.service.autofill.augmented.FillCallback);
6295    field public static final String SERVICE_INTERFACE = "android.service.autofill.augmented.AugmentedAutofillService";
6296  }
6297
6298  public final class FillCallback {
6299    method public void onSuccess(@Nullable android.service.autofill.augmented.FillResponse);
6300  }
6301
6302  public final class FillController {
6303    method public void autofill(@NonNull java.util.List<android.util.Pair<android.view.autofill.AutofillId,android.view.autofill.AutofillValue>>);
6304  }
6305
6306  public final class FillRequest {
6307    method @NonNull public android.content.ComponentName getActivityComponent();
6308    method @NonNull public android.view.autofill.AutofillId getFocusedId();
6309    method @NonNull public android.view.autofill.AutofillValue getFocusedValue();
6310    method @Nullable public android.service.autofill.augmented.PresentationParams getPresentationParams();
6311    method public int getTaskId();
6312  }
6313
6314  public final class FillResponse {
6315  }
6316
6317  public static final class FillResponse.Builder {
6318    ctor public FillResponse.Builder();
6319    method @NonNull public android.service.autofill.augmented.FillResponse build();
6320    method @NonNull public android.service.autofill.augmented.FillResponse.Builder setFillWindow(@NonNull android.service.autofill.augmented.FillWindow);
6321  }
6322
6323  public final class FillWindow implements java.lang.AutoCloseable {
6324    ctor public FillWindow();
6325    method public void destroy();
6326    method public boolean update(@NonNull android.service.autofill.augmented.PresentationParams.Area, @NonNull android.view.View, long);
6327  }
6328
6329  public abstract class PresentationParams {
6330    method @Nullable public android.service.autofill.augmented.PresentationParams.Area getSuggestionArea();
6331  }
6332
6333  public abstract static class PresentationParams.Area {
6334    method @NonNull public android.graphics.Rect getBounds();
6335  }
6336
6337}
6338
6339package android.service.carrier {
6340
6341  public abstract class ApnService extends android.app.Service {
6342    ctor public ApnService();
6343    method @NonNull public android.os.IBinder onBind(@Nullable android.content.Intent);
6344    method @WorkerThread @NonNull public abstract java.util.List<android.content.ContentValues> onRestoreApns(int);
6345  }
6346
6347}
6348
6349package android.service.contentcapture {
6350
6351  public final class ActivityEvent implements android.os.Parcelable {
6352    method public int describeContents();
6353    method @NonNull public android.content.ComponentName getComponentName();
6354    method public int getEventType();
6355    method public void writeToParcel(@NonNull android.os.Parcel, int);
6356    field @NonNull public static final android.os.Parcelable.Creator<android.service.contentcapture.ActivityEvent> CREATOR;
6357    field public static final int TYPE_ACTIVITY_DESTROYED = 24; // 0x18
6358    field public static final int TYPE_ACTIVITY_PAUSED = 2; // 0x2
6359    field public static final int TYPE_ACTIVITY_RESUMED = 1; // 0x1
6360    field public static final int TYPE_ACTIVITY_STOPPED = 23; // 0x17
6361  }
6362
6363  public abstract class ContentCaptureService extends android.app.Service {
6364    ctor public ContentCaptureService();
6365    method public final void disableSelf();
6366    method public void onActivityEvent(@NonNull android.service.contentcapture.ActivityEvent);
6367    method public void onActivitySnapshot(@NonNull android.view.contentcapture.ContentCaptureSessionId, @NonNull android.service.contentcapture.SnapshotData);
6368    method public void onConnected();
6369    method public void onContentCaptureEvent(@NonNull android.view.contentcapture.ContentCaptureSessionId, @NonNull android.view.contentcapture.ContentCaptureEvent);
6370    method public void onCreateContentCaptureSession(@NonNull android.view.contentcapture.ContentCaptureContext, @NonNull android.view.contentcapture.ContentCaptureSessionId);
6371    method public void onDataRemovalRequest(@NonNull android.view.contentcapture.DataRemovalRequest);
6372    method public void onDestroyContentCaptureSession(@NonNull android.view.contentcapture.ContentCaptureSessionId);
6373    method public void onDisconnected();
6374    method public final void setContentCaptureConditions(@NonNull String, @Nullable java.util.Set<android.view.contentcapture.ContentCaptureCondition>);
6375    method public final void setContentCaptureWhitelist(@Nullable java.util.Set<java.lang.String>, @Nullable java.util.Set<android.content.ComponentName>);
6376    field public static final String SERVICE_INTERFACE = "android.service.contentcapture.ContentCaptureService";
6377    field public static final String SERVICE_META_DATA = "android.content_capture";
6378  }
6379
6380  public final class SnapshotData implements android.os.Parcelable {
6381    method public int describeContents();
6382    method @Nullable public android.app.assist.AssistContent getAssistContent();
6383    method @NonNull public android.os.Bundle getAssistData();
6384    method @NonNull public android.app.assist.AssistStructure getAssistStructure();
6385    method public void writeToParcel(@NonNull android.os.Parcel, int);
6386    field @NonNull public static final android.os.Parcelable.Creator<android.service.contentcapture.SnapshotData> CREATOR;
6387  }
6388
6389}
6390
6391package android.service.contentsuggestions {
6392
6393  public abstract class ContentSuggestionsService extends android.app.Service {
6394    ctor public ContentSuggestionsService();
6395    method public abstract void onClassifyContentSelections(@NonNull android.app.contentsuggestions.ClassificationsRequest, @NonNull android.app.contentsuggestions.ContentSuggestionsManager.ClassificationsCallback);
6396    method public abstract void onNotifyInteraction(@NonNull String, @NonNull android.os.Bundle);
6397    method public abstract void onProcessContextImage(int, @Nullable android.graphics.Bitmap, @NonNull android.os.Bundle);
6398    method public abstract void onSuggestContentSelections(@NonNull android.app.contentsuggestions.SelectionsRequest, @NonNull android.app.contentsuggestions.ContentSuggestionsManager.SelectionsCallback);
6399    field public static final String SERVICE_INTERFACE = "android.service.contentsuggestions.ContentSuggestionsService";
6400  }
6401
6402}
6403
6404package android.service.euicc {
6405
6406  public final class DownloadSubscriptionResult implements android.os.Parcelable {
6407    ctor public DownloadSubscriptionResult(int, int, int);
6408    method public int describeContents();
6409    method public int getCardId();
6410    method public int getResolvableErrors();
6411    method public int getResult();
6412    method public void writeToParcel(android.os.Parcel, int);
6413    field @NonNull public static final android.os.Parcelable.Creator<android.service.euicc.DownloadSubscriptionResult> CREATOR;
6414  }
6415
6416  public final class EuiccProfileInfo implements android.os.Parcelable {
6417    method public int describeContents();
6418    method public android.service.carrier.CarrierIdentifier getCarrierIdentifier();
6419    method public String getIccid();
6420    method @Nullable public String getNickname();
6421    method @android.service.euicc.EuiccProfileInfo.PolicyRule public int getPolicyRules();
6422    method @android.service.euicc.EuiccProfileInfo.ProfileClass public int getProfileClass();
6423    method public String getProfileName();
6424    method public String getServiceProviderName();
6425    method @android.service.euicc.EuiccProfileInfo.ProfileState public int getState();
6426    method @Nullable public java.util.List<android.telephony.UiccAccessRule> getUiccAccessRules();
6427    method public boolean hasPolicyRule(@android.service.euicc.EuiccProfileInfo.PolicyRule int);
6428    method public boolean hasPolicyRules();
6429    method public void writeToParcel(android.os.Parcel, int);
6430    field @NonNull public static final android.os.Parcelable.Creator<android.service.euicc.EuiccProfileInfo> CREATOR;
6431    field public static final int POLICY_RULE_DELETE_AFTER_DISABLING = 4; // 0x4
6432    field public static final int POLICY_RULE_DO_NOT_DELETE = 2; // 0x2
6433    field public static final int POLICY_RULE_DO_NOT_DISABLE = 1; // 0x1
6434    field public static final int PROFILE_CLASS_OPERATIONAL = 2; // 0x2
6435    field public static final int PROFILE_CLASS_PROVISIONING = 1; // 0x1
6436    field public static final int PROFILE_CLASS_TESTING = 0; // 0x0
6437    field public static final int PROFILE_STATE_DISABLED = 0; // 0x0
6438    field public static final int PROFILE_STATE_ENABLED = 1; // 0x1
6439  }
6440
6441  public static final class EuiccProfileInfo.Builder {
6442    ctor public EuiccProfileInfo.Builder(String);
6443    ctor public EuiccProfileInfo.Builder(android.service.euicc.EuiccProfileInfo);
6444    method public android.service.euicc.EuiccProfileInfo build();
6445    method public android.service.euicc.EuiccProfileInfo.Builder setCarrierIdentifier(android.service.carrier.CarrierIdentifier);
6446    method public android.service.euicc.EuiccProfileInfo.Builder setIccid(String);
6447    method public android.service.euicc.EuiccProfileInfo.Builder setNickname(String);
6448    method public android.service.euicc.EuiccProfileInfo.Builder setPolicyRules(@android.service.euicc.EuiccProfileInfo.PolicyRule int);
6449    method public android.service.euicc.EuiccProfileInfo.Builder setProfileClass(@android.service.euicc.EuiccProfileInfo.ProfileClass int);
6450    method public android.service.euicc.EuiccProfileInfo.Builder setProfileName(String);
6451    method public android.service.euicc.EuiccProfileInfo.Builder setServiceProviderName(String);
6452    method public android.service.euicc.EuiccProfileInfo.Builder setState(@android.service.euicc.EuiccProfileInfo.ProfileState int);
6453    method public android.service.euicc.EuiccProfileInfo.Builder setUiccAccessRule(@Nullable java.util.List<android.telephony.UiccAccessRule>);
6454  }
6455
6456  @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) @IntDef(flag=true, prefix={"POLICY_RULE_"}, value={android.service.euicc.EuiccProfileInfo.POLICY_RULE_DO_NOT_DISABLE, android.service.euicc.EuiccProfileInfo.POLICY_RULE_DO_NOT_DELETE, android.service.euicc.EuiccProfileInfo.POLICY_RULE_DELETE_AFTER_DISABLING}) public static @interface EuiccProfileInfo.PolicyRule {
6457  }
6458
6459  @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) @IntDef(prefix={"PROFILE_CLASS_"}, value={android.service.euicc.EuiccProfileInfo.PROFILE_CLASS_TESTING, android.service.euicc.EuiccProfileInfo.PROFILE_CLASS_PROVISIONING, android.service.euicc.EuiccProfileInfo.PROFILE_CLASS_OPERATIONAL, 0xffffffff}) public static @interface EuiccProfileInfo.ProfileClass {
6460  }
6461
6462  @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) @IntDef(prefix={"PROFILE_STATE_"}, value={android.service.euicc.EuiccProfileInfo.PROFILE_STATE_DISABLED, android.service.euicc.EuiccProfileInfo.PROFILE_STATE_ENABLED, 0xffffffff}) public static @interface EuiccProfileInfo.ProfileState {
6463  }
6464
6465  public abstract class EuiccService extends android.app.Service {
6466    ctor public EuiccService();
6467    method @CallSuper public android.os.IBinder onBind(android.content.Intent);
6468    method public abstract int onDeleteSubscription(int, String);
6469    method public android.service.euicc.DownloadSubscriptionResult onDownloadSubscription(int, @NonNull android.telephony.euicc.DownloadableSubscription, boolean, boolean, @Nullable android.os.Bundle);
6470    method @Deprecated public int onDownloadSubscription(int, @NonNull android.telephony.euicc.DownloadableSubscription, boolean, boolean);
6471    method public abstract int onEraseSubscriptions(int);
6472    method public abstract android.service.euicc.GetDefaultDownloadableSubscriptionListResult onGetDefaultDownloadableSubscriptionList(int, boolean);
6473    method public abstract android.service.euicc.GetDownloadableSubscriptionMetadataResult onGetDownloadableSubscriptionMetadata(int, android.telephony.euicc.DownloadableSubscription, boolean);
6474    method public abstract String onGetEid(int);
6475    method @NonNull public abstract android.telephony.euicc.EuiccInfo onGetEuiccInfo(int);
6476    method @NonNull public abstract android.service.euicc.GetEuiccProfileInfoListResult onGetEuiccProfileInfoList(int);
6477    method @android.telephony.euicc.EuiccManager.OtaStatus public abstract int onGetOtaStatus(int);
6478    method public abstract int onRetainSubscriptionsForFactoryReset(int);
6479    method public abstract void onStartOtaIfNecessary(int, android.service.euicc.EuiccService.OtaStatusChangedCallback);
6480    method public abstract int onSwitchToSubscription(int, @Nullable String, boolean);
6481    method public abstract int onUpdateSubscriptionNickname(int, String, String);
6482    field public static final String ACTION_BIND_CARRIER_PROVISIONING_SERVICE = "android.service.euicc.action.BIND_CARRIER_PROVISIONING_SERVICE";
6483    field public static final String ACTION_DELETE_SUBSCRIPTION_PRIVILEGED = "android.service.euicc.action.DELETE_SUBSCRIPTION_PRIVILEGED";
6484    field public static final String ACTION_MANAGE_EMBEDDED_SUBSCRIPTIONS = "android.service.euicc.action.MANAGE_EMBEDDED_SUBSCRIPTIONS";
6485    field public static final String ACTION_PROVISION_EMBEDDED_SUBSCRIPTION = "android.service.euicc.action.PROVISION_EMBEDDED_SUBSCRIPTION";
6486    field public static final String ACTION_RENAME_SUBSCRIPTION_PRIVILEGED = "android.service.euicc.action.RENAME_SUBSCRIPTION_PRIVILEGED";
6487    field @Deprecated public static final String ACTION_RESOLVE_CONFIRMATION_CODE = "android.service.euicc.action.RESOLVE_CONFIRMATION_CODE";
6488    field public static final String ACTION_RESOLVE_DEACTIVATE_SIM = "android.service.euicc.action.RESOLVE_DEACTIVATE_SIM";
6489    field public static final String ACTION_RESOLVE_NO_PRIVILEGES = "android.service.euicc.action.RESOLVE_NO_PRIVILEGES";
6490    field public static final String ACTION_RESOLVE_RESOLVABLE_ERRORS = "android.service.euicc.action.RESOLVE_RESOLVABLE_ERRORS";
6491    field public static final String ACTION_TOGGLE_SUBSCRIPTION_PRIVILEGED = "android.service.euicc.action.TOGGLE_SUBSCRIPTION_PRIVILEGED";
6492    field public static final String CATEGORY_EUICC_UI = "android.service.euicc.category.EUICC_UI";
6493    field public static final String EUICC_SERVICE_INTERFACE = "android.service.euicc.EuiccService";
6494    field public static final String EXTRA_RESOLUTION_ALLOW_POLICY_RULES = "android.service.euicc.extra.RESOLUTION_ALLOW_POLICY_RULES";
6495    field public static final String EXTRA_RESOLUTION_CALLING_PACKAGE = "android.service.euicc.extra.RESOLUTION_CALLING_PACKAGE";
6496    field public static final String EXTRA_RESOLUTION_CARD_ID = "android.service.euicc.extra.RESOLUTION_CARD_ID";
6497    field public static final String EXTRA_RESOLUTION_CONFIRMATION_CODE = "android.service.euicc.extra.RESOLUTION_CONFIRMATION_CODE";
6498    field public static final String EXTRA_RESOLUTION_CONFIRMATION_CODE_RETRIED = "android.service.euicc.extra.RESOLUTION_CONFIRMATION_CODE_RETRIED";
6499    field public static final String EXTRA_RESOLUTION_CONSENT = "android.service.euicc.extra.RESOLUTION_CONSENT";
6500    field public static final String EXTRA_RESOLVABLE_ERRORS = "android.service.euicc.extra.RESOLVABLE_ERRORS";
6501    field public static final int RESOLVABLE_ERROR_CONFIRMATION_CODE = 1; // 0x1
6502    field public static final int RESOLVABLE_ERROR_POLICY_RULES = 2; // 0x2
6503    field public static final int RESULT_FIRST_USER = 1; // 0x1
6504    field public static final int RESULT_MUST_DEACTIVATE_SIM = -1; // 0xffffffff
6505    field @Deprecated public static final int RESULT_NEED_CONFIRMATION_CODE = -2; // 0xfffffffe
6506    field public static final int RESULT_OK = 0; // 0x0
6507    field public static final int RESULT_RESOLVABLE_ERRORS = -2; // 0xfffffffe
6508  }
6509
6510  public abstract static class EuiccService.OtaStatusChangedCallback {
6511    ctor public EuiccService.OtaStatusChangedCallback();
6512    method public abstract void onOtaStatusChanged(int);
6513  }
6514
6515  public final class GetDefaultDownloadableSubscriptionListResult implements android.os.Parcelable {
6516    ctor public GetDefaultDownloadableSubscriptionListResult(int, @Nullable android.telephony.euicc.DownloadableSubscription[]);
6517    method public int describeContents();
6518    method @Nullable public java.util.List<android.telephony.euicc.DownloadableSubscription> getDownloadableSubscriptions();
6519    method public int getResult();
6520    method public void writeToParcel(android.os.Parcel, int);
6521    field @NonNull public static final android.os.Parcelable.Creator<android.service.euicc.GetDefaultDownloadableSubscriptionListResult> CREATOR;
6522  }
6523
6524  public final class GetDownloadableSubscriptionMetadataResult implements android.os.Parcelable {
6525    ctor public GetDownloadableSubscriptionMetadataResult(int, @Nullable android.telephony.euicc.DownloadableSubscription);
6526    method public int describeContents();
6527    method @Nullable public android.telephony.euicc.DownloadableSubscription getDownloadableSubscription();
6528    method public int getResult();
6529    method public void writeToParcel(android.os.Parcel, int);
6530    field @NonNull public static final android.os.Parcelable.Creator<android.service.euicc.GetDownloadableSubscriptionMetadataResult> CREATOR;
6531  }
6532
6533  public final class GetEuiccProfileInfoListResult implements android.os.Parcelable {
6534    ctor public GetEuiccProfileInfoListResult(int, @Nullable android.service.euicc.EuiccProfileInfo[], boolean);
6535    method public int describeContents();
6536    method public boolean getIsRemovable();
6537    method @Nullable public java.util.List<android.service.euicc.EuiccProfileInfo> getProfiles();
6538    method public int getResult();
6539    method public void writeToParcel(android.os.Parcel, int);
6540    field @NonNull public static final android.os.Parcelable.Creator<android.service.euicc.GetEuiccProfileInfoListResult> CREATOR;
6541  }
6542
6543}
6544
6545package android.service.notification {
6546
6547  public final class Adjustment implements android.os.Parcelable {
6548    ctor public Adjustment(String, String, android.os.Bundle, CharSequence, int);
6549    ctor public Adjustment(@NonNull String, @NonNull String, @NonNull android.os.Bundle, @NonNull CharSequence, @NonNull android.os.UserHandle);
6550    ctor protected Adjustment(android.os.Parcel);
6551    method public int describeContents();
6552    method @NonNull public CharSequence getExplanation();
6553    method @NonNull public String getKey();
6554    method @NonNull public String getPackage();
6555    method @NonNull public android.os.Bundle getSignals();
6556    method public int getUser();
6557    method @NonNull public android.os.UserHandle getUserHandle();
6558    method public void writeToParcel(android.os.Parcel, int);
6559    field @NonNull public static final android.os.Parcelable.Creator<android.service.notification.Adjustment> CREATOR;
6560    field public static final String KEY_CONTEXTUAL_ACTIONS = "key_contextual_actions";
6561    field public static final String KEY_IMPORTANCE = "key_importance";
6562    field public static final String KEY_PEOPLE = "key_people";
6563    field public static final String KEY_SNOOZE_CRITERIA = "key_snooze_criteria";
6564    field public static final String KEY_TEXT_REPLIES = "key_text_replies";
6565    field public static final String KEY_USER_SENTIMENT = "key_user_sentiment";
6566  }
6567
6568  public abstract class NotificationAssistantService extends android.service.notification.NotificationListenerService {
6569    ctor public NotificationAssistantService();
6570    method public final void adjustNotification(@NonNull android.service.notification.Adjustment);
6571    method public final void adjustNotifications(@NonNull java.util.List<android.service.notification.Adjustment>);
6572    method public void onActionInvoked(@NonNull String, @NonNull android.app.Notification.Action, int);
6573    method public void onAllowedAdjustmentsChanged();
6574    method @NonNull public final android.os.IBinder onBind(@Nullable android.content.Intent);
6575    method public void onNotificationDirectReplied(@NonNull String);
6576    method @Nullable public abstract android.service.notification.Adjustment onNotificationEnqueued(@NonNull android.service.notification.StatusBarNotification);
6577    method @Nullable public android.service.notification.Adjustment onNotificationEnqueued(@NonNull android.service.notification.StatusBarNotification, @NonNull android.app.NotificationChannel);
6578    method public void onNotificationExpansionChanged(@NonNull String, boolean, boolean);
6579    method public abstract void onNotificationSnoozedUntilContext(@NonNull android.service.notification.StatusBarNotification, @NonNull String);
6580    method public void onNotificationsSeen(@NonNull java.util.List<java.lang.String>);
6581    method public void onSuggestedReplySent(@NonNull String, @NonNull CharSequence, int);
6582    method public final void unsnoozeNotification(@NonNull String);
6583    field public static final String SERVICE_INTERFACE = "android.service.notification.NotificationAssistantService";
6584    field public static final int SOURCE_FROM_APP = 0; // 0x0
6585    field public static final int SOURCE_FROM_ASSISTANT = 1; // 0x1
6586  }
6587
6588  public abstract class NotificationListenerService extends android.app.Service {
6589    method public void onNotificationRemoved(@NonNull android.service.notification.StatusBarNotification, @NonNull android.service.notification.NotificationListenerService.RankingMap, @NonNull android.service.notification.NotificationStats, int);
6590  }
6591
6592  public final class NotificationStats implements android.os.Parcelable {
6593    ctor public NotificationStats();
6594    ctor protected NotificationStats(android.os.Parcel);
6595    method public int describeContents();
6596    method public int getDismissalSentiment();
6597    method public int getDismissalSurface();
6598    method public boolean hasDirectReplied();
6599    method public boolean hasExpanded();
6600    method public boolean hasInteracted();
6601    method public boolean hasSeen();
6602    method public boolean hasSnoozed();
6603    method public boolean hasViewedSettings();
6604    method public void setDirectReplied();
6605    method public void setDismissalSentiment(int);
6606    method public void setDismissalSurface(int);
6607    method public void setExpanded();
6608    method public void setSeen();
6609    method public void setSnoozed();
6610    method public void setViewedSettings();
6611    method public void writeToParcel(android.os.Parcel, int);
6612    field @NonNull public static final android.os.Parcelable.Creator<android.service.notification.NotificationStats> CREATOR;
6613    field public static final int DISMISSAL_AOD = 2; // 0x2
6614    field public static final int DISMISSAL_NOT_DISMISSED = -1; // 0xffffffff
6615    field public static final int DISMISSAL_OTHER = 0; // 0x0
6616    field public static final int DISMISSAL_PEEK = 1; // 0x1
6617    field public static final int DISMISSAL_SHADE = 3; // 0x3
6618    field public static final int DISMISS_SENTIMENT_NEGATIVE = 0; // 0x0
6619    field public static final int DISMISS_SENTIMENT_NEUTRAL = 1; // 0x1
6620    field public static final int DISMISS_SENTIMENT_POSITIVE = 2; // 0x2
6621    field public static final int DISMISS_SENTIMENT_UNKNOWN = -1000; // 0xfffffc18
6622  }
6623
6624  public final class SnoozeCriterion implements android.os.Parcelable {
6625    ctor public SnoozeCriterion(String, CharSequence, CharSequence);
6626    ctor protected SnoozeCriterion(android.os.Parcel);
6627    method public int describeContents();
6628    method public CharSequence getConfirmation();
6629    method public CharSequence getExplanation();
6630    method public String getId();
6631    method public void writeToParcel(android.os.Parcel, int);
6632    field @NonNull public static final android.os.Parcelable.Creator<android.service.notification.SnoozeCriterion> CREATOR;
6633  }
6634
6635}
6636
6637package android.service.oemlock {
6638
6639  public class OemLockManager {
6640    method @RequiresPermission(android.Manifest.permission.MANAGE_CARRIER_OEM_UNLOCK_STATE) @Nullable public String getLockName();
6641    method @RequiresPermission(android.Manifest.permission.MANAGE_CARRIER_OEM_UNLOCK_STATE) public boolean isOemUnlockAllowedByCarrier();
6642    method @RequiresPermission(android.Manifest.permission.MANAGE_USER_OEM_UNLOCK_STATE) public boolean isOemUnlockAllowedByUser();
6643    method @RequiresPermission(android.Manifest.permission.MANAGE_CARRIER_OEM_UNLOCK_STATE) public void setOemUnlockAllowedByCarrier(boolean, @Nullable byte[]);
6644    method @RequiresPermission(android.Manifest.permission.MANAGE_USER_OEM_UNLOCK_STATE) public void setOemUnlockAllowedByUser(boolean);
6645  }
6646
6647}
6648
6649package android.service.persistentdata {
6650
6651  public class PersistentDataBlockManager {
6652    method @RequiresPermission("android.permission.ACCESS_PDB_STATE") public int getDataBlockSize();
6653    method @RequiresPermission(anyOf={android.Manifest.permission.READ_OEM_UNLOCK_STATE, "android.permission.OEM_UNLOCK_STATE"}) @android.service.persistentdata.PersistentDataBlockManager.FlashLockState public int getFlashLockState();
6654    method public long getMaximumDataBlockSize();
6655    method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.READ_OEM_UNLOCK_STATE, "android.permission.OEM_UNLOCK_STATE"}) public boolean getOemUnlockEnabled();
6656    method public byte[] read();
6657    method @Deprecated @RequiresPermission("android.permission.OEM_UNLOCK_STATE") public void setOemUnlockEnabled(boolean);
6658    method @RequiresPermission("android.permission.OEM_UNLOCK_STATE") public void wipe();
6659    method public int write(byte[]);
6660    field public static final int FLASH_LOCK_LOCKED = 1; // 0x1
6661    field public static final int FLASH_LOCK_UNKNOWN = -1; // 0xffffffff
6662    field public static final int FLASH_LOCK_UNLOCKED = 0; // 0x0
6663  }
6664
6665  @IntDef(prefix={"FLASH_LOCK_"}, value={android.service.persistentdata.PersistentDataBlockManager.FLASH_LOCK_UNKNOWN, android.service.persistentdata.PersistentDataBlockManager.FLASH_LOCK_LOCKED, android.service.persistentdata.PersistentDataBlockManager.FLASH_LOCK_UNLOCKED}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface PersistentDataBlockManager.FlashLockState {
6666  }
6667
6668}
6669
6670package android.service.quicksettings {
6671
6672  public class TileService extends android.app.Service {
6673    method public final void setStatusIcon(android.graphics.drawable.Icon, String);
6674  }
6675
6676}
6677
6678package android.service.resolver {
6679
6680  public abstract class ResolverRankerService extends android.app.Service {
6681    ctor public ResolverRankerService();
6682    method public android.os.IBinder onBind(android.content.Intent);
6683    method public void onPredictSharingProbabilities(java.util.List<android.service.resolver.ResolverTarget>);
6684    method public void onTrainRankingModel(java.util.List<android.service.resolver.ResolverTarget>, int);
6685    field public static final String BIND_PERMISSION = "android.permission.BIND_RESOLVER_RANKER_SERVICE";
6686    field public static final String HOLD_PERMISSION = "android.permission.PROVIDE_RESOLVER_RANKER_SERVICE";
6687    field public static final String SERVICE_INTERFACE = "android.service.resolver.ResolverRankerService";
6688  }
6689
6690  public final class ResolverTarget implements android.os.Parcelable {
6691    ctor public ResolverTarget();
6692    method public int describeContents();
6693    method public float getChooserScore();
6694    method public float getLaunchScore();
6695    method public float getRecencyScore();
6696    method public float getSelectProbability();
6697    method public float getTimeSpentScore();
6698    method public void setChooserScore(float);
6699    method public void setLaunchScore(float);
6700    method public void setRecencyScore(float);
6701    method public void setSelectProbability(float);
6702    method public void setTimeSpentScore(float);
6703    method public void writeToParcel(android.os.Parcel, int);
6704    field @NonNull public static final android.os.Parcelable.Creator<android.service.resolver.ResolverTarget> CREATOR;
6705  }
6706
6707}
6708
6709package android.service.settings.suggestions {
6710
6711  public final class Suggestion implements android.os.Parcelable {
6712    method public int describeContents();
6713    method public int getFlags();
6714    method public android.graphics.drawable.Icon getIcon();
6715    method public String getId();
6716    method public android.app.PendingIntent getPendingIntent();
6717    method public CharSequence getSummary();
6718    method public CharSequence getTitle();
6719    method public void writeToParcel(android.os.Parcel, int);
6720    field @NonNull public static final android.os.Parcelable.Creator<android.service.settings.suggestions.Suggestion> CREATOR;
6721    field public static final int FLAG_HAS_BUTTON = 1; // 0x1
6722  }
6723
6724  public static class Suggestion.Builder {
6725    ctor public Suggestion.Builder(String);
6726    method public android.service.settings.suggestions.Suggestion build();
6727    method public android.service.settings.suggestions.Suggestion.Builder setFlags(int);
6728    method public android.service.settings.suggestions.Suggestion.Builder setIcon(android.graphics.drawable.Icon);
6729    method public android.service.settings.suggestions.Suggestion.Builder setPendingIntent(android.app.PendingIntent);
6730    method public android.service.settings.suggestions.Suggestion.Builder setSummary(CharSequence);
6731    method public android.service.settings.suggestions.Suggestion.Builder setTitle(CharSequence);
6732  }
6733
6734  public abstract class SuggestionService extends android.app.Service {
6735    ctor public SuggestionService();
6736    method public android.os.IBinder onBind(android.content.Intent);
6737    method public abstract java.util.List<android.service.settings.suggestions.Suggestion> onGetSuggestions();
6738    method public abstract void onSuggestionDismissed(android.service.settings.suggestions.Suggestion);
6739    method public abstract void onSuggestionLaunched(android.service.settings.suggestions.Suggestion);
6740  }
6741
6742}
6743
6744package android.service.textclassifier {
6745
6746  public abstract class TextClassifierService extends android.app.Service {
6747    ctor public TextClassifierService();
6748    method @NonNull public static android.view.textclassifier.TextClassifier getDefaultTextClassifierImplementation(@NonNull android.content.Context);
6749    method @Deprecated public final android.view.textclassifier.TextClassifier getLocalTextClassifier();
6750    method @Nullable public final android.os.IBinder onBind(android.content.Intent);
6751    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>);
6752    method @MainThread public void onCreateTextClassificationSession(@NonNull android.view.textclassifier.TextClassificationContext, @NonNull android.view.textclassifier.TextClassificationSessionId);
6753    method @MainThread public void onDestroyTextClassificationSession(@NonNull android.view.textclassifier.TextClassificationSessionId);
6754    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>);
6755    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>);
6756    method @Deprecated @MainThread public void onSelectionEvent(@Nullable android.view.textclassifier.TextClassificationSessionId, @NonNull android.view.textclassifier.SelectionEvent);
6757    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>);
6758    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>);
6759    method @MainThread public void onTextClassifierEvent(@Nullable android.view.textclassifier.TextClassificationSessionId, @NonNull android.view.textclassifier.TextClassifierEvent);
6760    field public static final String SERVICE_INTERFACE = "android.service.textclassifier.TextClassifierService";
6761  }
6762
6763  public static interface TextClassifierService.Callback<T> {
6764    method public void onFailure(CharSequence);
6765    method public void onSuccess(T);
6766  }
6767
6768}
6769
6770package android.service.trust {
6771
6772  public class TrustAgentService extends android.app.Service {
6773    ctor public TrustAgentService();
6774    method public final void addEscrowToken(byte[], android.os.UserHandle);
6775    method @Deprecated public final void grantTrust(CharSequence, long, boolean);
6776    method public final void grantTrust(CharSequence, long, int);
6777    method public final void isEscrowTokenActive(long, android.os.UserHandle);
6778    method public final android.os.IBinder onBind(android.content.Intent);
6779    method public boolean onConfigure(java.util.List<android.os.PersistableBundle>);
6780    method public void onDeviceLocked();
6781    method public void onDeviceUnlockLockout(long);
6782    method public void onDeviceUnlocked();
6783    method public void onEscrowTokenAdded(byte[], long, android.os.UserHandle);
6784    method public void onEscrowTokenRemoved(long, boolean);
6785    method public void onEscrowTokenStateReceived(long, int);
6786    method public void onTrustTimeout();
6787    method public void onUnlockAttempt(boolean);
6788    method public final void removeEscrowToken(long, android.os.UserHandle);
6789    method public final void revokeTrust();
6790    method public final void setManagingTrust(boolean);
6791    method public final void showKeyguardErrorMessage(@NonNull CharSequence);
6792    method public final void unlockUserWithToken(long, byte[], android.os.UserHandle);
6793    field public static final int FLAG_GRANT_TRUST_DISMISS_KEYGUARD = 2; // 0x2
6794    field public static final int FLAG_GRANT_TRUST_INITIATED_BY_USER = 1; // 0x1
6795    field public static final String SERVICE_INTERFACE = "android.service.trust.TrustAgentService";
6796    field public static final int TOKEN_STATE_ACTIVE = 1; // 0x1
6797    field public static final int TOKEN_STATE_INACTIVE = 0; // 0x0
6798    field public static final String TRUST_AGENT_META_DATA = "android.service.trust.trustagent";
6799  }
6800
6801}
6802
6803package android.service.wallpaper {
6804
6805  public class WallpaperService.Engine {
6806    method public boolean isInAmbientMode();
6807    method public void onAmbientModeChanged(boolean, long);
6808  }
6809
6810}
6811
6812package android.service.watchdog {
6813
6814  public abstract class ExplicitHealthCheckService extends android.app.Service {
6815    ctor public ExplicitHealthCheckService();
6816    method public final void notifyHealthCheckPassed(@NonNull String);
6817    method @NonNull public final android.os.IBinder onBind(@NonNull android.content.Intent);
6818    method public abstract void onCancelHealthCheck(@NonNull String);
6819    method @NonNull public abstract java.util.List<java.lang.String> onGetRequestedPackages();
6820    method @NonNull public abstract java.util.List<android.service.watchdog.ExplicitHealthCheckService.PackageConfig> onGetSupportedPackages();
6821    method public abstract void onRequestHealthCheck(@NonNull String);
6822    field public static final String BIND_PERMISSION = "android.permission.BIND_EXPLICIT_HEALTH_CHECK_SERVICE";
6823    field public static final String SERVICE_INTERFACE = "android.service.watchdog.ExplicitHealthCheckService";
6824  }
6825
6826  public static final class ExplicitHealthCheckService.PackageConfig implements android.os.Parcelable {
6827    ctor public ExplicitHealthCheckService.PackageConfig(@NonNull String, long);
6828    method public int describeContents();
6829    method public long getHealthCheckTimeoutMillis();
6830    method @NonNull public String getPackageName();
6831    method public void writeToParcel(android.os.Parcel, int);
6832    field @NonNull public static final android.os.Parcelable.Creator<android.service.watchdog.ExplicitHealthCheckService.PackageConfig> CREATOR;
6833  }
6834
6835}
6836
6837package android.telecom {
6838
6839  @Deprecated public class AudioState implements android.os.Parcelable {
6840    ctor @Deprecated public AudioState(boolean, int, int);
6841    ctor @Deprecated public AudioState(android.telecom.AudioState);
6842    ctor @Deprecated public AudioState(android.telecom.CallAudioState);
6843    method @Deprecated public static String audioRouteToString(int);
6844    method @Deprecated public int describeContents();
6845    method @Deprecated public int getRoute();
6846    method @Deprecated public int getSupportedRouteMask();
6847    method @Deprecated public boolean isMuted();
6848    method @Deprecated public void writeToParcel(android.os.Parcel, int);
6849    field @Deprecated @NonNull public static final android.os.Parcelable.Creator<android.telecom.AudioState> CREATOR;
6850    field @Deprecated public static final int ROUTE_BLUETOOTH = 2; // 0x2
6851    field @Deprecated public static final int ROUTE_EARPIECE = 1; // 0x1
6852    field @Deprecated public static final int ROUTE_SPEAKER = 8; // 0x8
6853    field @Deprecated public static final int ROUTE_WIRED_HEADSET = 4; // 0x4
6854    field @Deprecated public static final int ROUTE_WIRED_OR_EARPIECE = 5; // 0x5
6855  }
6856
6857  public final class Call {
6858    method @Deprecated public void addListener(android.telecom.Call.Listener);
6859    method @Deprecated public void removeListener(android.telecom.Call.Listener);
6860    field @Deprecated public static final int STATE_PRE_DIAL_WAIT = 8; // 0x8
6861  }
6862
6863  @Deprecated public abstract static class Call.Listener extends android.telecom.Call.Callback {
6864    ctor @Deprecated public Call.Listener();
6865  }
6866
6867  public abstract class Conference extends android.telecom.Conferenceable {
6868    method @Deprecated public final android.telecom.AudioState getAudioState();
6869    method @Deprecated public final long getConnectTimeMillis();
6870    method public android.telecom.Connection getPrimaryConnection();
6871    method @Deprecated public void onAudioStateChanged(android.telecom.AudioState);
6872    method @Deprecated public final void setConnectTimeMillis(long);
6873  }
6874
6875  public abstract class Connection extends android.telecom.Conferenceable {
6876    method @Deprecated public final android.telecom.AudioState getAudioState();
6877    method @Deprecated public void onAudioStateChanged(android.telecom.AudioState);
6878  }
6879
6880  public abstract class InCallService extends android.app.Service {
6881    method @Deprecated public android.telecom.Phone getPhone();
6882    method @Deprecated public void onPhoneCreated(android.telecom.Phone);
6883    method @Deprecated public void onPhoneDestroyed(android.telecom.Phone);
6884  }
6885
6886  public class ParcelableCallAnalytics implements android.os.Parcelable {
6887    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>);
6888    ctor public ParcelableCallAnalytics(android.os.Parcel);
6889    method public java.util.List<android.telecom.ParcelableCallAnalytics.AnalyticsEvent> analyticsEvents();
6890    method public int describeContents();
6891    method public long getCallDurationMillis();
6892    method public int getCallTechnologies();
6893    method public int getCallTerminationCode();
6894    method public int getCallType();
6895    method public String getConnectionService();
6896    method public java.util.List<android.telecom.ParcelableCallAnalytics.EventTiming> getEventTimings();
6897    method public long getStartTimeMillis();
6898    method public boolean isAdditionalCall();
6899    method public boolean isCreatedFromExistingConnection();
6900    method public boolean isEmergencyCall();
6901    method public boolean isInterrupted();
6902    method public void writeToParcel(android.os.Parcel, int);
6903    field public static final int CALLTYPE_INCOMING = 1; // 0x1
6904    field public static final int CALLTYPE_OUTGOING = 2; // 0x2
6905    field public static final int CALLTYPE_UNKNOWN = 0; // 0x0
6906    field public static final int CDMA_PHONE = 1; // 0x1
6907    field @NonNull public static final android.os.Parcelable.Creator<android.telecom.ParcelableCallAnalytics> CREATOR;
6908    field public static final int GSM_PHONE = 2; // 0x2
6909    field public static final int IMS_PHONE = 4; // 0x4
6910    field public static final long MILLIS_IN_1_SECOND = 1000L; // 0x3e8L
6911    field public static final long MILLIS_IN_5_MINUTES = 300000L; // 0x493e0L
6912    field public static final int SIP_PHONE = 8; // 0x8
6913    field public static final int STILL_CONNECTED = -1; // 0xffffffff
6914    field public static final int THIRD_PARTY_PHONE = 16; // 0x10
6915  }
6916
6917  public static final class ParcelableCallAnalytics.AnalyticsEvent implements android.os.Parcelable {
6918    ctor public ParcelableCallAnalytics.AnalyticsEvent(int, long);
6919    method public int describeContents();
6920    method public int getEventName();
6921    method public long getTimeSinceLastEvent();
6922    method public void writeToParcel(android.os.Parcel, int);
6923    field public static final int AUDIO_ROUTE_BT = 204; // 0xcc
6924    field public static final int AUDIO_ROUTE_EARPIECE = 205; // 0xcd
6925    field public static final int AUDIO_ROUTE_HEADSET = 206; // 0xce
6926    field public static final int AUDIO_ROUTE_SPEAKER = 207; // 0xcf
6927    field public static final int BIND_CS = 5; // 0x5
6928    field public static final int BLOCK_CHECK_FINISHED = 105; // 0x69
6929    field public static final int BLOCK_CHECK_INITIATED = 104; // 0x68
6930    field public static final int CONFERENCE_WITH = 300; // 0x12c
6931    field @NonNull public static final android.os.Parcelable.Creator<android.telecom.ParcelableCallAnalytics.AnalyticsEvent> CREATOR;
6932    field public static final int CS_BOUND = 6; // 0x6
6933    field public static final int DIRECT_TO_VM_FINISHED = 103; // 0x67
6934    field public static final int DIRECT_TO_VM_INITIATED = 102; // 0x66
6935    field public static final int FILTERING_COMPLETED = 107; // 0x6b
6936    field public static final int FILTERING_INITIATED = 106; // 0x6a
6937    field public static final int FILTERING_TIMED_OUT = 108; // 0x6c
6938    field public static final int MUTE = 202; // 0xca
6939    field public static final int REMOTELY_HELD = 402; // 0x192
6940    field public static final int REMOTELY_UNHELD = 403; // 0x193
6941    field public static final int REQUEST_ACCEPT = 7; // 0x7
6942    field public static final int REQUEST_HOLD = 400; // 0x190
6943    field public static final int REQUEST_PULL = 500; // 0x1f4
6944    field public static final int REQUEST_REJECT = 8; // 0x8
6945    field public static final int REQUEST_UNHOLD = 401; // 0x191
6946    field public static final int SCREENING_COMPLETED = 101; // 0x65
6947    field public static final int SCREENING_SENT = 100; // 0x64
6948    field public static final int SET_ACTIVE = 1; // 0x1
6949    field public static final int SET_DIALING = 4; // 0x4
6950    field public static final int SET_DISCONNECTED = 2; // 0x2
6951    field public static final int SET_HOLD = 404; // 0x194
6952    field public static final int SET_PARENT = 302; // 0x12e
6953    field public static final int SET_SELECT_PHONE_ACCOUNT = 0; // 0x0
6954    field public static final int SILENCE = 201; // 0xc9
6955    field public static final int SKIP_RINGING = 200; // 0xc8
6956    field public static final int SPLIT_CONFERENCE = 301; // 0x12d
6957    field public static final int START_CONNECTION = 3; // 0x3
6958    field public static final int SWAP = 405; // 0x195
6959    field public static final int UNMUTE = 203; // 0xcb
6960  }
6961
6962  public static final class ParcelableCallAnalytics.EventTiming implements android.os.Parcelable {
6963    ctor public ParcelableCallAnalytics.EventTiming(int, long);
6964    method public int describeContents();
6965    method public int getName();
6966    method public long getTime();
6967    method public void writeToParcel(android.os.Parcel, int);
6968    field public static final int ACCEPT_TIMING = 0; // 0x0
6969    field public static final int BIND_CS_TIMING = 6; // 0x6
6970    field public static final int BLOCK_CHECK_FINISHED_TIMING = 9; // 0x9
6971    field @NonNull public static final android.os.Parcelable.Creator<android.telecom.ParcelableCallAnalytics.EventTiming> CREATOR;
6972    field public static final int DIRECT_TO_VM_FINISHED_TIMING = 8; // 0x8
6973    field public static final int DISCONNECT_TIMING = 2; // 0x2
6974    field public static final int FILTERING_COMPLETED_TIMING = 10; // 0xa
6975    field public static final int FILTERING_TIMED_OUT_TIMING = 11; // 0xb
6976    field public static final int HOLD_TIMING = 3; // 0x3
6977    field public static final int INVALID = 999999; // 0xf423f
6978    field public static final int OUTGOING_TIME_TO_DIALING_TIMING = 5; // 0x5
6979    field public static final int REJECT_TIMING = 1; // 0x1
6980    field public static final int SCREENING_COMPLETED_TIMING = 7; // 0x7
6981    field public static final int UNHOLD_TIMING = 4; // 0x4
6982  }
6983
6984  @Deprecated public final class Phone {
6985    method @Deprecated public void addListener(android.telecom.Phone.Listener);
6986    method @Deprecated public boolean canAddCall();
6987    method @Deprecated public android.telecom.AudioState getAudioState();
6988    method @Deprecated public android.telecom.CallAudioState getCallAudioState();
6989    method @Deprecated public java.util.List<android.telecom.Call> getCalls();
6990    method @Deprecated public void removeListener(android.telecom.Phone.Listener);
6991    method @Deprecated public void requestBluetoothAudio(String);
6992    method @Deprecated public void setAudioRoute(int);
6993    method @Deprecated public void setMuted(boolean);
6994  }
6995
6996  @Deprecated public abstract static class Phone.Listener {
6997    ctor @Deprecated public Phone.Listener();
6998    method @Deprecated public void onAudioStateChanged(android.telecom.Phone, android.telecom.AudioState);
6999    method @Deprecated public void onBringToForeground(android.telecom.Phone, boolean);
7000    method @Deprecated public void onCallAdded(android.telecom.Phone, android.telecom.Call);
7001    method @Deprecated public void onCallAudioStateChanged(android.telecom.Phone, android.telecom.CallAudioState);
7002    method @Deprecated public void onCallRemoved(android.telecom.Phone, android.telecom.Call);
7003    method @Deprecated public void onCanAddCallChanged(android.telecom.Phone, boolean);
7004    method @Deprecated public void onSilenceRinger(android.telecom.Phone);
7005  }
7006
7007  public final class PhoneAccount implements android.os.Parcelable {
7008    field public static final int CAPABILITY_MULTI_USER = 32; // 0x20
7009  }
7010
7011  public class PhoneAccountSuggestionService extends android.app.Service {
7012    ctor public PhoneAccountSuggestionService();
7013    method public void onAccountSuggestionRequest(@NonNull String);
7014    method public android.os.IBinder onBind(android.content.Intent);
7015    method public final void suggestPhoneAccounts(@NonNull String, @NonNull java.util.List<android.telecom.PhoneAccountSuggestion>);
7016    field public static final String SERVICE_INTERFACE = "android.telecom.PhoneAccountSuggestionService";
7017  }
7018
7019  public final class RemoteConference {
7020    method @Deprecated public void setAudioState(android.telecom.AudioState);
7021  }
7022
7023  public final class RemoteConnection {
7024    method @Deprecated public void setAudioState(android.telecom.AudioState);
7025  }
7026
7027  public final class StatusHints implements android.os.Parcelable {
7028    ctor @Deprecated public StatusHints(android.content.ComponentName, CharSequence, int, android.os.Bundle);
7029    method @Deprecated public android.graphics.drawable.Drawable getIcon(android.content.Context);
7030    method @Deprecated public int getIconResId();
7031    method @Deprecated public android.content.ComponentName getPackageName();
7032  }
7033
7034  public final class TelecomAnalytics implements android.os.Parcelable {
7035    ctor public TelecomAnalytics(java.util.List<android.telecom.TelecomAnalytics.SessionTiming>, java.util.List<android.telecom.ParcelableCallAnalytics>);
7036    method public int describeContents();
7037    method public java.util.List<android.telecom.ParcelableCallAnalytics> getCallAnalytics();
7038    method public java.util.List<android.telecom.TelecomAnalytics.SessionTiming> getSessionTimings();
7039    method public void writeToParcel(android.os.Parcel, int);
7040    field @NonNull public static final android.os.Parcelable.Creator<android.telecom.TelecomAnalytics> CREATOR;
7041  }
7042
7043  public static final class TelecomAnalytics.SessionTiming implements android.os.Parcelable {
7044    ctor public TelecomAnalytics.SessionTiming(int, long);
7045    method public int describeContents();
7046    method public Integer getKey();
7047    method public long getTime();
7048    method public void writeToParcel(android.os.Parcel, int);
7049    field @NonNull public static final android.os.Parcelable.Creator<android.telecom.TelecomAnalytics.SessionTiming> CREATOR;
7050    field public static final int CSW_ADD_CONFERENCE_CALL = 108; // 0x6c
7051    field public static final int CSW_HANDLE_CREATE_CONNECTION_COMPLETE = 100; // 0x64
7052    field public static final int CSW_REMOVE_CALL = 106; // 0x6a
7053    field public static final int CSW_SET_ACTIVE = 101; // 0x65
7054    field public static final int CSW_SET_DIALING = 103; // 0x67
7055    field public static final int CSW_SET_DISCONNECTED = 104; // 0x68
7056    field public static final int CSW_SET_IS_CONFERENCED = 107; // 0x6b
7057    field public static final int CSW_SET_ON_HOLD = 105; // 0x69
7058    field public static final int CSW_SET_RINGING = 102; // 0x66
7059    field public static final int ICA_ANSWER_CALL = 1; // 0x1
7060    field public static final int ICA_CONFERENCE = 8; // 0x8
7061    field public static final int ICA_DISCONNECT_CALL = 3; // 0x3
7062    field public static final int ICA_HOLD_CALL = 4; // 0x4
7063    field public static final int ICA_MUTE = 6; // 0x6
7064    field public static final int ICA_REJECT_CALL = 2; // 0x2
7065    field public static final int ICA_SET_AUDIO_ROUTE = 7; // 0x7
7066    field public static final int ICA_UNHOLD_CALL = 5; // 0x5
7067  }
7068
7069  public class TelecomManager {
7070    method public void addNewUnknownCall(android.telecom.PhoneAccountHandle, android.os.Bundle);
7071    method @Deprecated public void clearAccounts();
7072    method public void clearPhoneAccounts();
7073    method @RequiresPermission(android.Manifest.permission.DUMP) public android.telecom.TelecomAnalytics dumpAnalytics();
7074    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void enablePhoneAccount(android.telecom.PhoneAccountHandle, boolean);
7075    method public java.util.List<android.telecom.PhoneAccountHandle> getAllPhoneAccountHandles();
7076    method public java.util.List<android.telecom.PhoneAccount> getAllPhoneAccounts();
7077    method public int getAllPhoneAccountsCount();
7078    method public int getCallState();
7079    method public android.telecom.PhoneAccountHandle getConnectionManager();
7080    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getCurrentTtyMode();
7081    method @Deprecated public android.content.ComponentName getDefaultPhoneApp();
7082    method public java.util.List<android.telecom.PhoneAccountHandle> getPhoneAccountsForPackage();
7083    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);
7084    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean isInEmergencyCall();
7085    method @RequiresPermission(anyOf={android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE, android.Manifest.permission.READ_PHONE_STATE}) public boolean isRinging();
7086    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setUserSelectedOutgoingPhoneAccount(@Nullable android.telecom.PhoneAccountHandle);
7087    field public static final String EXTRA_CALL_BACK_INTENT = "android.telecom.extra.CALL_BACK_INTENT";
7088    field public static final String EXTRA_CLEAR_MISSED_CALLS_INTENT = "android.telecom.extra.CLEAR_MISSED_CALLS_INTENT";
7089    field public static final String EXTRA_CONNECTION_SERVICE = "android.telecom.extra.CONNECTION_SERVICE";
7090    field public static final String EXTRA_IS_USER_INTENT_EMERGENCY_CALL = "android.telecom.extra.IS_USER_INTENT_EMERGENCY_CALL";
7091    field public static final int TTY_MODE_FULL = 1; // 0x1
7092    field public static final int TTY_MODE_HCO = 2; // 0x2
7093    field public static final int TTY_MODE_OFF = 0; // 0x0
7094    field public static final int TTY_MODE_VCO = 3; // 0x3
7095  }
7096
7097}
7098
7099package android.telephony {
7100
7101  public final class AccessNetworkConstants {
7102    field public static final int TRANSPORT_TYPE_INVALID = -1; // 0xffffffff
7103    field public static final int TRANSPORT_TYPE_WLAN = 2; // 0x2
7104    field public static final int TRANSPORT_TYPE_WWAN = 1; // 0x1
7105  }
7106
7107  public final class CallAttributes implements android.os.Parcelable {
7108    ctor public CallAttributes(@NonNull android.telephony.PreciseCallState, int, @NonNull android.telephony.CallQuality);
7109    method public int describeContents();
7110    method @NonNull public android.telephony.CallQuality getCallQuality();
7111    method public int getNetworkType();
7112    method @NonNull public android.telephony.PreciseCallState getPreciseCallState();
7113    method public void writeToParcel(android.os.Parcel, int);
7114    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.CallAttributes> CREATOR;
7115  }
7116
7117  public final class CallQuality implements android.os.Parcelable {
7118    ctor public CallQuality(int, int, int, int, int, int, int, int, int, int, int);
7119    method public int describeContents();
7120    method public int getAverageRelativeJitter();
7121    method public int getAverageRoundTripTime();
7122    method public int getCallDuration();
7123    method public int getCodecType();
7124    method public int getDownlinkCallQualityLevel();
7125    method public int getMaxRelativeJitter();
7126    method public int getNumRtpPacketsNotReceived();
7127    method public int getNumRtpPacketsReceived();
7128    method public int getNumRtpPacketsTransmitted();
7129    method public int getNumRtpPacketsTransmittedLost();
7130    method public int getUplinkCallQualityLevel();
7131    method public void writeToParcel(android.os.Parcel, int);
7132    field public static final int CALL_QUALITY_BAD = 4; // 0x4
7133    field public static final int CALL_QUALITY_EXCELLENT = 0; // 0x0
7134    field public static final int CALL_QUALITY_FAIR = 2; // 0x2
7135    field public static final int CALL_QUALITY_GOOD = 1; // 0x1
7136    field public static final int CALL_QUALITY_NOT_AVAILABLE = 5; // 0x5
7137    field public static final int CALL_QUALITY_POOR = 3; // 0x3
7138    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.CallQuality> CREATOR;
7139  }
7140
7141  public class CarrierConfigManager {
7142    method @NonNull public static android.os.PersistableBundle getDefaultConfig();
7143    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void overrideConfig(int, @Nullable android.os.PersistableBundle);
7144    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void updateConfigForPhoneId(int, String);
7145    field public static final String KEY_CARRIER_SETUP_APP_STRING = "carrier_setup_app_string";
7146  }
7147
7148  public final class CarrierRestrictionRules implements android.os.Parcelable {
7149    method @NonNull public java.util.List<java.lang.Boolean> areCarrierIdentifiersAllowed(@NonNull java.util.List<android.service.carrier.CarrierIdentifier>);
7150    method public int describeContents();
7151    method @NonNull public java.util.List<android.service.carrier.CarrierIdentifier> getAllowedCarriers();
7152    method public int getDefaultCarrierRestriction();
7153    method @NonNull public java.util.List<android.service.carrier.CarrierIdentifier> getExcludedCarriers();
7154    method public int getMultiSimPolicy();
7155    method public boolean isAllCarriersAllowed();
7156    method public void writeToParcel(android.os.Parcel, int);
7157    field public static final int CARRIER_RESTRICTION_DEFAULT_ALLOWED = 1; // 0x1
7158    field public static final int CARRIER_RESTRICTION_DEFAULT_NOT_ALLOWED = 0; // 0x0
7159    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.CarrierRestrictionRules> CREATOR;
7160    field public static final int MULTISIM_POLICY_NONE = 0; // 0x0
7161    field public static final int MULTISIM_POLICY_ONE_VALID_SIM_MUST_BE_PRESENT = 1; // 0x1
7162  }
7163
7164  public static final class CarrierRestrictionRules.Builder {
7165    ctor public CarrierRestrictionRules.Builder();
7166    method @NonNull public android.telephony.CarrierRestrictionRules build();
7167    method @NonNull public android.telephony.CarrierRestrictionRules.Builder setAllCarriersAllowed();
7168    method @NonNull public android.telephony.CarrierRestrictionRules.Builder setAllowedCarriers(@NonNull java.util.List<android.service.carrier.CarrierIdentifier>);
7169    method @NonNull public android.telephony.CarrierRestrictionRules.Builder setDefaultCarrierRestriction(int);
7170    method @NonNull public android.telephony.CarrierRestrictionRules.Builder setExcludedCarriers(@NonNull java.util.List<android.service.carrier.CarrierIdentifier>);
7171    method @NonNull public android.telephony.CarrierRestrictionRules.Builder setMultiSimPolicy(int);
7172  }
7173
7174  public final class DataFailCause {
7175    field public static final int ACCESS_ATTEMPT_ALREADY_IN_PROGRESS = 2219; // 0x8ab
7176    field public static final int ACCESS_BLOCK = 2087; // 0x827
7177    field public static final int ACCESS_BLOCK_ALL = 2088; // 0x828
7178    field public static final int ACCESS_CLASS_DSAC_REJECTION = 2108; // 0x83c
7179    field public static final int ACCESS_CONTROL_LIST_CHECK_FAILURE = 2128; // 0x850
7180    field public static final int ACTIVATION_REJECTED_BCM_VIOLATION = 48; // 0x30
7181    field public static final int ACTIVATION_REJECT_GGSN = 30; // 0x1e
7182    field public static final int ACTIVATION_REJECT_UNSPECIFIED = 31; // 0x1f
7183    field public static final int ACTIVE_PDP_CONTEXT_MAX_NUMBER_REACHED = 65; // 0x41
7184    field public static final int APN_DISABLED = 2045; // 0x7fd
7185    field public static final int APN_DISALLOWED_ON_ROAMING = 2059; // 0x80b
7186    field public static final int APN_MISMATCH = 2054; // 0x806
7187    field public static final int APN_PARAMETERS_CHANGED = 2060; // 0x80c
7188    field public static final int APN_PENDING_HANDOVER = 2041; // 0x7f9
7189    field public static final int APN_TYPE_CONFLICT = 112; // 0x70
7190    field public static final int AUTH_FAILURE_ON_EMERGENCY_CALL = 122; // 0x7a
7191    field public static final int BEARER_HANDLING_NOT_SUPPORTED = 60; // 0x3c
7192    field public static final int CALL_DISALLOWED_IN_ROAMING = 2068; // 0x814
7193    field public static final int CALL_PREEMPT_BY_EMERGENCY_APN = 127; // 0x7f
7194    field public static final int CANNOT_ENCODE_OTA_MESSAGE = 2159; // 0x86f
7195    field public static final int CDMA_ALERT_STOP = 2077; // 0x81d
7196    field public static final int CDMA_INCOMING_CALL = 2076; // 0x81c
7197    field public static final int CDMA_INTERCEPT = 2073; // 0x819
7198    field public static final int CDMA_LOCK = 2072; // 0x818
7199    field public static final int CDMA_RELEASE_DUE_TO_SO_REJECTION = 2075; // 0x81b
7200    field public static final int CDMA_REORDER = 2074; // 0x81a
7201    field public static final int CDMA_RETRY_ORDER = 2086; // 0x826
7202    field public static final int CHANNEL_ACQUISITION_FAILURE = 2078; // 0x81e
7203    field public static final int CLOSE_IN_PROGRESS = 2030; // 0x7ee
7204    field public static final int COLLISION_WITH_NETWORK_INITIATED_REQUEST = 56; // 0x38
7205    field public static final int COMPANION_IFACE_IN_USE = 118; // 0x76
7206    field public static final int CONCURRENT_SERVICES_INCOMPATIBLE = 2083; // 0x823
7207    field public static final int CONCURRENT_SERVICES_NOT_ALLOWED = 2091; // 0x82b
7208    field public static final int CONCURRENT_SERVICE_NOT_SUPPORTED_BY_BASE_STATION = 2080; // 0x820
7209    field public static final int CONDITIONAL_IE_ERROR = 100; // 0x64
7210    field public static final int CONGESTION = 2106; // 0x83a
7211    field public static final int CONNECTION_RELEASED = 2113; // 0x841
7212    field public static final int CS_DOMAIN_NOT_AVAILABLE = 2181; // 0x885
7213    field public static final int CS_FALLBACK_CALL_ESTABLISHMENT_NOT_ALLOWED = 2188; // 0x88c
7214    field public static final int DATA_PLAN_EXPIRED = 2198; // 0x896
7215    field public static final int DATA_ROAMING_SETTINGS_DISABLED = 2064; // 0x810
7216    field public static final int DATA_SETTINGS_DISABLED = 2063; // 0x80f
7217    field public static final int DBM_OR_SMS_IN_PROGRESS = 2211; // 0x8a3
7218    field public static final int DDS_SWITCHED = 2065; // 0x811
7219    field public static final int DDS_SWITCH_IN_PROGRESS = 2067; // 0x813
7220    field public static final int DRB_RELEASED_BY_RRC = 2112; // 0x840
7221    field public static final int DS_EXPLICIT_DEACTIVATION = 2125; // 0x84d
7222    field public static final int DUAL_SWITCH = 2227; // 0x8b3
7223    field public static final int DUN_CALL_DISALLOWED = 2056; // 0x808
7224    field public static final int DUPLICATE_BEARER_ID = 2118; // 0x846
7225    field public static final int EHRPD_TO_HRPD_FALLBACK = 2049; // 0x801
7226    field public static final int EMBMS_NOT_ENABLED = 2193; // 0x891
7227    field public static final int EMBMS_REGULAR_DEACTIVATION = 2195; // 0x893
7228    field public static final int EMERGENCY_IFACE_ONLY = 116; // 0x74
7229    field public static final int EMERGENCY_MODE = 2221; // 0x8ad
7230    field public static final int EMM_ACCESS_BARRED = 115; // 0x73
7231    field public static final int EMM_ACCESS_BARRED_INFINITE_RETRY = 121; // 0x79
7232    field public static final int EMM_ATTACH_FAILED = 2115; // 0x843
7233    field public static final int EMM_ATTACH_STARTED = 2116; // 0x844
7234    field public static final int EMM_DETACHED = 2114; // 0x842
7235    field public static final int EMM_T3417_EXPIRED = 2130; // 0x852
7236    field public static final int EMM_T3417_EXT_EXPIRED = 2131; // 0x853
7237    field public static final int EPS_SERVICES_AND_NON_EPS_SERVICES_NOT_ALLOWED = 2178; // 0x882
7238    field public static final int EPS_SERVICES_NOT_ALLOWED_IN_PLMN = 2179; // 0x883
7239    field public static final int ERROR_UNSPECIFIED = 65535; // 0xffff
7240    field public static final int ESM_BAD_OTA_MESSAGE = 2122; // 0x84a
7241    field public static final int ESM_BEARER_DEACTIVATED_TO_SYNC_WITH_NETWORK = 2120; // 0x848
7242    field public static final int ESM_COLLISION_SCENARIOS = 2119; // 0x847
7243    field public static final int ESM_CONTEXT_TRANSFERRED_DUE_TO_IRAT = 2124; // 0x84c
7244    field public static final int ESM_DOWNLOAD_SERVER_REJECTED_THE_CALL = 2123; // 0x84b
7245    field public static final int ESM_FAILURE = 2182; // 0x886
7246    field public static final int ESM_INFO_NOT_RECEIVED = 53; // 0x35
7247    field public static final int ESM_LOCAL_CAUSE_NONE = 2126; // 0x84e
7248    field public static final int ESM_NW_ACTIVATED_DED_BEARER_WITH_ID_OF_DEF_BEARER = 2121; // 0x849
7249    field public static final int ESM_PROCEDURE_TIME_OUT = 2155; // 0x86b
7250    field public static final int ESM_UNKNOWN_EPS_BEARER_CONTEXT = 2111; // 0x83f
7251    field public static final int EVDO_CONNECTION_DENY_BY_BILLING_OR_AUTHENTICATION_FAILURE = 2201; // 0x899
7252    field public static final int EVDO_CONNECTION_DENY_BY_GENERAL_OR_NETWORK_BUSY = 2200; // 0x898
7253    field public static final int EVDO_HDR_CHANGED = 2202; // 0x89a
7254    field public static final int EVDO_HDR_CONNECTION_SETUP_TIMEOUT = 2206; // 0x89e
7255    field public static final int EVDO_HDR_EXITED = 2203; // 0x89b
7256    field public static final int EVDO_HDR_NO_SESSION = 2204; // 0x89c
7257    field public static final int EVDO_USING_GPS_FIX_INSTEAD_OF_HDR_CALL = 2205; // 0x89d
7258    field public static final int FADE = 2217; // 0x8a9
7259    field public static final int FAILED_TO_ACQUIRE_COLOCATED_HDR = 2207; // 0x89f
7260    field public static final int FEATURE_NOT_SUPP = 40; // 0x28
7261    field public static final int FILTER_SEMANTIC_ERROR = 44; // 0x2c
7262    field public static final int FILTER_SYTAX_ERROR = 45; // 0x2d
7263    field public static final int FORBIDDEN_APN_NAME = 2066; // 0x812
7264    field public static final int GPRS_REGISTRATION_FAIL = -2; // 0xfffffffe
7265    field public static final int GPRS_SERVICES_AND_NON_GPRS_SERVICES_NOT_ALLOWED = 2097; // 0x831
7266    field public static final int GPRS_SERVICES_NOT_ALLOWED = 2098; // 0x832
7267    field public static final int GPRS_SERVICES_NOT_ALLOWED_IN_THIS_PLMN = 2103; // 0x837
7268    field public static final int HANDOFF_PREFERENCE_CHANGED = 2251; // 0x8cb
7269    field public static final int HDR_ACCESS_FAILURE = 2213; // 0x8a5
7270    field public static final int HDR_FADE = 2212; // 0x8a4
7271    field public static final int HDR_NO_LOCK_GRANTED = 2210; // 0x8a2
7272    field public static final int IFACE_AND_POL_FAMILY_MISMATCH = 120; // 0x78
7273    field public static final int IFACE_MISMATCH = 117; // 0x75
7274    field public static final int ILLEGAL_ME = 2096; // 0x830
7275    field public static final int ILLEGAL_MS = 2095; // 0x82f
7276    field public static final int IMEI_NOT_ACCEPTED = 2177; // 0x881
7277    field public static final int IMPLICITLY_DETACHED = 2100; // 0x834
7278    field public static final int IMSI_UNKNOWN_IN_HOME_SUBSCRIBER_SERVER = 2176; // 0x880
7279    field public static final int INCOMING_CALL_REJECTED = 2092; // 0x82c
7280    field public static final int INSUFFICIENT_RESOURCES = 26; // 0x1a
7281    field public static final int INTERFACE_IN_USE = 2058; // 0x80a
7282    field public static final int INTERNAL_CALL_PREEMPT_BY_HIGH_PRIO_APN = 114; // 0x72
7283    field public static final int INTERNAL_EPC_NONEPC_TRANSITION = 2057; // 0x809
7284    field public static final int INVALID_CONNECTION_ID = 2156; // 0x86c
7285    field public static final int INVALID_DNS_ADDR = 123; // 0x7b
7286    field public static final int INVALID_EMM_STATE = 2190; // 0x88e
7287    field public static final int INVALID_MANDATORY_INFO = 96; // 0x60
7288    field public static final int INVALID_MODE = 2223; // 0x8af
7289    field public static final int INVALID_PCSCF_ADDR = 113; // 0x71
7290    field public static final int INVALID_PCSCF_OR_DNS_ADDRESS = 124; // 0x7c
7291    field public static final int INVALID_PRIMARY_NSAPI = 2158; // 0x86e
7292    field public static final int INVALID_SIM_STATE = 2224; // 0x8b0
7293    field public static final int INVALID_TRANSACTION_ID = 81; // 0x51
7294    field public static final int IPV6_ADDRESS_TRANSFER_FAILED = 2047; // 0x7ff
7295    field public static final int IPV6_PREFIX_UNAVAILABLE = 2250; // 0x8ca
7296    field public static final int IP_ADDRESS_MISMATCH = 119; // 0x77
7297    field public static final int IP_VERSION_MISMATCH = 2055; // 0x807
7298    field public static final int IRAT_HANDOVER_FAILED = 2194; // 0x892
7299    field public static final int IS707B_MAX_ACCESS_PROBES = 2089; // 0x829
7300    field public static final int LIMITED_TO_IPV4 = 2234; // 0x8ba
7301    field public static final int LIMITED_TO_IPV6 = 2235; // 0x8bb
7302    field public static final int LLC_SNDCP = 25; // 0x19
7303    field public static final int LOCAL_END = 2215; // 0x8a7
7304    field public static final int LOCATION_AREA_NOT_ALLOWED = 2102; // 0x836
7305    field public static final int LOST_CONNECTION = 65540; // 0x10004
7306    field public static final int LOWER_LAYER_REGISTRATION_FAILURE = 2197; // 0x895
7307    field public static final int LOW_POWER_MODE_OR_POWERING_DOWN = 2044; // 0x7fc
7308    field public static final int LTE_NAS_SERVICE_REQUEST_FAILED = 2117; // 0x845
7309    field public static final int LTE_THROTTLING_NOT_REQUIRED = 2127; // 0x84f
7310    field public static final int MAC_FAILURE = 2183; // 0x887
7311    field public static final int MAXIMIUM_NSAPIS_EXCEEDED = 2157; // 0x86d
7312    field public static final int MAXINUM_SIZE_OF_L2_MESSAGE_EXCEEDED = 2166; // 0x876
7313    field public static final int MAX_ACCESS_PROBE = 2079; // 0x81f
7314    field public static final int MAX_IPV4_CONNECTIONS = 2052; // 0x804
7315    field public static final int MAX_IPV6_CONNECTIONS = 2053; // 0x805
7316    field public static final int MAX_PPP_INACTIVITY_TIMER_EXPIRED = 2046; // 0x7fe
7317    field public static final int MESSAGE_INCORRECT_SEMANTIC = 95; // 0x5f
7318    field public static final int MESSAGE_TYPE_UNSUPPORTED = 97; // 0x61
7319    field public static final int MIP_CONFIG_FAILURE = 2050; // 0x802
7320    field public static final int MIP_FA_ADMIN_PROHIBITED = 2001; // 0x7d1
7321    field public static final int MIP_FA_DELIVERY_STYLE_NOT_SUPPORTED = 2012; // 0x7dc
7322    field public static final int MIP_FA_ENCAPSULATION_UNAVAILABLE = 2008; // 0x7d8
7323    field public static final int MIP_FA_HOME_AGENT_AUTHENTICATION_FAILURE = 2004; // 0x7d4
7324    field public static final int MIP_FA_INSUFFICIENT_RESOURCES = 2002; // 0x7d2
7325    field public static final int MIP_FA_MALFORMED_REPLY = 2007; // 0x7d7
7326    field public static final int MIP_FA_MALFORMED_REQUEST = 2006; // 0x7d6
7327    field public static final int MIP_FA_MISSING_CHALLENGE = 2017; // 0x7e1
7328    field public static final int MIP_FA_MISSING_HOME_ADDRESS = 2015; // 0x7df
7329    field public static final int MIP_FA_MISSING_HOME_AGENT = 2014; // 0x7de
7330    field public static final int MIP_FA_MISSING_NAI = 2013; // 0x7dd
7331    field public static final int MIP_FA_MOBILE_NODE_AUTHENTICATION_FAILURE = 2003; // 0x7d3
7332    field public static final int MIP_FA_REASON_UNSPECIFIED = 2000; // 0x7d0
7333    field public static final int MIP_FA_REQUESTED_LIFETIME_TOO_LONG = 2005; // 0x7d5
7334    field public static final int MIP_FA_REVERSE_TUNNEL_IS_MANDATORY = 2011; // 0x7db
7335    field public static final int MIP_FA_REVERSE_TUNNEL_UNAVAILABLE = 2010; // 0x7da
7336    field public static final int MIP_FA_STALE_CHALLENGE = 2018; // 0x7e2
7337    field public static final int MIP_FA_UNKNOWN_CHALLENGE = 2016; // 0x7e0
7338    field public static final int MIP_FA_VJ_HEADER_COMPRESSION_UNAVAILABLE = 2009; // 0x7d9
7339    field public static final int MIP_HA_ADMIN_PROHIBITED = 2020; // 0x7e4
7340    field public static final int MIP_HA_ENCAPSULATION_UNAVAILABLE = 2029; // 0x7ed
7341    field public static final int MIP_HA_FOREIGN_AGENT_AUTHENTICATION_FAILURE = 2023; // 0x7e7
7342    field public static final int MIP_HA_INSUFFICIENT_RESOURCES = 2021; // 0x7e5
7343    field public static final int MIP_HA_MALFORMED_REQUEST = 2025; // 0x7e9
7344    field public static final int MIP_HA_MOBILE_NODE_AUTHENTICATION_FAILURE = 2022; // 0x7e6
7345    field public static final int MIP_HA_REASON_UNSPECIFIED = 2019; // 0x7e3
7346    field public static final int MIP_HA_REGISTRATION_ID_MISMATCH = 2024; // 0x7e8
7347    field public static final int MIP_HA_REVERSE_TUNNEL_IS_MANDATORY = 2028; // 0x7ec
7348    field public static final int MIP_HA_REVERSE_TUNNEL_UNAVAILABLE = 2027; // 0x7eb
7349    field public static final int MIP_HA_UNKNOWN_HOME_AGENT_ADDRESS = 2026; // 0x7ea
7350    field public static final int MISSING_UNKNOWN_APN = 27; // 0x1b
7351    field public static final int MODEM_APP_PREEMPTED = 2032; // 0x7f0
7352    field public static final int MODEM_RESTART = 2037; // 0x7f5
7353    field public static final int MSC_TEMPORARILY_NOT_REACHABLE = 2180; // 0x884
7354    field public static final int MSG_AND_PROTOCOL_STATE_UNCOMPATIBLE = 101; // 0x65
7355    field public static final int MSG_TYPE_NONCOMPATIBLE_STATE = 98; // 0x62
7356    field public static final int MS_IDENTITY_CANNOT_BE_DERIVED_BY_THE_NETWORK = 2099; // 0x833
7357    field public static final int MULTIPLE_PDP_CALL_NOT_ALLOWED = 2192; // 0x890
7358    field public static final int MULTI_CONN_TO_SAME_PDN_NOT_ALLOWED = 55; // 0x37
7359    field public static final int NAS_LAYER_FAILURE = 2191; // 0x88f
7360    field public static final int NAS_REQUEST_REJECTED_BY_NETWORK = 2167; // 0x877
7361    field public static final int NAS_SIGNALLING = 14; // 0xe
7362    field public static final int NETWORK_FAILURE = 38; // 0x26
7363    field public static final int NETWORK_INITIATED_DETACH_NO_AUTO_REATTACH = 2154; // 0x86a
7364    field public static final int NETWORK_INITIATED_DETACH_WITH_AUTO_REATTACH = 2153; // 0x869
7365    field public static final int NETWORK_INITIATED_TERMINATION = 2031; // 0x7ef
7366    field public static final int NONE = 0; // 0x0
7367    field public static final int NON_IP_NOT_SUPPORTED = 2069; // 0x815
7368    field public static final int NORMAL_RELEASE = 2218; // 0x8aa
7369    field public static final int NO_CDMA_SERVICE = 2084; // 0x824
7370    field public static final int NO_COLLOCATED_HDR = 2225; // 0x8b1
7371    field public static final int NO_EPS_BEARER_CONTEXT_ACTIVATED = 2189; // 0x88d
7372    field public static final int NO_GPRS_CONTEXT = 2094; // 0x82e
7373    field public static final int NO_HYBRID_HDR_SERVICE = 2209; // 0x8a1
7374    field public static final int NO_PDP_CONTEXT_ACTIVATED = 2107; // 0x83b
7375    field public static final int NO_RESPONSE_FROM_BASE_STATION = 2081; // 0x821
7376    field public static final int NO_SERVICE = 2216; // 0x8a8
7377    field public static final int NO_SERVICE_ON_GATEWAY = 2093; // 0x82d
7378    field public static final int NSAPI_IN_USE = 35; // 0x23
7379    field public static final int NULL_APN_DISALLOWED = 2061; // 0x80d
7380    field public static final int OEM_DCFAILCAUSE_1 = 4097; // 0x1001
7381    field public static final int OEM_DCFAILCAUSE_10 = 4106; // 0x100a
7382    field public static final int OEM_DCFAILCAUSE_11 = 4107; // 0x100b
7383    field public static final int OEM_DCFAILCAUSE_12 = 4108; // 0x100c
7384    field public static final int OEM_DCFAILCAUSE_13 = 4109; // 0x100d
7385    field public static final int OEM_DCFAILCAUSE_14 = 4110; // 0x100e
7386    field public static final int OEM_DCFAILCAUSE_15 = 4111; // 0x100f
7387    field public static final int OEM_DCFAILCAUSE_2 = 4098; // 0x1002
7388    field public static final int OEM_DCFAILCAUSE_3 = 4099; // 0x1003
7389    field public static final int OEM_DCFAILCAUSE_4 = 4100; // 0x1004
7390    field public static final int OEM_DCFAILCAUSE_5 = 4101; // 0x1005
7391    field public static final int OEM_DCFAILCAUSE_6 = 4102; // 0x1006
7392    field public static final int OEM_DCFAILCAUSE_7 = 4103; // 0x1007
7393    field public static final int OEM_DCFAILCAUSE_8 = 4104; // 0x1008
7394    field public static final int OEM_DCFAILCAUSE_9 = 4105; // 0x1009
7395    field public static final int ONLY_IPV4V6_ALLOWED = 57; // 0x39
7396    field public static final int ONLY_IPV4_ALLOWED = 50; // 0x32
7397    field public static final int ONLY_IPV6_ALLOWED = 51; // 0x33
7398    field public static final int ONLY_NON_IP_ALLOWED = 58; // 0x3a
7399    field public static final int ONLY_SINGLE_BEARER_ALLOWED = 52; // 0x34
7400    field public static final int OPERATOR_BARRED = 8; // 0x8
7401    field public static final int OTASP_COMMIT_IN_PROGRESS = 2208; // 0x8a0
7402    field public static final int PDN_CONN_DOES_NOT_EXIST = 54; // 0x36
7403    field public static final int PDN_INACTIVITY_TIMER_EXPIRED = 2051; // 0x803
7404    field public static final int PDN_IPV4_CALL_DISALLOWED = 2033; // 0x7f1
7405    field public static final int PDN_IPV4_CALL_THROTTLED = 2034; // 0x7f2
7406    field public static final int PDN_IPV6_CALL_DISALLOWED = 2035; // 0x7f3
7407    field public static final int PDN_IPV6_CALL_THROTTLED = 2036; // 0x7f4
7408    field public static final int PDN_NON_IP_CALL_DISALLOWED = 2071; // 0x817
7409    field public static final int PDN_NON_IP_CALL_THROTTLED = 2070; // 0x816
7410    field public static final int PDP_ACTIVATE_MAX_RETRY_FAILED = 2109; // 0x83d
7411    field public static final int PDP_DUPLICATE = 2104; // 0x838
7412    field public static final int PDP_ESTABLISH_TIMEOUT_EXPIRED = 2161; // 0x871
7413    field public static final int PDP_INACTIVE_TIMEOUT_EXPIRED = 2163; // 0x873
7414    field public static final int PDP_LOWERLAYER_ERROR = 2164; // 0x874
7415    field public static final int PDP_MODIFY_COLLISION = 2165; // 0x875
7416    field public static final int PDP_MODIFY_TIMEOUT_EXPIRED = 2162; // 0x872
7417    field public static final int PDP_PPP_NOT_SUPPORTED = 2038; // 0x7f6
7418    field public static final int PDP_WITHOUT_ACTIVE_TFT = 46; // 0x2e
7419    field public static final int PHONE_IN_USE = 2222; // 0x8ae
7420    field public static final int PHYSICAL_LINK_CLOSE_IN_PROGRESS = 2040; // 0x7f8
7421    field public static final int PLMN_NOT_ALLOWED = 2101; // 0x835
7422    field public static final int PPP_AUTH_FAILURE = 2229; // 0x8b5
7423    field public static final int PPP_CHAP_FAILURE = 2232; // 0x8b8
7424    field public static final int PPP_CLOSE_IN_PROGRESS = 2233; // 0x8b9
7425    field public static final int PPP_OPTION_MISMATCH = 2230; // 0x8b6
7426    field public static final int PPP_PAP_FAILURE = 2231; // 0x8b7
7427    field public static final int PPP_TIMEOUT = 2228; // 0x8b4
7428    field public static final int PREF_RADIO_TECH_CHANGED = -4; // 0xfffffffc
7429    field public static final int PROFILE_BEARER_INCOMPATIBLE = 2042; // 0x7fa
7430    field public static final int PROTOCOL_ERRORS = 111; // 0x6f
7431    field public static final int QOS_NOT_ACCEPTED = 37; // 0x25
7432    field public static final int RADIO_ACCESS_BEARER_FAILURE = 2110; // 0x83e
7433    field public static final int RADIO_ACCESS_BEARER_SETUP_FAILURE = 2160; // 0x870
7434    field public static final int RADIO_NOT_AVAILABLE = 65537; // 0x10001
7435    field public static final int RADIO_POWER_OFF = -5; // 0xfffffffb
7436    field public static final int REDIRECTION_OR_HANDOFF_IN_PROGRESS = 2220; // 0x8ac
7437    field public static final int REGISTRATION_FAIL = -1; // 0xffffffff
7438    field public static final int REGULAR_DEACTIVATION = 36; // 0x24
7439    field public static final int REJECTED_BY_BASE_STATION = 2082; // 0x822
7440    field public static final int RRC_CONNECTION_ABORTED_AFTER_HANDOVER = 2173; // 0x87d
7441    field public static final int RRC_CONNECTION_ABORTED_AFTER_IRAT_CELL_CHANGE = 2174; // 0x87e
7442    field public static final int RRC_CONNECTION_ABORTED_DUE_TO_IRAT_CHANGE = 2171; // 0x87b
7443    field public static final int RRC_CONNECTION_ABORTED_DURING_IRAT_CELL_CHANGE = 2175; // 0x87f
7444    field public static final int RRC_CONNECTION_ABORT_REQUEST = 2151; // 0x867
7445    field public static final int RRC_CONNECTION_ACCESS_BARRED = 2139; // 0x85b
7446    field public static final int RRC_CONNECTION_ACCESS_STRATUM_FAILURE = 2137; // 0x859
7447    field public static final int RRC_CONNECTION_ANOTHER_PROCEDURE_IN_PROGRESS = 2138; // 0x85a
7448    field public static final int RRC_CONNECTION_CELL_NOT_CAMPED = 2144; // 0x860
7449    field public static final int RRC_CONNECTION_CELL_RESELECTION = 2140; // 0x85c
7450    field public static final int RRC_CONNECTION_CONFIG_FAILURE = 2141; // 0x85d
7451    field public static final int RRC_CONNECTION_INVALID_REQUEST = 2168; // 0x878
7452    field public static final int RRC_CONNECTION_LINK_FAILURE = 2143; // 0x85f
7453    field public static final int RRC_CONNECTION_NORMAL_RELEASE = 2147; // 0x863
7454    field public static final int RRC_CONNECTION_OUT_OF_SERVICE_DURING_CELL_REGISTER = 2150; // 0x866
7455    field public static final int RRC_CONNECTION_RADIO_LINK_FAILURE = 2148; // 0x864
7456    field public static final int RRC_CONNECTION_REESTABLISHMENT_FAILURE = 2149; // 0x865
7457    field public static final int RRC_CONNECTION_REJECT_BY_NETWORK = 2146; // 0x862
7458    field public static final int RRC_CONNECTION_RELEASED_SECURITY_NOT_ACTIVE = 2172; // 0x87c
7459    field public static final int RRC_CONNECTION_RF_UNAVAILABLE = 2170; // 0x87a
7460    field public static final int RRC_CONNECTION_SYSTEM_INFORMATION_BLOCK_READ_ERROR = 2152; // 0x868
7461    field public static final int RRC_CONNECTION_SYSTEM_INTERVAL_FAILURE = 2145; // 0x861
7462    field public static final int RRC_CONNECTION_TIMER_EXPIRED = 2142; // 0x85e
7463    field public static final int RRC_CONNECTION_TRACKING_AREA_ID_CHANGED = 2169; // 0x879
7464    field public static final int RRC_UPLINK_CONNECTION_RELEASE = 2134; // 0x856
7465    field public static final int RRC_UPLINK_DATA_TRANSMISSION_FAILURE = 2132; // 0x854
7466    field public static final int RRC_UPLINK_DELIVERY_FAILED_DUE_TO_HANDOVER = 2133; // 0x855
7467    field public static final int RRC_UPLINK_ERROR_REQUEST_FROM_NAS = 2136; // 0x858
7468    field public static final int RRC_UPLINK_RADIO_LINK_FAILURE = 2135; // 0x857
7469    field public static final int RUIM_NOT_PRESENT = 2085; // 0x825
7470    field public static final int SECURITY_MODE_REJECTED = 2186; // 0x88a
7471    field public static final int SERVICE_NOT_ALLOWED_ON_PLMN = 2129; // 0x851
7472    field public static final int SERVICE_OPTION_NOT_SUBSCRIBED = 33; // 0x21
7473    field public static final int SERVICE_OPTION_NOT_SUPPORTED = 32; // 0x20
7474    field public static final int SERVICE_OPTION_OUT_OF_ORDER = 34; // 0x22
7475    field public static final int SIGNAL_LOST = -3; // 0xfffffffd
7476    field public static final int SIM_CARD_CHANGED = 2043; // 0x7fb
7477    field public static final int SYNCHRONIZATION_FAILURE = 2184; // 0x888
7478    field public static final int TEST_LOOPBACK_REGULAR_DEACTIVATION = 2196; // 0x894
7479    field public static final int TETHERED_CALL_ACTIVE = -6; // 0xfffffffa
7480    field public static final int TFT_SEMANTIC_ERROR = 41; // 0x29
7481    field public static final int TFT_SYTAX_ERROR = 42; // 0x2a
7482    field public static final int THERMAL_EMERGENCY = 2090; // 0x82a
7483    field public static final int THERMAL_MITIGATION = 2062; // 0x80e
7484    field public static final int TRAT_SWAP_FAILED = 2048; // 0x800
7485    field public static final int UE_INITIATED_DETACH_OR_DISCONNECT = 128; // 0x80
7486    field public static final int UE_IS_ENTERING_POWERSAVE_MODE = 2226; // 0x8b2
7487    field public static final int UE_RAT_CHANGE = 2105; // 0x839
7488    field public static final int UE_SECURITY_CAPABILITIES_MISMATCH = 2185; // 0x889
7489    field public static final int UMTS_HANDOVER_TO_IWLAN = 2199; // 0x897
7490    field public static final int UMTS_REACTIVATION_REQ = 39; // 0x27
7491    field public static final int UNACCEPTABLE_NON_EPS_AUTHENTICATION = 2187; // 0x88b
7492    field public static final int UNKNOWN = 65536; // 0x10000
7493    field public static final int UNKNOWN_INFO_ELEMENT = 99; // 0x63
7494    field public static final int UNKNOWN_PDP_ADDRESS_TYPE = 28; // 0x1c
7495    field public static final int UNKNOWN_PDP_CONTEXT = 43; // 0x2b
7496    field public static final int UNPREFERRED_RAT = 2039; // 0x7f7
7497    field public static final int UNSUPPORTED_1X_PREV = 2214; // 0x8a6
7498    field public static final int UNSUPPORTED_APN_IN_CURRENT_PLMN = 66; // 0x42
7499    field public static final int UNSUPPORTED_QCI_VALUE = 59; // 0x3b
7500    field public static final int USER_AUTHENTICATION = 29; // 0x1d
7501    field public static final int VSNCP_ADMINISTRATIVELY_PROHIBITED = 2245; // 0x8c5
7502    field public static final int VSNCP_APN_UNATHORIZED = 2238; // 0x8be
7503    field public static final int VSNCP_GEN_ERROR = 2237; // 0x8bd
7504    field public static final int VSNCP_INSUFFICIENT_PARAMETERS = 2243; // 0x8c3
7505    field public static final int VSNCP_NO_PDN_GATEWAY_ADDRESS = 2240; // 0x8c0
7506    field public static final int VSNCP_PDN_EXISTS_FOR_THIS_APN = 2248; // 0x8c8
7507    field public static final int VSNCP_PDN_GATEWAY_REJECT = 2242; // 0x8c2
7508    field public static final int VSNCP_PDN_GATEWAY_UNREACHABLE = 2241; // 0x8c1
7509    field public static final int VSNCP_PDN_ID_IN_USE = 2246; // 0x8c6
7510    field public static final int VSNCP_PDN_LIMIT_EXCEEDED = 2239; // 0x8bf
7511    field public static final int VSNCP_RECONNECT_NOT_ALLOWED = 2249; // 0x8c9
7512    field public static final int VSNCP_RESOURCE_UNAVAILABLE = 2244; // 0x8c4
7513    field public static final int VSNCP_SUBSCRIBER_LIMITATION = 2247; // 0x8c7
7514    field public static final int VSNCP_TIMEOUT = 2236; // 0x8bc
7515  }
7516
7517  public final class DataSpecificRegistrationInfo implements android.os.Parcelable {
7518    method public int describeContents();
7519    method @NonNull public android.telephony.LteVopsSupportInfo getLteVopsSupportInfo();
7520    method public void writeToParcel(android.os.Parcel, int);
7521    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.DataSpecificRegistrationInfo> CREATOR;
7522  }
7523
7524  public final class DisconnectCause {
7525    field public static final int ALREADY_DIALING = 72; // 0x48
7526    field public static final int ANSWERED_ELSEWHERE = 52; // 0x34
7527    field public static final int BUSY = 4; // 0x4
7528    field public static final int CALLING_DISABLED = 74; // 0x4a
7529    field public static final int CALL_BARRED = 20; // 0x14
7530    field public static final int CALL_PULLED = 51; // 0x33
7531    field public static final int CANT_CALL_WHILE_RINGING = 73; // 0x49
7532    field public static final int CDMA_ACCESS_BLOCKED = 35; // 0x23
7533    field public static final int CDMA_ACCESS_FAILURE = 32; // 0x20
7534    field public static final int CDMA_ALREADY_ACTIVATED = 49; // 0x31
7535    field public static final int CDMA_DROP = 27; // 0x1b
7536    field public static final int CDMA_INTERCEPT = 28; // 0x1c
7537    field public static final int CDMA_LOCKED_UNTIL_POWER_CYCLE = 26; // 0x1a
7538    field public static final int CDMA_NOT_EMERGENCY = 34; // 0x22
7539    field public static final int CDMA_PREEMPTED = 33; // 0x21
7540    field public static final int CDMA_REORDER = 29; // 0x1d
7541    field public static final int CDMA_RETRY_ORDER = 31; // 0x1f
7542    field public static final int CDMA_SO_REJECT = 30; // 0x1e
7543    field public static final int CONGESTION = 5; // 0x5
7544    field public static final int CS_RESTRICTED = 22; // 0x16
7545    field public static final int CS_RESTRICTED_EMERGENCY = 24; // 0x18
7546    field public static final int CS_RESTRICTED_NORMAL = 23; // 0x17
7547    field public static final int DATA_DISABLED = 54; // 0x36
7548    field public static final int DATA_LIMIT_REACHED = 55; // 0x37
7549    field public static final int DIALED_CALL_FORWARDING_WHILE_ROAMING = 57; // 0x39
7550    field public static final int DIALED_MMI = 39; // 0x27
7551    field public static final int DIAL_LOW_BATTERY = 62; // 0x3e
7552    field public static final int DIAL_MODIFIED_TO_DIAL = 48; // 0x30
7553    field public static final int DIAL_MODIFIED_TO_DIAL_VIDEO = 66; // 0x42
7554    field public static final int DIAL_MODIFIED_TO_SS = 47; // 0x2f
7555    field public static final int DIAL_MODIFIED_TO_USSD = 46; // 0x2e
7556    field public static final int DIAL_VIDEO_MODIFIED_TO_DIAL = 69; // 0x45
7557    field public static final int DIAL_VIDEO_MODIFIED_TO_DIAL_VIDEO = 70; // 0x46
7558    field public static final int DIAL_VIDEO_MODIFIED_TO_SS = 67; // 0x43
7559    field public static final int DIAL_VIDEO_MODIFIED_TO_USSD = 68; // 0x44
7560    field public static final int EMERGENCY_PERM_FAILURE = 64; // 0x40
7561    field public static final int EMERGENCY_TEMP_FAILURE = 63; // 0x3f
7562    field public static final int ERROR_UNSPECIFIED = 36; // 0x24
7563    field public static final int FDN_BLOCKED = 21; // 0x15
7564    field public static final int ICC_ERROR = 19; // 0x13
7565    field public static final int IMEI_NOT_ACCEPTED = 58; // 0x3a
7566    field public static final int IMS_ACCESS_BLOCKED = 60; // 0x3c
7567    field public static final int IMS_MERGED_SUCCESSFULLY = 45; // 0x2d
7568    field public static final int IMS_SIP_ALTERNATE_EMERGENCY_CALL = 71; // 0x47
7569    field public static final int INCOMING_MISSED = 1; // 0x1
7570    field public static final int INCOMING_REJECTED = 16; // 0x10
7571    field public static final int INVALID_CREDENTIALS = 10; // 0xa
7572    field public static final int INVALID_NUMBER = 7; // 0x7
7573    field public static final int LIMIT_EXCEEDED = 15; // 0xf
7574    field public static final int LOCAL = 3; // 0x3
7575    field public static final int LOST_SIGNAL = 14; // 0xe
7576    field public static final int LOW_BATTERY = 61; // 0x3d
7577    field public static final int MAXIMUM_NUMBER_OF_CALLS_REACHED = 53; // 0x35
7578    field public static final int MMI = 6; // 0x6
7579    field public static final int NORMAL = 2; // 0x2
7580    field public static final int NORMAL_UNSPECIFIED = 65; // 0x41
7581    field public static final int NOT_DISCONNECTED = 0; // 0x0
7582    field public static final int NOT_VALID = -1; // 0xffffffff
7583    field public static final int NO_PHONE_NUMBER_SUPPLIED = 38; // 0x26
7584    field public static final int NUMBER_UNREACHABLE = 8; // 0x8
7585    field public static final int OTASP_PROVISIONING_IN_PROCESS = 76; // 0x4c
7586    field public static final int OUTGOING_CANCELED = 44; // 0x2c
7587    field public static final int OUTGOING_FAILURE = 43; // 0x2b
7588    field public static final int OUT_OF_NETWORK = 11; // 0xb
7589    field public static final int OUT_OF_SERVICE = 18; // 0x12
7590    field public static final int POWER_OFF = 17; // 0x11
7591    field public static final int SERVER_ERROR = 12; // 0xc
7592    field public static final int SERVER_UNREACHABLE = 9; // 0x9
7593    field public static final int TIMED_OUT = 13; // 0xd
7594    field public static final int TOO_MANY_ONGOING_CALLS = 75; // 0x4b
7595    field public static final int UNOBTAINABLE_NUMBER = 25; // 0x19
7596    field public static final int VIDEO_CALL_NOT_ALLOWED_WHILE_TTY_ENABLED = 50; // 0x32
7597    field public static final int VOICEMAIL_NUMBER_MISSING = 40; // 0x28
7598    field public static final int WIFI_LOST = 59; // 0x3b
7599  }
7600
7601  public final class LteVopsSupportInfo implements android.os.Parcelable {
7602    ctor public LteVopsSupportInfo(int, int);
7603    method public int describeContents();
7604    method public int getEmcBearerSupport();
7605    method public int getVopsSupport();
7606    method public void writeToParcel(android.os.Parcel, int);
7607    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.LteVopsSupportInfo> CREATOR;
7608    field public static final int LTE_STATUS_NOT_AVAILABLE = 1; // 0x1
7609    field public static final int LTE_STATUS_NOT_SUPPORTED = 3; // 0x3
7610    field public static final int LTE_STATUS_SUPPORTED = 2; // 0x2
7611  }
7612
7613  public class MbmsDownloadSession implements java.lang.AutoCloseable {
7614    field public static final String MBMS_DOWNLOAD_SERVICE_ACTION = "android.telephony.action.EmbmsDownload";
7615  }
7616
7617  public class MbmsGroupCallSession implements java.lang.AutoCloseable {
7618    field public static final String MBMS_GROUP_CALL_SERVICE_ACTION = "android.telephony.action.EmbmsGroupCall";
7619  }
7620
7621  public class MbmsStreamingSession implements java.lang.AutoCloseable {
7622    field public static final String MBMS_STREAMING_SERVICE_ACTION = "android.telephony.action.EmbmsStreaming";
7623  }
7624
7625  public final class NetworkRegistrationInfo implements android.os.Parcelable {
7626    method public int describeContents();
7627    method public int getAccessNetworkTechnology();
7628    method @NonNull public java.util.List<java.lang.Integer> getAvailableServices();
7629    method @Nullable public android.telephony.CellIdentity getCellIdentity();
7630    method @Nullable public android.telephony.DataSpecificRegistrationInfo getDataSpecificInfo();
7631    method public int getDomain();
7632    method public int getRegistrationState();
7633    method public int getRejectCause();
7634    method public int getRoamingType();
7635    method public int getTransportType();
7636    method public boolean isEmergencyEnabled();
7637    method public boolean isRoaming();
7638    method public void writeToParcel(android.os.Parcel, int);
7639    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.NetworkRegistrationInfo> CREATOR;
7640    field public static final int DOMAIN_CS = 1; // 0x1
7641    field public static final int DOMAIN_PS = 2; // 0x2
7642    field public static final int REGISTRATION_STATE_DENIED = 3; // 0x3
7643    field public static final int REGISTRATION_STATE_HOME = 1; // 0x1
7644    field public static final int REGISTRATION_STATE_NOT_REGISTERED_OR_SEARCHING = 0; // 0x0
7645    field public static final int REGISTRATION_STATE_NOT_REGISTERED_SEARCHING = 2; // 0x2
7646    field public static final int REGISTRATION_STATE_ROAMING = 5; // 0x5
7647    field public static final int REGISTRATION_STATE_UNKNOWN = 4; // 0x4
7648    field public static final int SERVICE_TYPE_DATA = 2; // 0x2
7649    field public static final int SERVICE_TYPE_EMERGENCY = 5; // 0x5
7650    field public static final int SERVICE_TYPE_SMS = 3; // 0x3
7651    field public static final int SERVICE_TYPE_UNKNOWN = 0; // 0x0
7652    field public static final int SERVICE_TYPE_VIDEO = 4; // 0x4
7653    field public static final int SERVICE_TYPE_VOICE = 1; // 0x1
7654  }
7655
7656  public static final class NetworkRegistrationInfo.Builder {
7657    ctor public NetworkRegistrationInfo.Builder();
7658    method @NonNull public android.telephony.NetworkRegistrationInfo build();
7659    method @NonNull public android.telephony.NetworkRegistrationInfo.Builder setAccessNetworkTechnology(int);
7660    method @NonNull public android.telephony.NetworkRegistrationInfo.Builder setAvailableServices(@NonNull java.util.List<java.lang.Integer>);
7661    method @NonNull public android.telephony.NetworkRegistrationInfo.Builder setCellIdentity(@Nullable android.telephony.CellIdentity);
7662    method @NonNull public android.telephony.NetworkRegistrationInfo.Builder setDomain(int);
7663    method @NonNull public android.telephony.NetworkRegistrationInfo.Builder setEmergencyOnly(boolean);
7664    method @NonNull public android.telephony.NetworkRegistrationInfo.Builder setRegistrationState(int);
7665    method @NonNull public android.telephony.NetworkRegistrationInfo.Builder setRejectCause(int);
7666    method @NonNull public android.telephony.NetworkRegistrationInfo.Builder setTransportType(int);
7667  }
7668
7669  public abstract class NetworkService extends android.app.Service {
7670    ctor public NetworkService();
7671    method public android.os.IBinder onBind(android.content.Intent);
7672    method @Nullable public abstract android.telephony.NetworkService.NetworkServiceProvider onCreateNetworkServiceProvider(int);
7673    field public static final String SERVICE_INTERFACE = "android.telephony.NetworkService";
7674  }
7675
7676  public abstract class NetworkService.NetworkServiceProvider implements java.lang.AutoCloseable {
7677    ctor public NetworkService.NetworkServiceProvider(int);
7678    method public abstract void close();
7679    method public final int getSlotIndex();
7680    method public final void notifyNetworkRegistrationInfoChanged();
7681    method public void requestNetworkRegistrationInfo(int, @NonNull android.telephony.NetworkServiceCallback);
7682  }
7683
7684  public class NetworkServiceCallback {
7685    method public void onRequestNetworkRegistrationInfoComplete(int, @Nullable android.telephony.NetworkRegistrationInfo);
7686    field public static final int RESULT_ERROR_BUSY = 3; // 0x3
7687    field public static final int RESULT_ERROR_FAILED = 5; // 0x5
7688    field public static final int RESULT_ERROR_ILLEGAL_STATE = 4; // 0x4
7689    field public static final int RESULT_ERROR_INVALID_ARG = 2; // 0x2
7690    field public static final int RESULT_ERROR_UNSUPPORTED = 1; // 0x1
7691    field public static final int RESULT_SUCCESS = 0; // 0x0
7692  }
7693
7694  public interface NumberVerificationCallback {
7695    method public default void onCallReceived(@NonNull String);
7696    method public default void onVerificationFailed(int);
7697    field public static final int REASON_CONCURRENT_REQUESTS = 4; // 0x4
7698    field public static final int REASON_IN_ECBM = 5; // 0x5
7699    field public static final int REASON_IN_EMERGENCY_CALL = 6; // 0x6
7700    field public static final int REASON_NETWORK_NOT_AVAILABLE = 2; // 0x2
7701    field public static final int REASON_TIMED_OUT = 1; // 0x1
7702    field public static final int REASON_TOO_MANY_CALLS = 3; // 0x3
7703    field public static final int REASON_UNSPECIFIED = 0; // 0x0
7704  }
7705
7706  public final class PhoneNumberRange implements android.os.Parcelable {
7707    ctor public PhoneNumberRange(@NonNull String, @NonNull String, @NonNull String, @NonNull String);
7708    method public int describeContents();
7709    method public boolean matches(@NonNull String);
7710    method public void writeToParcel(android.os.Parcel, int);
7711    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.PhoneNumberRange> CREATOR;
7712  }
7713
7714  public class PhoneStateListener {
7715    method public void onCallAttributesChanged(@NonNull android.telephony.CallAttributes);
7716    method @RequiresPermission("android.permission.READ_PRECISE_PHONE_STATE") public void onCallDisconnectCauseChanged(int, int);
7717    method @RequiresPermission("android.permission.READ_PRECISE_PHONE_STATE") public void onImsCallDisconnectCauseChanged(@NonNull android.telephony.ims.ImsReasonInfo);
7718    method @RequiresPermission("android.permission.READ_PRECISE_PHONE_STATE") public void onPreciseCallStateChanged(@NonNull android.telephony.PreciseCallState);
7719    method @RequiresPermission("android.permission.READ_PRECISE_PHONE_STATE") public void onPreciseDataConnectionStateChanged(@NonNull android.telephony.PreciseDataConnectionState);
7720    method public void onRadioPowerStateChanged(int);
7721    method public void onSrvccStateChanged(int);
7722    method public void onVoiceActivationStateChanged(int);
7723    field public static final int LISTEN_CALL_ATTRIBUTES_CHANGED = 67108864; // 0x4000000
7724    field @RequiresPermission("android.permission.READ_PRECISE_PHONE_STATE") public static final int LISTEN_CALL_DISCONNECT_CAUSES = 33554432; // 0x2000000
7725    field @RequiresPermission("android.permission.READ_PRECISE_PHONE_STATE") public static final int LISTEN_IMS_CALL_DISCONNECT_CAUSES = 134217728; // 0x8000000
7726    field @RequiresPermission("android.permission.READ_PRECISE_PHONE_STATE") public static final int LISTEN_PRECISE_CALL_STATE = 2048; // 0x800
7727    field @RequiresPermission("android.permission.READ_PRECISE_PHONE_STATE") public static final int LISTEN_PRECISE_DATA_CONNECTION_STATE = 4096; // 0x1000
7728    field public static final int LISTEN_RADIO_POWER_STATE_CHANGED = 8388608; // 0x800000
7729    field @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public static final int LISTEN_SRVCC_STATE_CHANGED = 16384; // 0x4000
7730    field public static final int LISTEN_VOICE_ACTIVATION_STATE = 131072; // 0x20000
7731  }
7732
7733  public final class PreciseCallState implements android.os.Parcelable {
7734    method public int describeContents();
7735    method public int getBackgroundCallState();
7736    method public int getForegroundCallState();
7737    method public int getRingingCallState();
7738    method public void writeToParcel(android.os.Parcel, int);
7739    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.PreciseCallState> CREATOR;
7740    field public static final int PRECISE_CALL_STATE_ACTIVE = 1; // 0x1
7741    field public static final int PRECISE_CALL_STATE_ALERTING = 4; // 0x4
7742    field public static final int PRECISE_CALL_STATE_DIALING = 3; // 0x3
7743    field public static final int PRECISE_CALL_STATE_DISCONNECTED = 7; // 0x7
7744    field public static final int PRECISE_CALL_STATE_DISCONNECTING = 8; // 0x8
7745    field public static final int PRECISE_CALL_STATE_HOLDING = 2; // 0x2
7746    field public static final int PRECISE_CALL_STATE_IDLE = 0; // 0x0
7747    field public static final int PRECISE_CALL_STATE_INCOMING = 5; // 0x5
7748    field public static final int PRECISE_CALL_STATE_NOT_VALID = -1; // 0xffffffff
7749    field public static final int PRECISE_CALL_STATE_WAITING = 6; // 0x6
7750  }
7751
7752  public final class PreciseDataConnectionState implements android.os.Parcelable {
7753    method public int describeContents();
7754    method @Nullable public String getDataConnectionApn();
7755    method public int getDataConnectionApnTypeBitMask();
7756    method public int getDataConnectionFailCause();
7757    method public int getDataConnectionState();
7758    method public void writeToParcel(android.os.Parcel, int);
7759    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.PreciseDataConnectionState> CREATOR;
7760  }
7761
7762  public final class PreciseDisconnectCause {
7763    field public static final int ACCESS_CLASS_BLOCKED = 260; // 0x104
7764    field public static final int ACCESS_INFORMATION_DISCARDED = 43; // 0x2b
7765    field public static final int ACM_LIMIT_EXCEEDED = 68; // 0x44
7766    field public static final int BEARER_CAPABILITY_NOT_AUTHORIZED = 57; // 0x39
7767    field public static final int BEARER_NOT_AVAIL = 58; // 0x3a
7768    field public static final int BEARER_SERVICE_NOT_IMPLEMENTED = 65; // 0x41
7769    field public static final int BUSY = 17; // 0x11
7770    field public static final int CALL_BARRED = 240; // 0xf0
7771    field public static final int CALL_REJECTED = 21; // 0x15
7772    field public static final int CDMA_ACCESS_BLOCKED = 1009; // 0x3f1
7773    field public static final int CDMA_ACCESS_FAILURE = 1006; // 0x3ee
7774    field public static final int CDMA_DROP = 1001; // 0x3e9
7775    field public static final int CDMA_INTERCEPT = 1002; // 0x3ea
7776    field public static final int CDMA_LOCKED_UNTIL_POWER_CYCLE = 1000; // 0x3e8
7777    field public static final int CDMA_NOT_EMERGENCY = 1008; // 0x3f0
7778    field public static final int CDMA_PREEMPTED = 1007; // 0x3ef
7779    field public static final int CDMA_REORDER = 1003; // 0x3eb
7780    field public static final int CDMA_RETRY_ORDER = 1005; // 0x3ed
7781    field public static final int CDMA_SO_REJECT = 1004; // 0x3ec
7782    field public static final int CHANNEL_NOT_AVAIL = 44; // 0x2c
7783    field public static final int CHANNEL_UNACCEPTABLE = 6; // 0x6
7784    field public static final int CONDITIONAL_IE_ERROR = 100; // 0x64
7785    field public static final int DESTINATION_OUT_OF_ORDER = 27; // 0x1b
7786    field public static final int ERROR_UNSPECIFIED = 65535; // 0xffff
7787    field public static final int FACILITY_REJECTED = 29; // 0x1d
7788    field public static final int FDN_BLOCKED = 241; // 0xf1
7789    field public static final int IMEI_NOT_ACCEPTED = 243; // 0xf3
7790    field public static final int IMSI_UNKNOWN_IN_VLR = 242; // 0xf2
7791    field public static final int INCOMING_CALLS_BARRED_WITHIN_CUG = 55; // 0x37
7792    field public static final int INCOMPATIBLE_DESTINATION = 88; // 0x58
7793    field public static final int INFORMATION_ELEMENT_NON_EXISTENT = 99; // 0x63
7794    field public static final int INTERWORKING_UNSPECIFIED = 127; // 0x7f
7795    field public static final int INVALID_MANDATORY_INFORMATION = 96; // 0x60
7796    field public static final int INVALID_NUMBER_FORMAT = 28; // 0x1c
7797    field public static final int INVALID_TRANSACTION_IDENTIFIER = 81; // 0x51
7798    field public static final int MESSAGE_NOT_COMPATIBLE_WITH_PROTOCOL_STATE = 101; // 0x65
7799    field public static final int MESSAGE_TYPE_NON_IMPLEMENTED = 97; // 0x61
7800    field public static final int MESSAGE_TYPE_NOT_COMPATIBLE_WITH_PROTOCOL_STATE = 98; // 0x62
7801    field public static final int NETWORK_DETACH = 261; // 0x105
7802    field public static final int NETWORK_OUT_OF_ORDER = 38; // 0x26
7803    field public static final int NETWORK_REJECT = 252; // 0xfc
7804    field public static final int NETWORK_RESP_TIMEOUT = 251; // 0xfb
7805    field public static final int NORMAL = 16; // 0x10
7806    field public static final int NORMAL_UNSPECIFIED = 31; // 0x1f
7807    field public static final int NOT_VALID = -1; // 0xffffffff
7808    field public static final int NO_ANSWER_FROM_USER = 19; // 0x13
7809    field public static final int NO_CIRCUIT_AVAIL = 34; // 0x22
7810    field public static final int NO_DISCONNECT_CAUSE_AVAILABLE = 0; // 0x0
7811    field public static final int NO_ROUTE_TO_DESTINATION = 3; // 0x3
7812    field public static final int NO_USER_RESPONDING = 18; // 0x12
7813    field public static final int NO_VALID_SIM = 249; // 0xf9
7814    field public static final int NUMBER_CHANGED = 22; // 0x16
7815    field public static final int OEM_CAUSE_1 = 61441; // 0xf001
7816    field public static final int OEM_CAUSE_10 = 61450; // 0xf00a
7817    field public static final int OEM_CAUSE_11 = 61451; // 0xf00b
7818    field public static final int OEM_CAUSE_12 = 61452; // 0xf00c
7819    field public static final int OEM_CAUSE_13 = 61453; // 0xf00d
7820    field public static final int OEM_CAUSE_14 = 61454; // 0xf00e
7821    field public static final int OEM_CAUSE_15 = 61455; // 0xf00f
7822    field public static final int OEM_CAUSE_2 = 61442; // 0xf002
7823    field public static final int OEM_CAUSE_3 = 61443; // 0xf003
7824    field public static final int OEM_CAUSE_4 = 61444; // 0xf004
7825    field public static final int OEM_CAUSE_5 = 61445; // 0xf005
7826    field public static final int OEM_CAUSE_6 = 61446; // 0xf006
7827    field public static final int OEM_CAUSE_7 = 61447; // 0xf007
7828    field public static final int OEM_CAUSE_8 = 61448; // 0xf008
7829    field public static final int OEM_CAUSE_9 = 61449; // 0xf009
7830    field public static final int ONLY_DIGITAL_INFORMATION_BEARER_AVAILABLE = 70; // 0x46
7831    field public static final int OPERATOR_DETERMINED_BARRING = 8; // 0x8
7832    field public static final int OUT_OF_SRV = 248; // 0xf8
7833    field public static final int PREEMPTION = 25; // 0x19
7834    field public static final int PROTOCOL_ERROR_UNSPECIFIED = 111; // 0x6f
7835    field public static final int QOS_NOT_AVAIL = 49; // 0x31
7836    field public static final int RADIO_ACCESS_FAILURE = 253; // 0xfd
7837    field public static final int RADIO_INTERNAL_ERROR = 250; // 0xfa
7838    field public static final int RADIO_LINK_FAILURE = 254; // 0xfe
7839    field public static final int RADIO_LINK_LOST = 255; // 0xff
7840    field public static final int RADIO_OFF = 247; // 0xf7
7841    field public static final int RADIO_RELEASE_ABNORMAL = 259; // 0x103
7842    field public static final int RADIO_RELEASE_NORMAL = 258; // 0x102
7843    field public static final int RADIO_SETUP_FAILURE = 257; // 0x101
7844    field public static final int RADIO_UPLINK_FAILURE = 256; // 0x100
7845    field public static final int RECOVERY_ON_TIMER_EXPIRED = 102; // 0x66
7846    field public static final int REQUESTED_FACILITY_NOT_IMPLEMENTED = 69; // 0x45
7847    field public static final int REQUESTED_FACILITY_NOT_SUBSCRIBED = 50; // 0x32
7848    field public static final int RESOURCES_UNAVAILABLE_OR_UNSPECIFIED = 47; // 0x2f
7849    field public static final int SEMANTICALLY_INCORRECT_MESSAGE = 95; // 0x5f
7850    field public static final int SERVICE_OPTION_NOT_AVAILABLE = 63; // 0x3f
7851    field public static final int SERVICE_OR_OPTION_NOT_IMPLEMENTED = 79; // 0x4f
7852    field public static final int STATUS_ENQUIRY = 30; // 0x1e
7853    field public static final int SWITCHING_CONGESTION = 42; // 0x2a
7854    field public static final int TEMPORARY_FAILURE = 41; // 0x29
7855    field public static final int UNOBTAINABLE_NUMBER = 1; // 0x1
7856    field public static final int USER_NOT_MEMBER_OF_CUG = 87; // 0x57
7857  }
7858
7859  public class ServiceState implements android.os.Parcelable {
7860    method @Nullable public android.telephony.NetworkRegistrationInfo getNetworkRegistrationInfo(int, int);
7861    method @NonNull public java.util.List<android.telephony.NetworkRegistrationInfo> getNetworkRegistrationInfoList();
7862    method @NonNull public java.util.List<android.telephony.NetworkRegistrationInfo> getNetworkRegistrationInfoListForDomain(int);
7863    method @NonNull public java.util.List<android.telephony.NetworkRegistrationInfo> getNetworkRegistrationInfoListForTransportType(int);
7864    field public static final int ROAMING_TYPE_DOMESTIC = 2; // 0x2
7865    field public static final int ROAMING_TYPE_INTERNATIONAL = 3; // 0x3
7866    field public static final int ROAMING_TYPE_NOT_ROAMING = 0; // 0x0
7867    field public static final int ROAMING_TYPE_UNKNOWN = 1; // 0x1
7868  }
7869
7870  public final class SmsManager {
7871    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>);
7872    field public static final int RESULT_CANCELLED = 23; // 0x17
7873    field public static final int RESULT_ENCODING_ERROR = 18; // 0x12
7874    field public static final int RESULT_ERROR_FDN_CHECK_FAILURE = 6; // 0x6
7875    field public static final int RESULT_ERROR_NONE = 0; // 0x0
7876    field public static final int RESULT_INTERNAL_ERROR = 21; // 0x15
7877    field public static final int RESULT_INVALID_ARGUMENTS = 11; // 0xb
7878    field public static final int RESULT_INVALID_SMSC_ADDRESS = 19; // 0x13
7879    field public static final int RESULT_INVALID_SMS_FORMAT = 14; // 0xe
7880    field public static final int RESULT_INVALID_STATE = 12; // 0xc
7881    field public static final int RESULT_MODEM_ERROR = 16; // 0x10
7882    field public static final int RESULT_NETWORK_ERROR = 17; // 0x11
7883    field public static final int RESULT_NETWORK_REJECT = 10; // 0xa
7884    field public static final int RESULT_NO_MEMORY = 13; // 0xd
7885    field public static final int RESULT_NO_RESOURCES = 22; // 0x16
7886    field public static final int RESULT_OPERATION_NOT_ALLOWED = 20; // 0x14
7887    field public static final int RESULT_RADIO_NOT_AVAILABLE = 9; // 0x9
7888    field public static final int RESULT_REQUEST_NOT_SUPPORTED = 24; // 0x18
7889    field public static final int RESULT_SYSTEM_ERROR = 15; // 0xf
7890  }
7891
7892  public class SubscriptionInfo implements android.os.Parcelable {
7893    method @Nullable public java.util.List<android.telephony.UiccAccessRule> getAccessRules();
7894    method public int getProfileClass();
7895  }
7896
7897  public class SubscriptionManager {
7898    method public java.util.List<android.telephony.SubscriptionInfo> getAvailableSubscriptionInfoList();
7899    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getEnabledSubscriptionId(int);
7900    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isSubscriptionEnabled(int);
7901    method public void requestEmbeddedSubscriptionInfoListRefresh();
7902    method public void requestEmbeddedSubscriptionInfoListRefresh(int);
7903    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setDefaultDataSubId(int);
7904    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setDefaultSmsSubId(int);
7905    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>);
7906    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean setSubscriptionEnabled(int, boolean);
7907    field @NonNull public static final android.net.Uri ADVANCED_CALLING_ENABLED_CONTENT_URI;
7908    field public static final int PROFILE_CLASS_DEFAULT = -1; // 0xffffffff
7909    field public static final int PROFILE_CLASS_OPERATIONAL = 2; // 0x2
7910    field public static final int PROFILE_CLASS_PROVISIONING = 1; // 0x1
7911    field public static final int PROFILE_CLASS_TESTING = 0; // 0x0
7912    field public static final int PROFILE_CLASS_UNSET = -1; // 0xffffffff
7913    field @NonNull public static final android.net.Uri VT_ENABLED_CONTENT_URI;
7914    field @NonNull public static final android.net.Uri WFC_ENABLED_CONTENT_URI;
7915    field @NonNull public static final android.net.Uri WFC_MODE_CONTENT_URI;
7916    field @NonNull public static final android.net.Uri WFC_ROAMING_ENABLED_CONTENT_URI;
7917    field @NonNull public static final android.net.Uri WFC_ROAMING_MODE_CONTENT_URI;
7918  }
7919
7920  public static class SubscriptionPlan.Builder {
7921    method @Deprecated public static android.telephony.SubscriptionPlan.Builder createRecurringDaily(java.time.ZonedDateTime);
7922    method @Deprecated public static android.telephony.SubscriptionPlan.Builder createRecurringMonthly(java.time.ZonedDateTime);
7923    method @Deprecated public static android.telephony.SubscriptionPlan.Builder createRecurringWeekly(java.time.ZonedDateTime);
7924  }
7925
7926  public final class TelephonyHistogram implements android.os.Parcelable {
7927    ctor public TelephonyHistogram(int, int, int);
7928    ctor public TelephonyHistogram(android.telephony.TelephonyHistogram);
7929    ctor public TelephonyHistogram(android.os.Parcel);
7930    method public void addTimeTaken(int);
7931    method public int describeContents();
7932    method public int getAverageTime();
7933    method public int getBucketCount();
7934    method public int[] getBucketCounters();
7935    method public int[] getBucketEndPoints();
7936    method public int getCategory();
7937    method public int getId();
7938    method public int getMaxTime();
7939    method public int getMinTime();
7940    method public int getSampleCount();
7941    method public void writeToParcel(android.os.Parcel, int);
7942    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.TelephonyHistogram> CREATOR;
7943    field public static final int TELEPHONY_CATEGORY_RIL = 1; // 0x1
7944  }
7945
7946  public class TelephonyManager {
7947    method @Deprecated @RequiresPermission(android.Manifest.permission.CALL_PHONE) public void call(String, String);
7948    method public int checkCarrierPrivilegesForPackage(String);
7949    method public int checkCarrierPrivilegesForPackageAnyPhone(String);
7950    method public void dial(String);
7951    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean disableDataConnectivity();
7952    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean enableDataConnectivity();
7953    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean enableModemForSlot(int, boolean);
7954    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void enableVideoCalling(boolean);
7955    method @Nullable @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public String getAidForAppType(int);
7956    method @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public java.util.List<android.service.carrier.CarrierIdentifier> getAllowedCarriers(int);
7957    method public java.util.List<java.lang.String> getCarrierPackageNamesForIntent(android.content.Intent);
7958    method public java.util.List<java.lang.String> getCarrierPackageNamesForIntentAndPhone(android.content.Intent, int);
7959    method @Nullable @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public android.telephony.CarrierRestrictionRules getCarrierRestrictionRules();
7960    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public String getCdmaMdn();
7961    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public String getCdmaMdn(int);
7962    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public String getCdmaMin();
7963    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public String getCdmaMin(int);
7964    method public String getCdmaPrlVersion();
7965    method public int getCurrentPhoneType();
7966    method public int getCurrentPhoneType(int);
7967    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getDataActivationState();
7968    method @Deprecated public boolean getDataEnabled();
7969    method @Deprecated public boolean getDataEnabled(int);
7970    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean getEmergencyCallbackMode();
7971    method @Nullable @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public String getIsimDomain();
7972    method @Nullable @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public String getIsimIst();
7973    method @NonNull @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public java.util.Map<java.lang.Integer,java.lang.Integer> getLogicalToPhysicalSlotMapping();
7974    method public static long getMaxNumberVerificationTimeoutMillis();
7975    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public long getPreferredNetworkTypeBitmask();
7976    method @RequiresPermission(anyOf={android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE, android.Manifest.permission.READ_PHONE_STATE}) public int getRadioPowerState();
7977    method public int getSimApplicationState();
7978    method public int getSimCardState();
7979    method @Nullable @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public java.util.Locale getSimLocale();
7980    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public long getSupportedRadioAccessFamily();
7981    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public java.util.List<android.telephony.TelephonyHistogram> getTelephonyHistograms();
7982    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public android.telephony.UiccSlotInfo[] getUiccSlotsInfo();
7983    method @Nullable public android.os.Bundle getVisualVoicemailSettings();
7984    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getVoiceActivationState();
7985    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean handlePinMmi(String);
7986    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean handlePinMmiForSubscriber(int, String);
7987    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean iccCloseLogicalChannelBySlot(int, int);
7988    method @Nullable @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public android.telephony.IccOpenLogicalChannelResponse iccOpenLogicalChannelBySlot(int, @Nullable String, int);
7989    method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public String iccTransmitApduBasicChannelBySlot(int, int, int, int, int, int, @Nullable String);
7990    method @Nullable @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public String iccTransmitApduLogicalChannelBySlot(int, int, int, int, int, int, int, @Nullable String);
7991    method public boolean isDataConnectivityPossible();
7992    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isEmergencyAssistanceEnabled();
7993    method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE, android.Manifest.permission.READ_PHONE_STATE}) public boolean isIdle();
7994    method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE, android.Manifest.permission.READ_PHONE_STATE}) public boolean isOffhook();
7995    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isPotentialEmergencyNumber(@NonNull String);
7996    method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE, android.Manifest.permission.READ_PHONE_STATE}) public boolean isRadioOn();
7997    method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE, android.Manifest.permission.READ_PHONE_STATE}) public boolean isRinging();
7998    method @RequiresPermission(anyOf={android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE, android.Manifest.permission.READ_PHONE_STATE}) public boolean isVideoCallingEnabled();
7999    method @Deprecated @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public boolean isVisualVoicemailEnabled(android.telecom.PhoneAccountHandle);
8000    method public boolean needsOtaServiceProvisioning();
8001    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean rebootRadio();
8002    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);
8003    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);
8004    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean resetRadioConfig();
8005    method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public int setAllowedCarriers(int, java.util.List<android.service.carrier.CarrierIdentifier>);
8006    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setCarrierDataEnabled(boolean);
8007    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public int setCarrierRestrictionRules(@NonNull android.telephony.CarrierRestrictionRules);
8008    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setDataActivationState(int);
8009    method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setDataEnabled(int, boolean);
8010    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setDataRoamingEnabled(boolean);
8011    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setMultiSimCarrierRestriction(boolean);
8012    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean setPreferredNetworkTypeBitmask(long);
8013    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean setRadio(boolean);
8014    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean setRadioPower(boolean);
8015    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setSimPowerState(int);
8016    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setSimPowerStateForSlot(int, int);
8017    method @Deprecated public void setVisualVoicemailEnabled(android.telecom.PhoneAccountHandle, boolean);
8018    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setVoiceActivationState(int);
8019    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean supplyPin(String);
8020    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public int[] supplyPinReportResult(String);
8021    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean supplyPuk(String, String);
8022    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public int[] supplyPukReportResult(String, String);
8023    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean switchSlots(int[]);
8024    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void toggleRadioOnOff();
8025    method public void updateServiceLocation();
8026    field @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public static final String ACTION_ANOMALY_REPORTED = "android.telephony.action.ANOMALY_REPORTED";
8027    field public static final String ACTION_SIM_APPLICATION_STATE_CHANGED = "android.telephony.action.SIM_APPLICATION_STATE_CHANGED";
8028    field public static final String ACTION_SIM_CARD_STATE_CHANGED = "android.telephony.action.SIM_CARD_STATE_CHANGED";
8029    field public static final String ACTION_SIM_SLOT_STATUS_CHANGED = "android.telephony.action.SIM_SLOT_STATUS_CHANGED";
8030    field public static final int CARRIER_PRIVILEGE_STATUS_ERROR_LOADING_RULES = -2; // 0xfffffffe
8031    field public static final int CARRIER_PRIVILEGE_STATUS_HAS_ACCESS = 1; // 0x1
8032    field public static final int CARRIER_PRIVILEGE_STATUS_NO_ACCESS = 0; // 0x0
8033    field public static final int CARRIER_PRIVILEGE_STATUS_RULES_NOT_LOADED = -1; // 0xffffffff
8034    field public static final String EXTRA_ANOMALY_DESCRIPTION = "android.telephony.extra.ANOMALY_DESCRIPTION";
8035    field public static final String EXTRA_ANOMALY_ID = "android.telephony.extra.ANOMALY_ID";
8036    field public static final String EXTRA_SIM_STATE = "android.telephony.extra.SIM_STATE";
8037    field public static final String EXTRA_VISUAL_VOICEMAIL_ENABLED_BY_USER_BOOL = "android.telephony.extra.VISUAL_VOICEMAIL_ENABLED_BY_USER_BOOL";
8038    field public static final String EXTRA_VOICEMAIL_SCRAMBLED_PIN_STRING = "android.telephony.extra.VOICEMAIL_SCRAMBLED_PIN_STRING";
8039    field public static final long NETWORK_TYPE_BITMASK_1xRTT = 64L; // 0x40L
8040    field public static final long NETWORK_TYPE_BITMASK_CDMA = 8L; // 0x8L
8041    field public static final long NETWORK_TYPE_BITMASK_EDGE = 2L; // 0x2L
8042    field public static final long NETWORK_TYPE_BITMASK_EHRPD = 8192L; // 0x2000L
8043    field public static final long NETWORK_TYPE_BITMASK_EVDO_0 = 16L; // 0x10L
8044    field public static final long NETWORK_TYPE_BITMASK_EVDO_A = 32L; // 0x20L
8045    field public static final long NETWORK_TYPE_BITMASK_EVDO_B = 2048L; // 0x800L
8046    field public static final long NETWORK_TYPE_BITMASK_GPRS = 1L; // 0x1L
8047    field public static final long NETWORK_TYPE_BITMASK_GSM = 32768L; // 0x8000L
8048    field public static final long NETWORK_TYPE_BITMASK_HSDPA = 128L; // 0x80L
8049    field public static final long NETWORK_TYPE_BITMASK_HSPA = 512L; // 0x200L
8050    field public static final long NETWORK_TYPE_BITMASK_HSPAP = 16384L; // 0x4000L
8051    field public static final long NETWORK_TYPE_BITMASK_HSUPA = 256L; // 0x100L
8052    field public static final long NETWORK_TYPE_BITMASK_IWLAN = 131072L; // 0x20000L
8053    field public static final long NETWORK_TYPE_BITMASK_LTE = 4096L; // 0x1000L
8054    field public static final long NETWORK_TYPE_BITMASK_LTE_CA = 262144L; // 0x40000L
8055    field public static final long NETWORK_TYPE_BITMASK_NR = 524288L; // 0x80000L
8056    field public static final long NETWORK_TYPE_BITMASK_TD_SCDMA = 65536L; // 0x10000L
8057    field public static final long NETWORK_TYPE_BITMASK_UMTS = 4L; // 0x4L
8058    field public static final long NETWORK_TYPE_BITMASK_UNKNOWN = 0L; // 0x0L
8059    field public static final int RADIO_POWER_OFF = 0; // 0x0
8060    field public static final int RADIO_POWER_ON = 1; // 0x1
8061    field public static final int RADIO_POWER_UNAVAILABLE = 2; // 0x2
8062    field public static final int SET_CARRIER_RESTRICTION_ERROR = 2; // 0x2
8063    field public static final int SET_CARRIER_RESTRICTION_NOT_SUPPORTED = 1; // 0x1
8064    field public static final int SET_CARRIER_RESTRICTION_SUCCESS = 0; // 0x0
8065    field public static final int SIM_ACTIVATION_STATE_ACTIVATED = 2; // 0x2
8066    field public static final int SIM_ACTIVATION_STATE_ACTIVATING = 1; // 0x1
8067    field public static final int SIM_ACTIVATION_STATE_DEACTIVATED = 3; // 0x3
8068    field public static final int SIM_ACTIVATION_STATE_RESTRICTED = 4; // 0x4
8069    field public static final int SIM_ACTIVATION_STATE_UNKNOWN = 0; // 0x0
8070    field public static final int SIM_STATE_LOADED = 10; // 0xa
8071    field public static final int SIM_STATE_PRESENT = 11; // 0xb
8072    field public static final int SRVCC_STATE_HANDOVER_CANCELED = 3; // 0x3
8073    field public static final int SRVCC_STATE_HANDOVER_COMPLETED = 1; // 0x1
8074    field public static final int SRVCC_STATE_HANDOVER_FAILED = 2; // 0x2
8075    field public static final int SRVCC_STATE_HANDOVER_NONE = -1; // 0xffffffff
8076    field public static final int SRVCC_STATE_HANDOVER_STARTED = 0; // 0x0
8077  }
8078
8079  public final class UiccAccessRule implements android.os.Parcelable {
8080    ctor public UiccAccessRule(byte[], @Nullable String, long);
8081    method public int describeContents();
8082    method public int getCarrierPrivilegeStatus(android.content.pm.PackageInfo);
8083    method public int getCarrierPrivilegeStatus(android.content.pm.Signature, String);
8084    method public String getCertificateHexString();
8085    method @Nullable public String getPackageName();
8086    method public void writeToParcel(android.os.Parcel, int);
8087    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.UiccAccessRule> CREATOR;
8088  }
8089
8090  public class UiccSlotInfo implements android.os.Parcelable {
8091    ctor @Deprecated public UiccSlotInfo(boolean, boolean, String, int, int, boolean);
8092    method public int describeContents();
8093    method public String getCardId();
8094    method public int getCardStateInfo();
8095    method public boolean getIsActive();
8096    method public boolean getIsEuicc();
8097    method public boolean getIsExtendedApduSupported();
8098    method public int getLogicalSlotIdx();
8099    method public boolean isRemovable();
8100    method public void writeToParcel(android.os.Parcel, int);
8101    field public static final int CARD_STATE_INFO_ABSENT = 1; // 0x1
8102    field public static final int CARD_STATE_INFO_ERROR = 3; // 0x3
8103    field public static final int CARD_STATE_INFO_PRESENT = 2; // 0x2
8104    field public static final int CARD_STATE_INFO_RESTRICTED = 4; // 0x4
8105    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.UiccSlotInfo> CREATOR;
8106  }
8107
8108  public abstract class VisualVoicemailService extends android.app.Service {
8109    method public static final void sendVisualVoicemailSms(android.content.Context, android.telecom.PhoneAccountHandle, String, short, String, android.app.PendingIntent);
8110    method public static final void setSmsFilterSettings(android.content.Context, android.telecom.PhoneAccountHandle, android.telephony.VisualVoicemailSmsFilterSettings);
8111  }
8112
8113}
8114
8115package android.telephony.data {
8116
8117  public final class DataCallResponse implements android.os.Parcelable {
8118    method public int describeContents();
8119    method @NonNull public java.util.List<android.net.LinkAddress> getAddresses();
8120    method public int getCause();
8121    method @NonNull public java.util.List<java.net.InetAddress> getDnsAddresses();
8122    method @NonNull public java.util.List<java.net.InetAddress> getGatewayAddresses();
8123    method public int getId();
8124    method @NonNull public String getInterfaceName();
8125    method public int getLinkStatus();
8126    method public int getMtu();
8127    method @NonNull public java.util.List<java.net.InetAddress> getPcscfAddresses();
8128    method public int getProtocolType();
8129    method public int getSuggestedRetryTime();
8130    method public void writeToParcel(android.os.Parcel, int);
8131    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.data.DataCallResponse> CREATOR;
8132    field public static final int LINK_STATUS_ACTIVE = 2; // 0x2
8133    field public static final int LINK_STATUS_DORMANT = 1; // 0x1
8134    field public static final int LINK_STATUS_INACTIVE = 0; // 0x0
8135    field public static final int LINK_STATUS_UNKNOWN = -1; // 0xffffffff
8136  }
8137
8138  public static final class DataCallResponse.Builder {
8139    ctor public DataCallResponse.Builder();
8140    method @NonNull public android.telephony.data.DataCallResponse build();
8141    method @NonNull public android.telephony.data.DataCallResponse.Builder setAddresses(@NonNull java.util.List<android.net.LinkAddress>);
8142    method @NonNull public android.telephony.data.DataCallResponse.Builder setCause(int);
8143    method @NonNull public android.telephony.data.DataCallResponse.Builder setDnsAddresses(@NonNull java.util.List<java.net.InetAddress>);
8144    method @NonNull public android.telephony.data.DataCallResponse.Builder setGatewayAddresses(@NonNull java.util.List<java.net.InetAddress>);
8145    method @NonNull public android.telephony.data.DataCallResponse.Builder setId(int);
8146    method @NonNull public android.telephony.data.DataCallResponse.Builder setInterfaceName(@NonNull String);
8147    method @NonNull public android.telephony.data.DataCallResponse.Builder setLinkStatus(int);
8148    method @NonNull public android.telephony.data.DataCallResponse.Builder setMtu(int);
8149    method @NonNull public android.telephony.data.DataCallResponse.Builder setPcscfAddresses(@NonNull java.util.List<java.net.InetAddress>);
8150    method @NonNull public android.telephony.data.DataCallResponse.Builder setProtocolType(int);
8151    method @NonNull public android.telephony.data.DataCallResponse.Builder setSuggestedRetryTime(int);
8152  }
8153
8154  public final class DataProfile implements android.os.Parcelable {
8155    method public int describeContents();
8156    method @NonNull public String getApn();
8157    method public int getAuthType();
8158    method public int getBearerBitmask();
8159    method public int getMtu();
8160    method @Nullable public String getPassword();
8161    method public int getProfileId();
8162    method public int getProtocolType();
8163    method public int getRoamingProtocolType();
8164    method public int getSupportedApnTypesBitmask();
8165    method public int getType();
8166    method @Nullable public String getUserName();
8167    method public boolean isEnabled();
8168    method public boolean isPersistent();
8169    method public boolean isPreferred();
8170    method public void writeToParcel(android.os.Parcel, int);
8171    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.data.DataProfile> CREATOR;
8172    field public static final int TYPE_3GPP = 1; // 0x1
8173    field public static final int TYPE_3GPP2 = 2; // 0x2
8174    field public static final int TYPE_COMMON = 0; // 0x0
8175  }
8176
8177  public static final class DataProfile.Builder {
8178    ctor public DataProfile.Builder();
8179    method @NonNull public android.telephony.data.DataProfile build();
8180    method @NonNull public android.telephony.data.DataProfile.Builder enable(boolean);
8181    method @NonNull public android.telephony.data.DataProfile.Builder setApn(@NonNull String);
8182    method @NonNull public android.telephony.data.DataProfile.Builder setAuthType(int);
8183    method @NonNull public android.telephony.data.DataProfile.Builder setBearerBitmask(int);
8184    method @NonNull public android.telephony.data.DataProfile.Builder setMtu(int);
8185    method @NonNull public android.telephony.data.DataProfile.Builder setPassword(@NonNull String);
8186    method @NonNull public android.telephony.data.DataProfile.Builder setPersistent(boolean);
8187    method @NonNull public android.telephony.data.DataProfile.Builder setPreferred(boolean);
8188    method @NonNull public android.telephony.data.DataProfile.Builder setProfileId(int);
8189    method @NonNull public android.telephony.data.DataProfile.Builder setProtocolType(int);
8190    method @NonNull public android.telephony.data.DataProfile.Builder setRoamingProtocolType(int);
8191    method @NonNull public android.telephony.data.DataProfile.Builder setSupportedApnTypesBitmask(int);
8192    method @NonNull public android.telephony.data.DataProfile.Builder setType(int);
8193    method @NonNull public android.telephony.data.DataProfile.Builder setUserName(@NonNull String);
8194  }
8195
8196  public abstract class DataService extends android.app.Service {
8197    ctor public DataService();
8198    method public android.os.IBinder onBind(android.content.Intent);
8199    method @Nullable public abstract android.telephony.data.DataService.DataServiceProvider onCreateDataServiceProvider(int);
8200    field public static final int REQUEST_REASON_HANDOVER = 3; // 0x3
8201    field public static final int REQUEST_REASON_NORMAL = 1; // 0x1
8202    field public static final int REQUEST_REASON_SHUTDOWN = 2; // 0x2
8203    field public static final int REQUEST_REASON_UNKNOWN = 0; // 0x0
8204    field public static final String SERVICE_INTERFACE = "android.telephony.data.DataService";
8205  }
8206
8207  public abstract class DataService.DataServiceProvider implements java.lang.AutoCloseable {
8208    ctor public DataService.DataServiceProvider(int);
8209    method public abstract void close();
8210    method public void deactivateDataCall(int, int, @Nullable android.telephony.data.DataServiceCallback);
8211    method public final int getSlotIndex();
8212    method public final void notifyDataCallListChanged(java.util.List<android.telephony.data.DataCallResponse>);
8213    method public void requestDataCallList(@NonNull android.telephony.data.DataServiceCallback);
8214    method public void setDataProfile(@NonNull java.util.List<android.telephony.data.DataProfile>, boolean, @NonNull android.telephony.data.DataServiceCallback);
8215    method public void setInitialAttachApn(@NonNull android.telephony.data.DataProfile, boolean, @NonNull android.telephony.data.DataServiceCallback);
8216    method public void setupDataCall(int, @NonNull android.telephony.data.DataProfile, boolean, boolean, int, @Nullable android.net.LinkProperties, @NonNull android.telephony.data.DataServiceCallback);
8217  }
8218
8219  public class DataServiceCallback {
8220    method public void onDataCallListChanged(@NonNull java.util.List<android.telephony.data.DataCallResponse>);
8221    method public void onDeactivateDataCallComplete(int);
8222    method public void onRequestDataCallListComplete(int, @NonNull java.util.List<android.telephony.data.DataCallResponse>);
8223    method public void onSetDataProfileComplete(int);
8224    method public void onSetInitialAttachApnComplete(int);
8225    method public void onSetupDataCallComplete(int, @Nullable android.telephony.data.DataCallResponse);
8226    field public static final int RESULT_ERROR_BUSY = 3; // 0x3
8227    field public static final int RESULT_ERROR_ILLEGAL_STATE = 4; // 0x4
8228    field public static final int RESULT_ERROR_INVALID_ARG = 2; // 0x2
8229    field public static final int RESULT_ERROR_UNSUPPORTED = 1; // 0x1
8230    field public static final int RESULT_SUCCESS = 0; // 0x0
8231  }
8232
8233  public abstract class QualifiedNetworksService extends android.app.Service {
8234    ctor public QualifiedNetworksService();
8235    method @NonNull public abstract android.telephony.data.QualifiedNetworksService.NetworkAvailabilityProvider onCreateNetworkAvailabilityProvider(int);
8236    field public static final String QUALIFIED_NETWORKS_SERVICE_INTERFACE = "android.telephony.data.QualifiedNetworksService";
8237  }
8238
8239  public abstract class QualifiedNetworksService.NetworkAvailabilityProvider implements java.lang.AutoCloseable {
8240    ctor public QualifiedNetworksService.NetworkAvailabilityProvider(int);
8241    method public abstract void close();
8242    method public final int getSlotIndex();
8243    method public final void updateQualifiedNetworkTypes(int, @NonNull java.util.List<java.lang.Integer>);
8244  }
8245
8246}
8247
8248package android.telephony.euicc {
8249
8250  public final class DownloadableSubscription implements android.os.Parcelable {
8251    method public java.util.List<android.telephony.UiccAccessRule> getAccessRules();
8252    method @Nullable public String getCarrierName();
8253  }
8254
8255  public static final class DownloadableSubscription.Builder {
8256    ctor public DownloadableSubscription.Builder();
8257    ctor public DownloadableSubscription.Builder(android.telephony.euicc.DownloadableSubscription);
8258    method public android.telephony.euicc.DownloadableSubscription build();
8259    method public android.telephony.euicc.DownloadableSubscription.Builder setAccessRules(java.util.List<android.telephony.UiccAccessRule>);
8260    method public android.telephony.euicc.DownloadableSubscription.Builder setCarrierName(String);
8261    method public android.telephony.euicc.DownloadableSubscription.Builder setConfirmationCode(String);
8262    method public android.telephony.euicc.DownloadableSubscription.Builder setEncodedActivationCode(String);
8263  }
8264
8265  public class EuiccCardManager {
8266    method public void authenticateServer(String, String, byte[], byte[], byte[], byte[], java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<byte[]>);
8267    method public void cancelSession(String, byte[], @android.telephony.euicc.EuiccCardManager.CancelReason int, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<byte[]>);
8268    method public void deleteProfile(String, String, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<java.lang.Void>);
8269    method public void disableProfile(String, String, boolean, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<java.lang.Void>);
8270    method public void listNotifications(String, @android.telephony.euicc.EuiccNotification.Event int, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<android.telephony.euicc.EuiccNotification[]>);
8271    method public void loadBoundProfilePackage(String, byte[], java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<byte[]>);
8272    method public void prepareDownload(String, @Nullable byte[], byte[], byte[], byte[], java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<byte[]>);
8273    method public void removeNotificationFromList(String, int, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<java.lang.Void>);
8274    method public void requestAllProfiles(String, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<android.service.euicc.EuiccProfileInfo[]>);
8275    method public void requestDefaultSmdpAddress(String, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<java.lang.String>);
8276    method public void requestEuiccChallenge(String, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<byte[]>);
8277    method public void requestEuiccInfo1(String, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<byte[]>);
8278    method public void requestEuiccInfo2(String, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<byte[]>);
8279    method public void requestProfile(String, String, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<android.service.euicc.EuiccProfileInfo>);
8280    method public void requestRulesAuthTable(String, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<android.telephony.euicc.EuiccRulesAuthTable>);
8281    method public void requestSmdsAddress(String, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<java.lang.String>);
8282    method public void resetMemory(String, @android.telephony.euicc.EuiccCardManager.ResetOption int, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<java.lang.Void>);
8283    method public void retrieveNotification(String, int, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<android.telephony.euicc.EuiccNotification>);
8284    method public void retrieveNotificationList(String, @android.telephony.euicc.EuiccNotification.Event int, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<android.telephony.euicc.EuiccNotification[]>);
8285    method public void setDefaultSmdpAddress(String, String, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<java.lang.Void>);
8286    method public void setNickname(String, String, String, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<java.lang.Void>);
8287    method public void switchToProfile(String, String, boolean, java.util.concurrent.Executor, android.telephony.euicc.EuiccCardManager.ResultCallback<android.service.euicc.EuiccProfileInfo>);
8288    field public static final int CANCEL_REASON_END_USER_REJECTED = 0; // 0x0
8289    field public static final int CANCEL_REASON_POSTPONED = 1; // 0x1
8290    field public static final int CANCEL_REASON_PPR_NOT_ALLOWED = 3; // 0x3
8291    field public static final int CANCEL_REASON_TIMEOUT = 2; // 0x2
8292    field public static final int RESET_OPTION_DELETE_FIELD_LOADED_TEST_PROFILES = 2; // 0x2
8293    field public static final int RESET_OPTION_DELETE_OPERATIONAL_PROFILES = 1; // 0x1
8294    field public static final int RESET_OPTION_RESET_DEFAULT_SMDP_ADDRESS = 4; // 0x4
8295    field public static final int RESULT_CALLER_NOT_ALLOWED = -3; // 0xfffffffd
8296    field public static final int RESULT_EUICC_NOT_FOUND = -2; // 0xfffffffe
8297    field public static final int RESULT_OK = 0; // 0x0
8298    field public static final int RESULT_UNKNOWN_ERROR = -1; // 0xffffffff
8299  }
8300
8301  @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) @IntDef(prefix={"CANCEL_REASON_"}, value={android.telephony.euicc.EuiccCardManager.CANCEL_REASON_END_USER_REJECTED, android.telephony.euicc.EuiccCardManager.CANCEL_REASON_POSTPONED, android.telephony.euicc.EuiccCardManager.CANCEL_REASON_TIMEOUT, android.telephony.euicc.EuiccCardManager.CANCEL_REASON_PPR_NOT_ALLOWED}) public static @interface EuiccCardManager.CancelReason {
8302  }
8303
8304  @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) @IntDef(flag=true, prefix={"RESET_OPTION_"}, value={android.telephony.euicc.EuiccCardManager.RESET_OPTION_DELETE_OPERATIONAL_PROFILES, android.telephony.euicc.EuiccCardManager.RESET_OPTION_DELETE_FIELD_LOADED_TEST_PROFILES, android.telephony.euicc.EuiccCardManager.RESET_OPTION_RESET_DEFAULT_SMDP_ADDRESS}) public static @interface EuiccCardManager.ResetOption {
8305  }
8306
8307  public static interface EuiccCardManager.ResultCallback<T> {
8308    method public void onComplete(int, T);
8309  }
8310
8311  public class EuiccManager {
8312    method @RequiresPermission(android.Manifest.permission.WRITE_EMBEDDED_SUBSCRIPTIONS) public void continueOperation(android.content.Intent, android.os.Bundle);
8313    method @RequiresPermission(android.Manifest.permission.WRITE_EMBEDDED_SUBSCRIPTIONS) public void eraseSubscriptions(android.app.PendingIntent);
8314    method @RequiresPermission(android.Manifest.permission.WRITE_EMBEDDED_SUBSCRIPTIONS) public void getDefaultDownloadableSubscriptionList(android.app.PendingIntent);
8315    method @RequiresPermission(android.Manifest.permission.WRITE_EMBEDDED_SUBSCRIPTIONS) public void getDownloadableSubscriptionMetadata(android.telephony.euicc.DownloadableSubscription, android.app.PendingIntent);
8316    method @RequiresPermission(android.Manifest.permission.WRITE_EMBEDDED_SUBSCRIPTIONS) public int getOtaStatus();
8317    field public static final String ACTION_DELETE_SUBSCRIPTION_PRIVILEGED = "android.telephony.euicc.action.DELETE_SUBSCRIPTION_PRIVILEGED";
8318    field @RequiresPermission(android.Manifest.permission.WRITE_EMBEDDED_SUBSCRIPTIONS) public static final String ACTION_OTA_STATUS_CHANGED = "android.telephony.euicc.action.OTA_STATUS_CHANGED";
8319    field public static final String ACTION_PROVISION_EMBEDDED_SUBSCRIPTION = "android.telephony.euicc.action.PROVISION_EMBEDDED_SUBSCRIPTION";
8320    field public static final String ACTION_RENAME_SUBSCRIPTION_PRIVILEGED = "android.telephony.euicc.action.RENAME_SUBSCRIPTION_PRIVILEGED";
8321    field public static final String ACTION_TOGGLE_SUBSCRIPTION_PRIVILEGED = "android.telephony.euicc.action.TOGGLE_SUBSCRIPTION_PRIVILEGED";
8322    field public static final int EUICC_ACTIVATION_TYPE_ACCOUNT_REQUIRED = 4; // 0x4
8323    field public static final int EUICC_ACTIVATION_TYPE_BACKUP = 2; // 0x2
8324    field public static final int EUICC_ACTIVATION_TYPE_DEFAULT = 1; // 0x1
8325    field public static final int EUICC_ACTIVATION_TYPE_TRANSFER = 3; // 0x3
8326    field public static final int EUICC_OTA_FAILED = 2; // 0x2
8327    field public static final int EUICC_OTA_IN_PROGRESS = 1; // 0x1
8328    field public static final int EUICC_OTA_NOT_NEEDED = 4; // 0x4
8329    field public static final int EUICC_OTA_STATUS_UNAVAILABLE = 5; // 0x5
8330    field public static final int EUICC_OTA_SUCCEEDED = 3; // 0x3
8331    field public static final String EXTRA_ACTIVATION_TYPE = "android.telephony.euicc.extra.ACTIVATION_TYPE";
8332    field public static final String EXTRA_EMBEDDED_SUBSCRIPTION_DOWNLOADABLE_SUBSCRIPTIONS = "android.telephony.euicc.extra.EMBEDDED_SUBSCRIPTION_DOWNLOADABLE_SUBSCRIPTIONS";
8333    field public static final String EXTRA_ENABLE_SUBSCRIPTION = "android.telephony.euicc.extra.ENABLE_SUBSCRIPTION";
8334    field public static final String EXTRA_FORCE_PROVISION = "android.telephony.euicc.extra.FORCE_PROVISION";
8335    field public static final String EXTRA_FROM_SUBSCRIPTION_ID = "android.telephony.euicc.extra.FROM_SUBSCRIPTION_ID";
8336    field public static final String EXTRA_SUBSCRIPTION_ID = "android.telephony.euicc.extra.SUBSCRIPTION_ID";
8337    field public static final String EXTRA_SUBSCRIPTION_NICKNAME = "android.telephony.euicc.extra.SUBSCRIPTION_NICKNAME";
8338  }
8339
8340  @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 {
8341  }
8342
8343  public final class EuiccNotification implements android.os.Parcelable {
8344    ctor public EuiccNotification(int, String, @android.telephony.euicc.EuiccNotification.Event int, @Nullable byte[]);
8345    method public int describeContents();
8346    method @Nullable public byte[] getData();
8347    method @android.telephony.euicc.EuiccNotification.Event public int getEvent();
8348    method public int getSeq();
8349    method public String getTargetAddr();
8350    method public void writeToParcel(android.os.Parcel, int);
8351    field @android.telephony.euicc.EuiccNotification.Event public static final int ALL_EVENTS = 15; // 0xf
8352    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.euicc.EuiccNotification> CREATOR;
8353    field public static final int EVENT_DELETE = 8; // 0x8
8354    field public static final int EVENT_DISABLE = 4; // 0x4
8355    field public static final int EVENT_ENABLE = 2; // 0x2
8356    field public static final int EVENT_INSTALL = 1; // 0x1
8357  }
8358
8359  @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) @IntDef(flag=true, prefix={"EVENT_"}, value={android.telephony.euicc.EuiccNotification.EVENT_INSTALL, android.telephony.euicc.EuiccNotification.EVENT_ENABLE, android.telephony.euicc.EuiccNotification.EVENT_DISABLE, android.telephony.euicc.EuiccNotification.EVENT_DELETE}) public static @interface EuiccNotification.Event {
8360  }
8361
8362  public final class EuiccRulesAuthTable implements android.os.Parcelable {
8363    method public int describeContents();
8364    method public int findIndex(@android.service.euicc.EuiccProfileInfo.PolicyRule int, android.service.carrier.CarrierIdentifier);
8365    method public boolean hasPolicyRuleFlag(int, @android.telephony.euicc.EuiccRulesAuthTable.PolicyRuleFlag int);
8366    method public void writeToParcel(android.os.Parcel, int);
8367    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.euicc.EuiccRulesAuthTable> CREATOR;
8368    field public static final int POLICY_RULE_FLAG_CONSENT_REQUIRED = 1; // 0x1
8369  }
8370
8371  public static final class EuiccRulesAuthTable.Builder {
8372    ctor public EuiccRulesAuthTable.Builder(int);
8373    method public android.telephony.euicc.EuiccRulesAuthTable.Builder add(int, java.util.List<android.service.carrier.CarrierIdentifier>, int);
8374    method public android.telephony.euicc.EuiccRulesAuthTable build();
8375  }
8376
8377  @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) @IntDef(flag=true, prefix={"POLICY_RULE_FLAG_"}, value={android.telephony.euicc.EuiccRulesAuthTable.POLICY_RULE_FLAG_CONSENT_REQUIRED}) public static @interface EuiccRulesAuthTable.PolicyRuleFlag {
8378  }
8379
8380}
8381
8382package android.telephony.ims {
8383
8384  public final class ImsCallForwardInfo implements android.os.Parcelable {
8385    ctor public ImsCallForwardInfo(int, int, int, int, @NonNull String, int);
8386    method public int describeContents();
8387    method public int getCondition();
8388    method public String getNumber();
8389    method public int getServiceClass();
8390    method public int getStatus();
8391    method public int getTimeSeconds();
8392    method public int getToA();
8393    method public void writeToParcel(android.os.Parcel, int);
8394    field public static final int CDIV_CF_REASON_ALL = 4; // 0x4
8395    field public static final int CDIV_CF_REASON_ALL_CONDITIONAL = 5; // 0x5
8396    field public static final int CDIV_CF_REASON_BUSY = 1; // 0x1
8397    field public static final int CDIV_CF_REASON_NOT_LOGGED_IN = 6; // 0x6
8398    field public static final int CDIV_CF_REASON_NOT_REACHABLE = 3; // 0x3
8399    field public static final int CDIV_CF_REASON_NO_REPLY = 2; // 0x2
8400    field public static final int CDIV_CF_REASON_UNCONDITIONAL = 0; // 0x0
8401    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.ImsCallForwardInfo> CREATOR;
8402    field public static final int STATUS_ACTIVE = 1; // 0x1
8403    field public static final int STATUS_NOT_ACTIVE = 0; // 0x0
8404    field public static final int TYPE_OF_ADDRESS_INTERNATIONAL = 145; // 0x91
8405    field public static final int TYPE_OF_ADDRESS_UNKNOWN = 129; // 0x81
8406  }
8407
8408  public final class ImsCallProfile implements android.os.Parcelable {
8409    ctor public ImsCallProfile();
8410    ctor public ImsCallProfile(int, int);
8411    ctor public ImsCallProfile(int, int, android.os.Bundle, android.telephony.ims.ImsStreamMediaProfile);
8412    method public int describeContents();
8413    method public String getCallExtra(String);
8414    method public String getCallExtra(String, String);
8415    method public boolean getCallExtraBoolean(String);
8416    method public boolean getCallExtraBoolean(String, boolean);
8417    method public int getCallExtraInt(String);
8418    method public int getCallExtraInt(String, int);
8419    method public android.os.Bundle getCallExtras();
8420    method public int getCallType();
8421    method public static int getCallTypeFromVideoState(int);
8422    method public int getEmergencyCallRouting();
8423    method public int getEmergencyServiceCategories();
8424    method @NonNull public java.util.List<java.lang.String> getEmergencyUrns();
8425    method public android.telephony.ims.ImsStreamMediaProfile getMediaProfile();
8426    method public int getRestrictCause();
8427    method public int getServiceType();
8428    method public static int getVideoStateFromCallType(int);
8429    method public static int getVideoStateFromImsCallProfile(android.telephony.ims.ImsCallProfile);
8430    method public boolean hasKnownUserIntentEmergency();
8431    method public boolean isEmergencyCallTesting();
8432    method public boolean isVideoCall();
8433    method public boolean isVideoPaused();
8434    method public static int presentationToOir(int);
8435    method public void setCallExtra(String, String);
8436    method public void setCallExtraBoolean(String, boolean);
8437    method public void setCallExtraInt(String, int);
8438    method public void setCallRestrictCause(int);
8439    method public void setEmergencyCallRouting(int);
8440    method public void setEmergencyCallTesting(boolean);
8441    method public void setEmergencyServiceCategories(int);
8442    method public void setEmergencyUrns(@NonNull java.util.List<java.lang.String>);
8443    method public void setHasKnownUserIntentEmergency(boolean);
8444    method public void updateCallExtras(android.telephony.ims.ImsCallProfile);
8445    method public void updateCallType(android.telephony.ims.ImsCallProfile);
8446    method public void updateMediaProfile(android.telephony.ims.ImsCallProfile);
8447    method public void writeToParcel(android.os.Parcel, int);
8448    field public static final int CALL_RESTRICT_CAUSE_DISABLED = 2; // 0x2
8449    field public static final int CALL_RESTRICT_CAUSE_HD = 3; // 0x3
8450    field public static final int CALL_RESTRICT_CAUSE_NONE = 0; // 0x0
8451    field public static final int CALL_RESTRICT_CAUSE_RAT = 1; // 0x1
8452    field public static final int CALL_TYPE_VIDEO_N_VOICE = 3; // 0x3
8453    field public static final int CALL_TYPE_VOICE = 2; // 0x2
8454    field public static final int CALL_TYPE_VOICE_N_VIDEO = 1; // 0x1
8455    field public static final int CALL_TYPE_VS = 8; // 0x8
8456    field public static final int CALL_TYPE_VS_RX = 10; // 0xa
8457    field public static final int CALL_TYPE_VS_TX = 9; // 0x9
8458    field public static final int CALL_TYPE_VT = 4; // 0x4
8459    field public static final int CALL_TYPE_VT_NODIR = 7; // 0x7
8460    field public static final int CALL_TYPE_VT_RX = 6; // 0x6
8461    field public static final int CALL_TYPE_VT_TX = 5; // 0x5
8462    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.ImsCallProfile> CREATOR;
8463    field public static final int DIALSTRING_NORMAL = 0; // 0x0
8464    field public static final int DIALSTRING_SS_CONF = 1; // 0x1
8465    field public static final int DIALSTRING_USSD = 2; // 0x2
8466    field public static final String EXTRA_ADDITIONAL_CALL_INFO = "AdditionalCallInfo";
8467    field public static final String EXTRA_ADDITIONAL_SIP_INVITE_FIELDS = "android.telephony.ims.extra.ADDITIONAL_SIP_INVITE_FIELDS";
8468    field public static final String EXTRA_CALL_RAT_TYPE = "CallRadioTech";
8469    field public static final String EXTRA_CHILD_NUMBER = "ChildNum";
8470    field public static final String EXTRA_CNA = "cna";
8471    field public static final String EXTRA_CNAP = "cnap";
8472    field public static final String EXTRA_CODEC = "Codec";
8473    field public static final String EXTRA_DIALSTRING = "dialstring";
8474    field public static final String EXTRA_DISPLAY_TEXT = "DisplayText";
8475    field public static final String EXTRA_EMERGENCY_CALL = "e_call";
8476    field public static final String EXTRA_IS_CALL_PULL = "CallPull";
8477    field public static final String EXTRA_OI = "oi";
8478    field public static final String EXTRA_OIR = "oir";
8479    field public static final String EXTRA_REMOTE_URI = "remote_uri";
8480    field public static final String EXTRA_USSD = "ussd";
8481    field public static final int OIR_DEFAULT = 0; // 0x0
8482    field public static final int OIR_PRESENTATION_NOT_RESTRICTED = 2; // 0x2
8483    field public static final int OIR_PRESENTATION_PAYPHONE = 4; // 0x4
8484    field public static final int OIR_PRESENTATION_RESTRICTED = 1; // 0x1
8485    field public static final int OIR_PRESENTATION_UNKNOWN = 3; // 0x3
8486    field public static final int SERVICE_TYPE_EMERGENCY = 2; // 0x2
8487    field public static final int SERVICE_TYPE_NONE = 0; // 0x0
8488    field public static final int SERVICE_TYPE_NORMAL = 1; // 0x1
8489  }
8490
8491  public class ImsCallSessionListener {
8492    method public void callQualityChanged(@NonNull android.telephony.CallQuality);
8493    method public void callSessionConferenceExtendFailed(android.telephony.ims.ImsReasonInfo);
8494    method public void callSessionConferenceExtendReceived(android.telephony.ims.stub.ImsCallSessionImplBase, android.telephony.ims.ImsCallProfile);
8495    method public void callSessionConferenceExtended(android.telephony.ims.stub.ImsCallSessionImplBase, android.telephony.ims.ImsCallProfile);
8496    method public void callSessionConferenceStateUpdated(android.telephony.ims.ImsConferenceState);
8497    method public void callSessionHandover(int, int, android.telephony.ims.ImsReasonInfo);
8498    method public void callSessionHandoverFailed(int, int, android.telephony.ims.ImsReasonInfo);
8499    method public void callSessionHeld(android.telephony.ims.ImsCallProfile);
8500    method public void callSessionHoldFailed(android.telephony.ims.ImsReasonInfo);
8501    method public void callSessionHoldReceived(android.telephony.ims.ImsCallProfile);
8502    method public void callSessionInitiated(android.telephony.ims.ImsCallProfile);
8503    method public void callSessionInitiatedFailed(android.telephony.ims.ImsReasonInfo);
8504    method public void callSessionInviteParticipantsRequestDelivered();
8505    method public void callSessionInviteParticipantsRequestFailed(android.telephony.ims.ImsReasonInfo);
8506    method public void callSessionMayHandover(int, int);
8507    method public void callSessionMergeComplete(android.telephony.ims.stub.ImsCallSessionImplBase);
8508    method public void callSessionMergeFailed(android.telephony.ims.ImsReasonInfo);
8509    method public void callSessionMergeStarted(android.telephony.ims.stub.ImsCallSessionImplBase, android.telephony.ims.ImsCallProfile);
8510    method public void callSessionMultipartyStateChanged(boolean);
8511    method public void callSessionProgressing(android.telephony.ims.ImsStreamMediaProfile);
8512    method public void callSessionRemoveParticipantsRequestDelivered();
8513    method public void callSessionRemoveParticipantsRequestFailed(android.telephony.ims.ImsReasonInfo);
8514    method public void callSessionResumeFailed(android.telephony.ims.ImsReasonInfo);
8515    method public void callSessionResumeReceived(android.telephony.ims.ImsCallProfile);
8516    method public void callSessionResumed(android.telephony.ims.ImsCallProfile);
8517    method public void callSessionRttAudioIndicatorChanged(@NonNull android.telephony.ims.ImsStreamMediaProfile);
8518    method public void callSessionRttMessageReceived(String);
8519    method public void callSessionRttModifyRequestReceived(android.telephony.ims.ImsCallProfile);
8520    method public void callSessionRttModifyResponseReceived(int);
8521    method public void callSessionSuppServiceReceived(android.telephony.ims.ImsSuppServiceNotification);
8522    method public void callSessionTerminated(android.telephony.ims.ImsReasonInfo);
8523    method public void callSessionTtyModeReceived(int);
8524    method public void callSessionUpdateFailed(android.telephony.ims.ImsReasonInfo);
8525    method public void callSessionUpdateReceived(android.telephony.ims.ImsCallProfile);
8526    method public void callSessionUpdated(android.telephony.ims.ImsCallProfile);
8527    method public void callSessionUssdMessageReceived(int, String);
8528  }
8529
8530  public final class ImsConferenceState implements android.os.Parcelable {
8531    method public int describeContents();
8532    method public static int getConnectionStateForStatus(String);
8533    method public void writeToParcel(android.os.Parcel, int);
8534    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.ImsConferenceState> CREATOR;
8535    field public static final String DISPLAY_TEXT = "display-text";
8536    field public static final String ENDPOINT = "endpoint";
8537    field public static final String SIP_STATUS_CODE = "sipstatuscode";
8538    field public static final String STATUS = "status";
8539    field public static final String STATUS_ALERTING = "alerting";
8540    field public static final String STATUS_CONNECTED = "connected";
8541    field public static final String STATUS_CONNECT_FAIL = "connect-fail";
8542    field public static final String STATUS_DIALING_IN = "dialing-in";
8543    field public static final String STATUS_DIALING_OUT = "dialing-out";
8544    field public static final String STATUS_DISCONNECTED = "disconnected";
8545    field public static final String STATUS_DISCONNECTING = "disconnecting";
8546    field public static final String STATUS_MUTED_VIA_FOCUS = "muted-via-focus";
8547    field public static final String STATUS_ON_HOLD = "on-hold";
8548    field public static final String STATUS_PENDING = "pending";
8549    field public static final String STATUS_SEND_ONLY = "sendonly";
8550    field public static final String STATUS_SEND_RECV = "sendrecv";
8551    field public static final String USER = "user";
8552    field public final java.util.HashMap<java.lang.String,android.os.Bundle> mParticipants;
8553  }
8554
8555  public final class ImsException extends java.lang.Exception {
8556    ctor public ImsException(@Nullable String);
8557    ctor public ImsException(@Nullable String, int);
8558    ctor public ImsException(@Nullable String, int, @Nullable Throwable);
8559    method public int getCode();
8560    field public static final int CODE_ERROR_SERVICE_UNAVAILABLE = 1; // 0x1
8561    field public static final int CODE_ERROR_UNSPECIFIED = 0; // 0x0
8562    field public static final int CODE_ERROR_UNSUPPORTED_OPERATION = 2; // 0x2
8563  }
8564
8565  public final class ImsExternalCallState implements android.os.Parcelable {
8566    ctor public ImsExternalCallState(@NonNull String, @NonNull android.net.Uri, @Nullable android.net.Uri, boolean, int, int, boolean);
8567    method public int describeContents();
8568    method @NonNull public android.net.Uri getAddress();
8569    method public int getCallId();
8570    method public int getCallState();
8571    method public int getCallType();
8572    method @Nullable public android.net.Uri getLocalAddress();
8573    method public boolean isCallHeld();
8574    method public boolean isCallPullable();
8575    method public void writeToParcel(android.os.Parcel, int);
8576    field public static final int CALL_STATE_CONFIRMED = 1; // 0x1
8577    field public static final int CALL_STATE_TERMINATED = 2; // 0x2
8578    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.ImsExternalCallState> CREATOR;
8579  }
8580
8581  public class ImsMmTelManager {
8582    method @NonNull public static android.telephony.ims.ImsMmTelManager createForSubscriptionId(int);
8583    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getVoWiFiModeSetting();
8584    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getVoWiFiRoamingModeSetting();
8585    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isAdvancedCallingSettingEnabled();
8586    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isAvailable(@android.telephony.ims.feature.MmTelFeature.MmTelCapabilities.MmTelCapability int, int);
8587    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isCapable(@android.telephony.ims.feature.MmTelFeature.MmTelCapabilities.MmTelCapability int, int);
8588    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isVoWiFiRoamingSettingEnabled();
8589    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isVoWiFiSettingEnabled();
8590    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isVtSettingEnabled();
8591    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void registerImsRegistrationCallback(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.ims.ImsMmTelManager.RegistrationCallback) throws android.telephony.ims.ImsException;
8592    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void registerMmTelCapabilityCallback(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.ims.ImsMmTelManager.CapabilityCallback) throws android.telephony.ims.ImsException;
8593    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setAdvancedCallingSettingEnabled(boolean);
8594    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setRttCapabilitySetting(boolean);
8595    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setVoWiFiModeSetting(int);
8596    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setVoWiFiNonPersistent(boolean, int);
8597    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setVoWiFiRoamingModeSetting(int);
8598    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setVoWiFiRoamingSettingEnabled(boolean);
8599    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setVoWiFiSettingEnabled(boolean);
8600    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setVtSettingEnabled(boolean);
8601    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void unregisterImsRegistrationCallback(@NonNull android.telephony.ims.ImsMmTelManager.RegistrationCallback);
8602    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void unregisterMmTelCapabilityCallback(@NonNull android.telephony.ims.ImsMmTelManager.CapabilityCallback);
8603    field public static final int WIFI_MODE_CELLULAR_PREFERRED = 1; // 0x1
8604    field public static final int WIFI_MODE_WIFI_ONLY = 0; // 0x0
8605    field public static final int WIFI_MODE_WIFI_PREFERRED = 2; // 0x2
8606  }
8607
8608  public static class ImsMmTelManager.CapabilityCallback {
8609    ctor public ImsMmTelManager.CapabilityCallback();
8610    method public void onCapabilitiesStatusChanged(@NonNull android.telephony.ims.feature.MmTelFeature.MmTelCapabilities);
8611  }
8612
8613  public static class ImsMmTelManager.RegistrationCallback {
8614    ctor public ImsMmTelManager.RegistrationCallback();
8615    method public void onRegistered(int);
8616    method public void onRegistering(int);
8617    method public void onTechnologyChangeFailed(int, @Nullable android.telephony.ims.ImsReasonInfo);
8618    method public void onUnregistered(@Nullable android.telephony.ims.ImsReasonInfo);
8619  }
8620
8621  public final class ImsReasonInfo implements android.os.Parcelable {
8622    ctor public ImsReasonInfo(int, int, String);
8623    method public int describeContents();
8624    method public int getCode();
8625    method public int getExtraCode();
8626    method public String getExtraMessage();
8627    method public void writeToParcel(android.os.Parcel, int);
8628    field public static final int CODE_ACCESS_CLASS_BLOCKED = 1512; // 0x5e8
8629    field public static final int CODE_ANSWERED_ELSEWHERE = 1014; // 0x3f6
8630    field public static final int CODE_BLACKLISTED_CALL_ID = 506; // 0x1fa
8631    field public static final int CODE_CALL_BARRED = 240; // 0xf0
8632    field public static final int CODE_CALL_DROP_IWLAN_TO_LTE_UNAVAILABLE = 1100; // 0x44c
8633    field public static final int CODE_CALL_END_CAUSE_CALL_PULL = 1016; // 0x3f8
8634    field public static final int CODE_CALL_PULL_OUT_OF_SYNC = 1015; // 0x3f7
8635    field public static final int CODE_DATA_DISABLED = 1406; // 0x57e
8636    field public static final int CODE_DATA_LIMIT_REACHED = 1405; // 0x57d
8637    field public static final int CODE_DIAL_MODIFIED_TO_DIAL = 246; // 0xf6
8638    field public static final int CODE_DIAL_MODIFIED_TO_DIAL_VIDEO = 247; // 0xf7
8639    field public static final int CODE_DIAL_MODIFIED_TO_SS = 245; // 0xf5
8640    field public static final int CODE_DIAL_MODIFIED_TO_USSD = 244; // 0xf4
8641    field public static final int CODE_DIAL_VIDEO_MODIFIED_TO_DIAL = 248; // 0xf8
8642    field public static final int CODE_DIAL_VIDEO_MODIFIED_TO_DIAL_VIDEO = 249; // 0xf9
8643    field public static final int CODE_DIAL_VIDEO_MODIFIED_TO_SS = 250; // 0xfa
8644    field public static final int CODE_DIAL_VIDEO_MODIFIED_TO_USSD = 251; // 0xfb
8645    field public static final int CODE_ECBM_NOT_SUPPORTED = 901; // 0x385
8646    field public static final int CODE_EMERGENCY_PERM_FAILURE = 364; // 0x16c
8647    field public static final int CODE_EMERGENCY_TEMP_FAILURE = 363; // 0x16b
8648    field public static final int CODE_EPDG_TUNNEL_ESTABLISH_FAILURE = 1400; // 0x578
8649    field public static final int CODE_EPDG_TUNNEL_LOST_CONNECTION = 1402; // 0x57a
8650    field public static final int CODE_EPDG_TUNNEL_REKEY_FAILURE = 1401; // 0x579
8651    field public static final int CODE_FDN_BLOCKED = 241; // 0xf1
8652    field public static final int CODE_IKEV2_AUTH_FAILURE = 1408; // 0x580
8653    field public static final int CODE_IMEI_NOT_ACCEPTED = 243; // 0xf3
8654    field public static final int CODE_IWLAN_DPD_FAILURE = 1300; // 0x514
8655    field public static final int CODE_LOCAL_CALL_BUSY = 142; // 0x8e
8656    field public static final int CODE_LOCAL_CALL_CS_RETRY_REQUIRED = 146; // 0x92
8657    field public static final int CODE_LOCAL_CALL_DECLINE = 143; // 0x8f
8658    field public static final int CODE_LOCAL_CALL_EXCEEDED = 141; // 0x8d
8659    field public static final int CODE_LOCAL_CALL_RESOURCE_RESERVATION_FAILED = 145; // 0x91
8660    field public static final int CODE_LOCAL_CALL_TERMINATED = 148; // 0x94
8661    field public static final int CODE_LOCAL_CALL_VCC_ON_PROGRESSING = 144; // 0x90
8662    field public static final int CODE_LOCAL_CALL_VOLTE_RETRY_REQUIRED = 147; // 0x93
8663    field public static final int CODE_LOCAL_ENDED_BY_CONFERENCE_MERGE = 108; // 0x6c
8664    field public static final int CODE_LOCAL_HO_NOT_FEASIBLE = 149; // 0x95
8665    field public static final int CODE_LOCAL_ILLEGAL_ARGUMENT = 101; // 0x65
8666    field public static final int CODE_LOCAL_ILLEGAL_STATE = 102; // 0x66
8667    field public static final int CODE_LOCAL_IMS_SERVICE_DOWN = 106; // 0x6a
8668    field public static final int CODE_LOCAL_INTERNAL_ERROR = 103; // 0x67
8669    field public static final int CODE_LOCAL_LOW_BATTERY = 112; // 0x70
8670    field public static final int CODE_LOCAL_NETWORK_IP_CHANGED = 124; // 0x7c
8671    field public static final int CODE_LOCAL_NETWORK_NO_LTE_COVERAGE = 122; // 0x7a
8672    field public static final int CODE_LOCAL_NETWORK_NO_SERVICE = 121; // 0x79
8673    field public static final int CODE_LOCAL_NETWORK_ROAMING = 123; // 0x7b
8674    field public static final int CODE_LOCAL_NOT_REGISTERED = 132; // 0x84
8675    field public static final int CODE_LOCAL_NO_PENDING_CALL = 107; // 0x6b
8676    field public static final int CODE_LOCAL_POWER_OFF = 111; // 0x6f
8677    field public static final int CODE_LOCAL_SERVICE_UNAVAILABLE = 131; // 0x83
8678    field public static final int CODE_LOW_BATTERY = 505; // 0x1f9
8679    field public static final int CODE_MAXIMUM_NUMBER_OF_CALLS_REACHED = 1403; // 0x57b
8680    field public static final int CODE_MEDIA_INIT_FAILED = 401; // 0x191
8681    field public static final int CODE_MEDIA_NOT_ACCEPTABLE = 403; // 0x193
8682    field public static final int CODE_MEDIA_NO_DATA = 402; // 0x192
8683    field public static final int CODE_MEDIA_UNSPECIFIED = 404; // 0x194
8684    field public static final int CODE_MULTIENDPOINT_NOT_SUPPORTED = 902; // 0x386
8685    field public static final int CODE_NETWORK_DETACH = 1513; // 0x5e9
8686    field public static final int CODE_NETWORK_REJECT = 1504; // 0x5e0
8687    field public static final int CODE_NETWORK_RESP_TIMEOUT = 1503; // 0x5df
8688    field public static final int CODE_NO_CSFB_IN_CS_ROAM = 1516; // 0x5ec
8689    field public static final int CODE_NO_VALID_SIM = 1501; // 0x5dd
8690    field public static final int CODE_OEM_CAUSE_1 = 61441; // 0xf001
8691    field public static final int CODE_OEM_CAUSE_10 = 61450; // 0xf00a
8692    field public static final int CODE_OEM_CAUSE_11 = 61451; // 0xf00b
8693    field public static final int CODE_OEM_CAUSE_12 = 61452; // 0xf00c
8694    field public static final int CODE_OEM_CAUSE_13 = 61453; // 0xf00d
8695    field public static final int CODE_OEM_CAUSE_14 = 61454; // 0xf00e
8696    field public static final int CODE_OEM_CAUSE_15 = 61455; // 0xf00f
8697    field public static final int CODE_OEM_CAUSE_2 = 61442; // 0xf002
8698    field public static final int CODE_OEM_CAUSE_3 = 61443; // 0xf003
8699    field public static final int CODE_OEM_CAUSE_4 = 61444; // 0xf004
8700    field public static final int CODE_OEM_CAUSE_5 = 61445; // 0xf005
8701    field public static final int CODE_OEM_CAUSE_6 = 61446; // 0xf006
8702    field public static final int CODE_OEM_CAUSE_7 = 61447; // 0xf007
8703    field public static final int CODE_OEM_CAUSE_8 = 61448; // 0xf008
8704    field public static final int CODE_OEM_CAUSE_9 = 61449; // 0xf009
8705    field public static final int CODE_RADIO_ACCESS_FAILURE = 1505; // 0x5e1
8706    field public static final int CODE_RADIO_INTERNAL_ERROR = 1502; // 0x5de
8707    field public static final int CODE_RADIO_LINK_FAILURE = 1506; // 0x5e2
8708    field public static final int CODE_RADIO_LINK_LOST = 1507; // 0x5e3
8709    field public static final int CODE_RADIO_OFF = 1500; // 0x5dc
8710    field public static final int CODE_RADIO_RELEASE_ABNORMAL = 1511; // 0x5e7
8711    field public static final int CODE_RADIO_RELEASE_NORMAL = 1510; // 0x5e6
8712    field public static final int CODE_RADIO_SETUP_FAILURE = 1509; // 0x5e5
8713    field public static final int CODE_RADIO_UPLINK_FAILURE = 1508; // 0x5e4
8714    field public static final int CODE_REGISTRATION_ERROR = 1000; // 0x3e8
8715    field public static final int CODE_REJECTED_ELSEWHERE = 1017; // 0x3f9
8716    field public static final int CODE_REJECT_1X_COLLISION = 1603; // 0x643
8717    field public static final int CODE_REJECT_CALL_ON_OTHER_SUB = 1602; // 0x642
8718    field public static final int CODE_REJECT_CALL_TYPE_NOT_ALLOWED = 1605; // 0x645
8719    field public static final int CODE_REJECT_CONFERENCE_TTY_NOT_ALLOWED = 1617; // 0x651
8720    field public static final int CODE_REJECT_INTERNAL_ERROR = 1612; // 0x64c
8721    field public static final int CODE_REJECT_MAX_CALL_LIMIT_REACHED = 1608; // 0x648
8722    field public static final int CODE_REJECT_ONGOING_CALL_SETUP = 1607; // 0x647
8723    field public static final int CODE_REJECT_ONGOING_CALL_TRANSFER = 1611; // 0x64b
8724    field public static final int CODE_REJECT_ONGOING_CALL_UPGRADE = 1616; // 0x650
8725    field public static final int CODE_REJECT_ONGOING_CALL_WAITING_DISABLED = 1601; // 0x641
8726    field public static final int CODE_REJECT_ONGOING_CONFERENCE_CALL = 1618; // 0x652
8727    field public static final int CODE_REJECT_ONGOING_CS_CALL = 1621; // 0x655
8728    field public static final int CODE_REJECT_ONGOING_E911_CALL = 1606; // 0x646
8729    field public static final int CODE_REJECT_ONGOING_ENCRYPTED_CALL = 1620; // 0x654
8730    field public static final int CODE_REJECT_ONGOING_HANDOVER = 1614; // 0x64e
8731    field public static final int CODE_REJECT_QOS_FAILURE = 1613; // 0x64d
8732    field public static final int CODE_REJECT_SERVICE_NOT_REGISTERED = 1604; // 0x644
8733    field public static final int CODE_REJECT_UNKNOWN = 1600; // 0x640
8734    field public static final int CODE_REJECT_UNSUPPORTED_SDP_HEADERS = 1610; // 0x64a
8735    field public static final int CODE_REJECT_UNSUPPORTED_SIP_HEADERS = 1609; // 0x649
8736    field public static final int CODE_REJECT_VT_AVPF_NOT_ALLOWED = 1619; // 0x653
8737    field public static final int CODE_REJECT_VT_TTY_NOT_ALLOWED = 1615; // 0x64f
8738    field public static final int CODE_REMOTE_CALL_DECLINE = 1404; // 0x57c
8739    field public static final int CODE_SESSION_MODIFICATION_FAILED = 1517; // 0x5ed
8740    field public static final int CODE_SIP_ALTERNATE_EMERGENCY_CALL = 1514; // 0x5ea
8741    field public static final int CODE_SIP_AMBIGUOUS = 376; // 0x178
8742    field public static final int CODE_SIP_BAD_ADDRESS = 337; // 0x151
8743    field public static final int CODE_SIP_BAD_REQUEST = 331; // 0x14b
8744    field public static final int CODE_SIP_BUSY = 338; // 0x152
8745    field public static final int CODE_SIP_CALL_OR_TRANS_DOES_NOT_EXIST = 372; // 0x174
8746    field public static final int CODE_SIP_CLIENT_ERROR = 342; // 0x156
8747    field public static final int CODE_SIP_EXTENSION_REQUIRED = 370; // 0x172
8748    field public static final int CODE_SIP_FORBIDDEN = 332; // 0x14c
8749    field public static final int CODE_SIP_GLOBAL_ERROR = 362; // 0x16a
8750    field public static final int CODE_SIP_INTERVAL_TOO_BRIEF = 371; // 0x173
8751    field public static final int CODE_SIP_LOOP_DETECTED = 373; // 0x175
8752    field public static final int CODE_SIP_METHOD_NOT_ALLOWED = 366; // 0x16e
8753    field public static final int CODE_SIP_NOT_ACCEPTABLE = 340; // 0x154
8754    field public static final int CODE_SIP_NOT_FOUND = 333; // 0x14d
8755    field public static final int CODE_SIP_NOT_REACHABLE = 341; // 0x155
8756    field public static final int CODE_SIP_NOT_SUPPORTED = 334; // 0x14e
8757    field public static final int CODE_SIP_PROXY_AUTHENTICATION_REQUIRED = 367; // 0x16f
8758    field public static final int CODE_SIP_REDIRECTED = 321; // 0x141
8759    field public static final int CODE_SIP_REQUEST_CANCELLED = 339; // 0x153
8760    field public static final int CODE_SIP_REQUEST_ENTITY_TOO_LARGE = 368; // 0x170
8761    field public static final int CODE_SIP_REQUEST_PENDING = 377; // 0x179
8762    field public static final int CODE_SIP_REQUEST_TIMEOUT = 335; // 0x14f
8763    field public static final int CODE_SIP_REQUEST_URI_TOO_LARGE = 369; // 0x171
8764    field public static final int CODE_SIP_SERVER_ERROR = 354; // 0x162
8765    field public static final int CODE_SIP_SERVER_INTERNAL_ERROR = 351; // 0x15f
8766    field public static final int CODE_SIP_SERVER_TIMEOUT = 353; // 0x161
8767    field public static final int CODE_SIP_SERVICE_UNAVAILABLE = 352; // 0x160
8768    field public static final int CODE_SIP_TEMPRARILY_UNAVAILABLE = 336; // 0x150
8769    field public static final int CODE_SIP_TOO_MANY_HOPS = 374; // 0x176
8770    field public static final int CODE_SIP_TRANSACTION_DOES_NOT_EXIST = 343; // 0x157
8771    field public static final int CODE_SIP_UNDECIPHERABLE = 378; // 0x17a
8772    field public static final int CODE_SIP_USER_MARKED_UNWANTED = 365; // 0x16d
8773    field public static final int CODE_SIP_USER_REJECTED = 361; // 0x169
8774    field public static final int CODE_SUPP_SVC_CANCELLED = 1202; // 0x4b2
8775    field public static final int CODE_SUPP_SVC_FAILED = 1201; // 0x4b1
8776    field public static final int CODE_SUPP_SVC_REINVITE_COLLISION = 1203; // 0x4b3
8777    field public static final int CODE_TIMEOUT_1XX_WAITING = 201; // 0xc9
8778    field public static final int CODE_TIMEOUT_NO_ANSWER = 202; // 0xca
8779    field public static final int CODE_TIMEOUT_NO_ANSWER_CALL_UPDATE = 203; // 0xcb
8780    field public static final int CODE_UNSPECIFIED = 0; // 0x0
8781    field public static final int CODE_USER_CANCELLED_SESSION_MODIFICATION = 512; // 0x200
8782    field public static final int CODE_USER_DECLINE = 504; // 0x1f8
8783    field public static final int CODE_USER_IGNORE = 503; // 0x1f7
8784    field public static final int CODE_USER_NOANSWER = 502; // 0x1f6
8785    field public static final int CODE_USER_REJECTED_SESSION_MODIFICATION = 511; // 0x1ff
8786    field public static final int CODE_USER_TERMINATED = 501; // 0x1f5
8787    field public static final int CODE_USER_TERMINATED_BY_REMOTE = 510; // 0x1fe
8788    field public static final int CODE_UT_CB_PASSWORD_MISMATCH = 821; // 0x335
8789    field public static final int CODE_UT_NETWORK_ERROR = 804; // 0x324
8790    field public static final int CODE_UT_NOT_SUPPORTED = 801; // 0x321
8791    field public static final int CODE_UT_OPERATION_NOT_ALLOWED = 803; // 0x323
8792    field public static final int CODE_UT_SERVICE_UNAVAILABLE = 802; // 0x322
8793    field public static final int CODE_UT_SS_MODIFIED_TO_DIAL = 822; // 0x336
8794    field public static final int CODE_UT_SS_MODIFIED_TO_DIAL_VIDEO = 825; // 0x339
8795    field public static final int CODE_UT_SS_MODIFIED_TO_SS = 824; // 0x338
8796    field public static final int CODE_UT_SS_MODIFIED_TO_USSD = 823; // 0x337
8797    field public static final int CODE_WIFI_LOST = 1407; // 0x57f
8798    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.ImsReasonInfo> CREATOR;
8799    field public static final int EXTRA_CODE_CALL_RETRY_BY_SETTINGS = 3; // 0x3
8800    field public static final int EXTRA_CODE_CALL_RETRY_NORMAL = 1; // 0x1
8801    field public static final int EXTRA_CODE_CALL_RETRY_SILENT_REDIAL = 2; // 0x2
8802    field public static final String EXTRA_MSG_SERVICE_NOT_AUTHORIZED = "Forbidden. Not Authorized for Service";
8803  }
8804
8805  public class ImsService extends android.app.Service {
8806    ctor public ImsService();
8807    method public android.telephony.ims.feature.MmTelFeature createMmTelFeature(int);
8808    method public android.telephony.ims.feature.RcsFeature createRcsFeature(int);
8809    method public void disableIms(int);
8810    method public void enableIms(int);
8811    method public android.telephony.ims.stub.ImsConfigImplBase getConfig(int);
8812    method public android.telephony.ims.stub.ImsRegistrationImplBase getRegistration(int);
8813    method public final void onUpdateSupportedImsFeatures(android.telephony.ims.stub.ImsFeatureConfiguration) throws android.os.RemoteException;
8814    method public android.telephony.ims.stub.ImsFeatureConfiguration querySupportedImsFeatures();
8815    method public void readyForFeatureCreation();
8816  }
8817
8818  public final class ImsSsData implements android.os.Parcelable {
8819    ctor public ImsSsData(int, int, int, int, int);
8820    method public int describeContents();
8821    method @Nullable public java.util.List<android.telephony.ims.ImsCallForwardInfo> getCallForwardInfo();
8822    method public int getRequestType();
8823    method public int getResult();
8824    method public int getServiceClass();
8825    method public int getServiceType();
8826    method @NonNull public java.util.List<android.telephony.ims.ImsSsInfo> getSuppServiceInfo();
8827    method public int getTeleserviceType();
8828    method public boolean isTypeBarring();
8829    method public boolean isTypeCf();
8830    method public boolean isTypeClip();
8831    method public boolean isTypeClir();
8832    method public boolean isTypeColp();
8833    method public boolean isTypeColr();
8834    method public boolean isTypeCw();
8835    method public boolean isTypeIcb();
8836    method public boolean isTypeInterrogation();
8837    method public boolean isTypeUnConditional();
8838    method public void writeToParcel(android.os.Parcel, int);
8839    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.ImsSsData> CREATOR;
8840    field public static final int RESULT_SUCCESS = 0; // 0x0
8841    field public static final int SERVICE_CLASS_DATA = 2; // 0x2
8842    field public static final int SERVICE_CLASS_DATA_CIRCUIT_ASYNC = 32; // 0x20
8843    field public static final int SERVICE_CLASS_DATA_CIRCUIT_SYNC = 16; // 0x10
8844    field public static final int SERVICE_CLASS_DATA_PACKET_ACCESS = 64; // 0x40
8845    field public static final int SERVICE_CLASS_DATA_PAD = 128; // 0x80
8846    field public static final int SERVICE_CLASS_FAX = 4; // 0x4
8847    field public static final int SERVICE_CLASS_NONE = 0; // 0x0
8848    field public static final int SERVICE_CLASS_SMS = 8; // 0x8
8849    field public static final int SERVICE_CLASS_VOICE = 1; // 0x1
8850    field public static final int SS_ACTIVATION = 0; // 0x0
8851    field public static final int SS_ALL_BARRING = 18; // 0x12
8852    field public static final int SS_ALL_DATA_TELESERVICES = 3; // 0x3
8853    field public static final int SS_ALL_TELESERVICES_EXCEPT_SMS = 5; // 0x5
8854    field public static final int SS_ALL_TELESEVICES = 1; // 0x1
8855    field public static final int SS_ALL_TELE_AND_BEARER_SERVICES = 0; // 0x0
8856    field public static final int SS_BAIC = 16; // 0x10
8857    field public static final int SS_BAIC_ROAMING = 17; // 0x11
8858    field public static final int SS_BAOC = 13; // 0xd
8859    field public static final int SS_BAOIC = 14; // 0xe
8860    field public static final int SS_BAOIC_EXC_HOME = 15; // 0xf
8861    field public static final int SS_CFU = 0; // 0x0
8862    field public static final int SS_CFUT = 6; // 0x6
8863    field public static final int SS_CF_ALL = 4; // 0x4
8864    field public static final int SS_CF_ALL_CONDITIONAL = 5; // 0x5
8865    field public static final int SS_CF_BUSY = 1; // 0x1
8866    field public static final int SS_CF_NOT_REACHABLE = 3; // 0x3
8867    field public static final int SS_CF_NO_REPLY = 2; // 0x2
8868    field public static final int SS_CLIP = 7; // 0x7
8869    field public static final int SS_CLIR = 8; // 0x8
8870    field public static final int SS_CNAP = 11; // 0xb
8871    field public static final int SS_COLP = 9; // 0x9
8872    field public static final int SS_COLR = 10; // 0xa
8873    field public static final int SS_DEACTIVATION = 1; // 0x1
8874    field public static final int SS_ERASURE = 4; // 0x4
8875    field public static final int SS_INCOMING_BARRING = 20; // 0x14
8876    field public static final int SS_INCOMING_BARRING_ANONYMOUS = 22; // 0x16
8877    field public static final int SS_INCOMING_BARRING_DN = 21; // 0x15
8878    field public static final int SS_INTERROGATION = 2; // 0x2
8879    field public static final int SS_OUTGOING_BARRING = 19; // 0x13
8880    field public static final int SS_REGISTRATION = 3; // 0x3
8881    field public static final int SS_SMS_SERVICES = 4; // 0x4
8882    field public static final int SS_TELEPHONY = 2; // 0x2
8883    field public static final int SS_WAIT = 12; // 0xc
8884  }
8885
8886  public static final class ImsSsData.Builder {
8887    ctor public ImsSsData.Builder(int, int, int, int, int);
8888    method @NonNull public android.telephony.ims.ImsSsData build();
8889    method @NonNull public android.telephony.ims.ImsSsData.Builder setCallForwardingInfo(@NonNull java.util.List<android.telephony.ims.ImsCallForwardInfo>);
8890    method @NonNull public android.telephony.ims.ImsSsData.Builder setSuppServiceInfo(@NonNull java.util.List<android.telephony.ims.ImsSsInfo>);
8891  }
8892
8893  public final class ImsSsInfo implements android.os.Parcelable {
8894    ctor @Deprecated public ImsSsInfo(int, @Nullable String);
8895    method public int describeContents();
8896    method public int getClirInterrogationStatus();
8897    method public int getClirOutgoingState();
8898    method @Deprecated public String getIcbNum();
8899    method @Nullable public String getIncomingCommunicationBarringNumber();
8900    method public int getProvisionStatus();
8901    method public int getStatus();
8902    method public void writeToParcel(android.os.Parcel, int);
8903    field public static final int CLIR_OUTGOING_DEFAULT = 0; // 0x0
8904    field public static final int CLIR_OUTGOING_INVOCATION = 1; // 0x1
8905    field public static final int CLIR_OUTGOING_SUPPRESSION = 2; // 0x2
8906    field public static final int CLIR_STATUS_NOT_PROVISIONED = 0; // 0x0
8907    field public static final int CLIR_STATUS_PROVISIONED_PERMANENT = 1; // 0x1
8908    field public static final int CLIR_STATUS_TEMPORARILY_ALLOWED = 4; // 0x4
8909    field public static final int CLIR_STATUS_TEMPORARILY_RESTRICTED = 3; // 0x3
8910    field public static final int CLIR_STATUS_UNKNOWN = 2; // 0x2
8911    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.ImsSsInfo> CREATOR;
8912    field public static final int DISABLED = 0; // 0x0
8913    field public static final int ENABLED = 1; // 0x1
8914    field public static final int NOT_REGISTERED = -1; // 0xffffffff
8915    field public static final int SERVICE_NOT_PROVISIONED = 0; // 0x0
8916    field public static final int SERVICE_PROVISIONED = 1; // 0x1
8917    field public static final int SERVICE_PROVISIONING_UNKNOWN = -1; // 0xffffffff
8918  }
8919
8920  public static final class ImsSsInfo.Builder {
8921    ctor public ImsSsInfo.Builder(int);
8922    method @NonNull public android.telephony.ims.ImsSsInfo build();
8923    method @NonNull public android.telephony.ims.ImsSsInfo.Builder setClirInterrogationStatus(int);
8924    method @NonNull public android.telephony.ims.ImsSsInfo.Builder setClirOutgoingState(int);
8925    method @NonNull public android.telephony.ims.ImsSsInfo.Builder setIncomingCommunicationBarringNumber(@NonNull String);
8926    method @NonNull public android.telephony.ims.ImsSsInfo.Builder setProvisionStatus(int);
8927  }
8928
8929  public final class ImsStreamMediaProfile implements android.os.Parcelable {
8930    ctor public ImsStreamMediaProfile(int, int, int, int, int);
8931    method public void copyFrom(android.telephony.ims.ImsStreamMediaProfile);
8932    method public int describeContents();
8933    method public int getAudioDirection();
8934    method public int getAudioQuality();
8935    method public int getRttMode();
8936    method public int getVideoDirection();
8937    method public int getVideoQuality();
8938    method public boolean isReceivingRttAudio();
8939    method public boolean isRttCall();
8940    method public void setReceivingRttAudio(boolean);
8941    method public void setRttMode(int);
8942    method public void writeToParcel(android.os.Parcel, int);
8943    field public static final int AUDIO_QUALITY_AMR = 1; // 0x1
8944    field public static final int AUDIO_QUALITY_AMR_WB = 2; // 0x2
8945    field public static final int AUDIO_QUALITY_EVRC = 4; // 0x4
8946    field public static final int AUDIO_QUALITY_EVRC_B = 5; // 0x5
8947    field public static final int AUDIO_QUALITY_EVRC_NW = 7; // 0x7
8948    field public static final int AUDIO_QUALITY_EVRC_WB = 6; // 0x6
8949    field public static final int AUDIO_QUALITY_EVS_FB = 20; // 0x14
8950    field public static final int AUDIO_QUALITY_EVS_NB = 17; // 0x11
8951    field public static final int AUDIO_QUALITY_EVS_SWB = 19; // 0x13
8952    field public static final int AUDIO_QUALITY_EVS_WB = 18; // 0x12
8953    field public static final int AUDIO_QUALITY_G711A = 13; // 0xd
8954    field public static final int AUDIO_QUALITY_G711AB = 15; // 0xf
8955    field public static final int AUDIO_QUALITY_G711U = 11; // 0xb
8956    field public static final int AUDIO_QUALITY_G722 = 14; // 0xe
8957    field public static final int AUDIO_QUALITY_G723 = 12; // 0xc
8958    field public static final int AUDIO_QUALITY_G729 = 16; // 0x10
8959    field public static final int AUDIO_QUALITY_GSM_EFR = 8; // 0x8
8960    field public static final int AUDIO_QUALITY_GSM_FR = 9; // 0x9
8961    field public static final int AUDIO_QUALITY_GSM_HR = 10; // 0xa
8962    field public static final int AUDIO_QUALITY_NONE = 0; // 0x0
8963    field public static final int AUDIO_QUALITY_QCELP13K = 3; // 0x3
8964    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.ImsStreamMediaProfile> CREATOR;
8965    field public static final int DIRECTION_INACTIVE = 0; // 0x0
8966    field public static final int DIRECTION_INVALID = -1; // 0xffffffff
8967    field public static final int DIRECTION_RECEIVE = 1; // 0x1
8968    field public static final int DIRECTION_SEND = 2; // 0x2
8969    field public static final int DIRECTION_SEND_RECEIVE = 3; // 0x3
8970    field public static final int RTT_MODE_DISABLED = 0; // 0x0
8971    field public static final int RTT_MODE_FULL = 1; // 0x1
8972    field public static final int VIDEO_QUALITY_NONE = 0; // 0x0
8973    field public static final int VIDEO_QUALITY_QCIF = 1; // 0x1
8974    field public static final int VIDEO_QUALITY_QVGA_LANDSCAPE = 2; // 0x2
8975    field public static final int VIDEO_QUALITY_QVGA_PORTRAIT = 4; // 0x4
8976    field public static final int VIDEO_QUALITY_VGA_LANDSCAPE = 8; // 0x8
8977    field public static final int VIDEO_QUALITY_VGA_PORTRAIT = 16; // 0x10
8978  }
8979
8980  public final class ImsSuppServiceNotification implements android.os.Parcelable {
8981    ctor public ImsSuppServiceNotification(int, int, int, int, String, String[]);
8982    method public int describeContents();
8983    method public void writeToParcel(android.os.Parcel, int);
8984    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.ImsSuppServiceNotification> CREATOR;
8985    field public final int code;
8986    field public final String[] history;
8987    field public final int index;
8988    field public final int notificationType;
8989    field public final String number;
8990    field public final int type;
8991  }
8992
8993  public class ImsUtListener {
8994    method public void onSupplementaryServiceIndication(android.telephony.ims.ImsSsData);
8995    method public void onUtConfigurationCallBarringQueried(int, android.telephony.ims.ImsSsInfo[]);
8996    method public void onUtConfigurationCallForwardQueried(int, android.telephony.ims.ImsCallForwardInfo[]);
8997    method public void onUtConfigurationCallWaitingQueried(int, android.telephony.ims.ImsSsInfo[]);
8998    method public void onUtConfigurationQueried(int, android.os.Bundle);
8999    method public void onUtConfigurationQueryFailed(int, android.telephony.ims.ImsReasonInfo);
9000    method public void onUtConfigurationUpdateFailed(int, android.telephony.ims.ImsReasonInfo);
9001    method public void onUtConfigurationUpdated(int);
9002  }
9003
9004  public abstract class ImsVideoCallProvider {
9005    ctor public ImsVideoCallProvider();
9006    method public void changeCallDataUsage(long);
9007    method public void changeCameraCapabilities(android.telecom.VideoProfile.CameraCapabilities);
9008    method public void changePeerDimensions(int, int);
9009    method public void changeVideoQuality(int);
9010    method public void handleCallSessionEvent(int);
9011    method public abstract void onRequestCallDataUsage();
9012    method public abstract void onRequestCameraCapabilities();
9013    method public abstract void onSendSessionModifyRequest(android.telecom.VideoProfile, android.telecom.VideoProfile);
9014    method public abstract void onSendSessionModifyResponse(android.telecom.VideoProfile);
9015    method public abstract void onSetCamera(String);
9016    method public void onSetCamera(String, int);
9017    method public abstract void onSetDeviceOrientation(int);
9018    method public abstract void onSetDisplaySurface(android.view.Surface);
9019    method public abstract void onSetPauseImage(android.net.Uri);
9020    method public abstract void onSetPreviewSurface(android.view.Surface);
9021    method public abstract void onSetZoom(float);
9022    method public void receiveSessionModifyRequest(android.telecom.VideoProfile);
9023    method public void receiveSessionModifyResponse(int, android.telecom.VideoProfile, android.telecom.VideoProfile);
9024  }
9025
9026  public class ProvisioningManager {
9027    method @NonNull public static android.telephony.ims.ProvisioningManager createForSubscriptionId(int);
9028    method @WorkerThread @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getProvisioningIntValue(int);
9029    method @WorkerThread @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean getProvisioningStatusForCapability(@android.telephony.ims.feature.MmTelFeature.MmTelCapabilities.MmTelCapability int, int);
9030    method @Nullable @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) @WorkerThread public String getProvisioningStringValue(int);
9031    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;
9032    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) @WorkerThread public int setProvisioningIntValue(int, int);
9033    method @WorkerThread @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setProvisioningStatusForCapability(@android.telephony.ims.feature.MmTelFeature.MmTelCapabilities.MmTelCapability int, int, boolean);
9034    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) @WorkerThread public int setProvisioningStringValue(int, @NonNull String);
9035    method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void unregisterProvisioningChangedCallback(@NonNull android.telephony.ims.ProvisioningManager.Callback);
9036    field public static final int KEY_VOICE_OVER_WIFI_MODE_OVERRIDE = 27; // 0x1b
9037    field public static final int KEY_VOICE_OVER_WIFI_ROAMING_ENABLED_OVERRIDE = 26; // 0x1a
9038    field public static final int PROVISIONING_VALUE_DISABLED = 0; // 0x0
9039    field public static final int PROVISIONING_VALUE_ENABLED = 1; // 0x1
9040    field public static final String STRING_QUERY_RESULT_ERROR_GENERIC = "STRING_QUERY_RESULT_ERROR_GENERIC";
9041    field public static final String STRING_QUERY_RESULT_ERROR_NOT_READY = "STRING_QUERY_RESULT_ERROR_NOT_READY";
9042  }
9043
9044  public static class ProvisioningManager.Callback {
9045    ctor public ProvisioningManager.Callback();
9046    method public void onProvisioningIntChanged(int, int);
9047    method public void onProvisioningStringChanged(int, @NonNull String);
9048  }
9049
9050}
9051
9052package android.telephony.ims.feature {
9053
9054  public final class CapabilityChangeRequest implements android.os.Parcelable {
9055    method public void addCapabilitiesToDisableForTech(@android.telephony.ims.feature.MmTelFeature.MmTelCapabilities.MmTelCapability int, int);
9056    method public void addCapabilitiesToEnableForTech(@android.telephony.ims.feature.MmTelFeature.MmTelCapabilities.MmTelCapability int, int);
9057    method public int describeContents();
9058    method public java.util.List<android.telephony.ims.feature.CapabilityChangeRequest.CapabilityPair> getCapabilitiesToDisable();
9059    method public java.util.List<android.telephony.ims.feature.CapabilityChangeRequest.CapabilityPair> getCapabilitiesToEnable();
9060    method public void writeToParcel(android.os.Parcel, int);
9061    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.feature.CapabilityChangeRequest> CREATOR;
9062  }
9063
9064  public static class CapabilityChangeRequest.CapabilityPair {
9065    ctor public CapabilityChangeRequest.CapabilityPair(@android.telephony.ims.feature.MmTelFeature.MmTelCapabilities.MmTelCapability int, int);
9066    method @android.telephony.ims.feature.MmTelFeature.MmTelCapabilities.MmTelCapability public int getCapability();
9067    method public int getRadioTech();
9068  }
9069
9070  public abstract class ImsFeature {
9071    ctor public ImsFeature();
9072    method public abstract void changeEnabledCapabilities(android.telephony.ims.feature.CapabilityChangeRequest, android.telephony.ims.feature.ImsFeature.CapabilityCallbackProxy);
9073    method public abstract void onFeatureReady();
9074    method public abstract void onFeatureRemoved();
9075    method public final void setFeatureState(int);
9076    field public static final int CAPABILITY_ERROR_GENERIC = -1; // 0xffffffff
9077    field public static final int CAPABILITY_SUCCESS = 0; // 0x0
9078    field public static final int FEATURE_EMERGENCY_MMTEL = 0; // 0x0
9079    field public static final int FEATURE_MMTEL = 1; // 0x1
9080    field public static final int FEATURE_RCS = 2; // 0x2
9081    field public static final int STATE_INITIALIZING = 1; // 0x1
9082    field public static final int STATE_READY = 2; // 0x2
9083    field public static final int STATE_UNAVAILABLE = 0; // 0x0
9084  }
9085
9086  @Deprecated public static class ImsFeature.Capabilities {
9087    field @Deprecated protected int mCapabilities;
9088  }
9089
9090  protected static class ImsFeature.CapabilityCallbackProxy {
9091    method public void onChangeCapabilityConfigurationError(int, int, int);
9092  }
9093
9094  public class MmTelFeature extends android.telephony.ims.feature.ImsFeature {
9095    ctor public MmTelFeature();
9096    method public void changeEnabledCapabilities(@NonNull android.telephony.ims.feature.CapabilityChangeRequest, @NonNull android.telephony.ims.feature.ImsFeature.CapabilityCallbackProxy);
9097    method @Nullable public android.telephony.ims.ImsCallProfile createCallProfile(int, int);
9098    method @Nullable public android.telephony.ims.stub.ImsCallSessionImplBase createCallSession(@NonNull android.telephony.ims.ImsCallProfile);
9099    method @NonNull public android.telephony.ims.stub.ImsEcbmImplBase getEcbm();
9100    method @NonNull public android.telephony.ims.stub.ImsMultiEndpointImplBase getMultiEndpoint();
9101    method @NonNull public android.telephony.ims.stub.ImsSmsImplBase getSmsImplementation();
9102    method @NonNull public android.telephony.ims.stub.ImsUtImplBase getUt();
9103    method public final void notifyCapabilitiesStatusChanged(@NonNull android.telephony.ims.feature.MmTelFeature.MmTelCapabilities);
9104    method public final void notifyIncomingCall(@NonNull android.telephony.ims.stub.ImsCallSessionImplBase, @NonNull android.os.Bundle);
9105    method public final void notifyRejectedCall(@NonNull android.telephony.ims.ImsCallProfile, @NonNull android.telephony.ims.ImsReasonInfo);
9106    method public final void notifyVoiceMessageCountUpdate(int);
9107    method public void onFeatureReady();
9108    method public void onFeatureRemoved();
9109    method public boolean queryCapabilityConfiguration(@android.telephony.ims.feature.MmTelFeature.MmTelCapabilities.MmTelCapability int, int);
9110    method public final android.telephony.ims.feature.MmTelFeature.MmTelCapabilities queryCapabilityStatus();
9111    method public void setUiTtyMode(int, @Nullable android.os.Message);
9112    method @android.telephony.ims.feature.MmTelFeature.ProcessCallResult public int shouldProcessCall(@NonNull String[]);
9113    field public static final int PROCESS_CALL_CSFB = 1; // 0x1
9114    field public static final int PROCESS_CALL_IMS = 0; // 0x0
9115  }
9116
9117  public static class MmTelFeature.MmTelCapabilities extends android.telephony.ims.feature.ImsFeature.Capabilities {
9118    ctor public MmTelFeature.MmTelCapabilities();
9119    ctor @Deprecated public MmTelFeature.MmTelCapabilities(android.telephony.ims.feature.ImsFeature.Capabilities);
9120    ctor public MmTelFeature.MmTelCapabilities(int);
9121    method public final void addCapabilities(@android.telephony.ims.feature.MmTelFeature.MmTelCapabilities.MmTelCapability int);
9122    method public final boolean isCapable(@android.telephony.ims.feature.MmTelFeature.MmTelCapabilities.MmTelCapability int);
9123    method public final void removeCapabilities(@android.telephony.ims.feature.MmTelFeature.MmTelCapabilities.MmTelCapability int);
9124    field public static final int CAPABILITY_TYPE_SMS = 8; // 0x8
9125    field public static final int CAPABILITY_TYPE_UT = 4; // 0x4
9126    field public static final int CAPABILITY_TYPE_VIDEO = 2; // 0x2
9127    field public static final int CAPABILITY_TYPE_VOICE = 1; // 0x1
9128  }
9129
9130  @IntDef(flag=true, value={android.telephony.ims.feature.MmTelFeature.MmTelCapabilities.CAPABILITY_TYPE_VOICE, android.telephony.ims.feature.MmTelFeature.MmTelCapabilities.CAPABILITY_TYPE_VIDEO, android.telephony.ims.feature.MmTelFeature.MmTelCapabilities.CAPABILITY_TYPE_UT, android.telephony.ims.feature.MmTelFeature.MmTelCapabilities.CAPABILITY_TYPE_SMS}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface MmTelFeature.MmTelCapabilities.MmTelCapability {
9131  }
9132
9133  @IntDef(flag=true, value={android.telephony.ims.feature.MmTelFeature.PROCESS_CALL_IMS, android.telephony.ims.feature.MmTelFeature.PROCESS_CALL_CSFB}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface MmTelFeature.ProcessCallResult {
9134  }
9135
9136  public class RcsFeature extends android.telephony.ims.feature.ImsFeature {
9137    ctor public RcsFeature();
9138    method public void changeEnabledCapabilities(android.telephony.ims.feature.CapabilityChangeRequest, android.telephony.ims.feature.ImsFeature.CapabilityCallbackProxy);
9139    method public void onFeatureReady();
9140    method public void onFeatureRemoved();
9141  }
9142
9143}
9144
9145package android.telephony.ims.stub {
9146
9147  public class ImsCallSessionImplBase implements java.lang.AutoCloseable {
9148    ctor public ImsCallSessionImplBase();
9149    method public void accept(int, android.telephony.ims.ImsStreamMediaProfile);
9150    method public void close();
9151    method public void deflect(String);
9152    method public void extendToConference(String[]);
9153    method public String getCallId();
9154    method public android.telephony.ims.ImsCallProfile getCallProfile();
9155    method public android.telephony.ims.ImsVideoCallProvider getImsVideoCallProvider();
9156    method public android.telephony.ims.ImsCallProfile getLocalCallProfile();
9157    method public String getProperty(String);
9158    method public android.telephony.ims.ImsCallProfile getRemoteCallProfile();
9159    method public int getState();
9160    method public void hold(android.telephony.ims.ImsStreamMediaProfile);
9161    method public void inviteParticipants(String[]);
9162    method public boolean isInCall();
9163    method public boolean isMultiparty();
9164    method public void merge();
9165    method public void reject(int);
9166    method public void removeParticipants(String[]);
9167    method public void resume(android.telephony.ims.ImsStreamMediaProfile);
9168    method public void sendDtmf(char, android.os.Message);
9169    method public void sendRttMessage(String);
9170    method public void sendRttModifyRequest(android.telephony.ims.ImsCallProfile);
9171    method public void sendRttModifyResponse(boolean);
9172    method public void sendUssd(String);
9173    method public void setListener(android.telephony.ims.ImsCallSessionListener);
9174    method public void setMute(boolean);
9175    method public void start(String, android.telephony.ims.ImsCallProfile);
9176    method public void startConference(String[], android.telephony.ims.ImsCallProfile);
9177    method public void startDtmf(char);
9178    method public void stopDtmf();
9179    method public void terminate(int);
9180    method public void update(int, android.telephony.ims.ImsStreamMediaProfile);
9181    field public static final int USSD_MODE_NOTIFY = 0; // 0x0
9182    field public static final int USSD_MODE_REQUEST = 1; // 0x1
9183  }
9184
9185  public static class ImsCallSessionImplBase.State {
9186    method public static String toString(int);
9187    field public static final int ESTABLISHED = 4; // 0x4
9188    field public static final int ESTABLISHING = 3; // 0x3
9189    field public static final int IDLE = 0; // 0x0
9190    field public static final int INITIATED = 1; // 0x1
9191    field public static final int INVALID = -1; // 0xffffffff
9192    field public static final int NEGOTIATING = 2; // 0x2
9193    field public static final int REESTABLISHING = 6; // 0x6
9194    field public static final int RENEGOTIATING = 5; // 0x5
9195    field public static final int TERMINATED = 8; // 0x8
9196    field public static final int TERMINATING = 7; // 0x7
9197  }
9198
9199  public class ImsConfigImplBase {
9200    ctor public ImsConfigImplBase();
9201    method public int getConfigInt(int);
9202    method public String getConfigString(int);
9203    method public final void notifyProvisionedValueChanged(int, int);
9204    method public final void notifyProvisionedValueChanged(int, String);
9205    method public int setConfig(int, int);
9206    method public int setConfig(int, String);
9207    field public static final int CONFIG_RESULT_FAILED = 1; // 0x1
9208    field public static final int CONFIG_RESULT_SUCCESS = 0; // 0x0
9209    field public static final int CONFIG_RESULT_UNKNOWN = -1; // 0xffffffff
9210  }
9211
9212  public class ImsEcbmImplBase {
9213    ctor public ImsEcbmImplBase();
9214    method public final void enteredEcbm();
9215    method public void exitEmergencyCallbackMode();
9216    method public final void exitedEcbm();
9217  }
9218
9219  public final class ImsFeatureConfiguration implements android.os.Parcelable {
9220    method public int describeContents();
9221    method public java.util.Set<android.telephony.ims.stub.ImsFeatureConfiguration.FeatureSlotPair> getServiceFeatures();
9222    method public void writeToParcel(android.os.Parcel, int);
9223    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.ims.stub.ImsFeatureConfiguration> CREATOR;
9224  }
9225
9226  public static class ImsFeatureConfiguration.Builder {
9227    ctor public ImsFeatureConfiguration.Builder();
9228    method public android.telephony.ims.stub.ImsFeatureConfiguration.Builder addFeature(int, int);
9229    method public android.telephony.ims.stub.ImsFeatureConfiguration build();
9230  }
9231
9232  public static final class ImsFeatureConfiguration.FeatureSlotPair {
9233    ctor public ImsFeatureConfiguration.FeatureSlotPair(int, int);
9234    field public final int featureType;
9235    field public final int slotId;
9236  }
9237
9238  public class ImsMultiEndpointImplBase {
9239    ctor public ImsMultiEndpointImplBase();
9240    method public final void onImsExternalCallStateUpdate(java.util.List<android.telephony.ims.ImsExternalCallState>);
9241    method public void requestImsExternalCallStateInfo();
9242  }
9243
9244  public class ImsRegistrationImplBase {
9245    ctor public ImsRegistrationImplBase();
9246    method public final void onDeregistered(android.telephony.ims.ImsReasonInfo);
9247    method public final void onRegistered(int);
9248    method public final void onRegistering(int);
9249    method public final void onSubscriberAssociatedUriChanged(android.net.Uri[]);
9250    method public final void onTechnologyChangeFailed(int, android.telephony.ims.ImsReasonInfo);
9251    field public static final int REGISTRATION_TECH_IWLAN = 1; // 0x1
9252    field public static final int REGISTRATION_TECH_LTE = 0; // 0x0
9253    field public static final int REGISTRATION_TECH_NONE = -1; // 0xffffffff
9254  }
9255
9256  public class ImsSmsImplBase {
9257    ctor public ImsSmsImplBase();
9258    method public void acknowledgeSms(int, int, int);
9259    method public void acknowledgeSmsReport(int, int, int);
9260    method public String getSmsFormat();
9261    method public void onReady();
9262    method public final void onSendSmsResult(int, int, int, int) throws java.lang.RuntimeException;
9263    method public final void onSmsReceived(int, String, byte[]) throws java.lang.RuntimeException;
9264    method public final void onSmsStatusReportReceived(int, int, String, byte[]) throws java.lang.RuntimeException;
9265    method public void sendSms(int, int, String, String, boolean, byte[]);
9266    field public static final int DELIVER_STATUS_ERROR_GENERIC = 2; // 0x2
9267    field public static final int DELIVER_STATUS_ERROR_NO_MEMORY = 3; // 0x3
9268    field public static final int DELIVER_STATUS_ERROR_REQUEST_NOT_SUPPORTED = 4; // 0x4
9269    field public static final int DELIVER_STATUS_OK = 1; // 0x1
9270    field public static final int SEND_STATUS_ERROR = 2; // 0x2
9271    field public static final int SEND_STATUS_ERROR_FALLBACK = 4; // 0x4
9272    field public static final int SEND_STATUS_ERROR_RETRY = 3; // 0x3
9273    field public static final int SEND_STATUS_OK = 1; // 0x1
9274    field public static final int STATUS_REPORT_STATUS_ERROR = 2; // 0x2
9275    field public static final int STATUS_REPORT_STATUS_OK = 1; // 0x1
9276  }
9277
9278  public class ImsUtImplBase {
9279    ctor public ImsUtImplBase();
9280    method public void close();
9281    method public int queryCallBarring(int);
9282    method public int queryCallBarringForServiceClass(int, int);
9283    method public int queryCallForward(int, String);
9284    method public int queryCallWaiting();
9285    method public int queryClip();
9286    method public int queryClir();
9287    method public int queryColp();
9288    method public int queryColr();
9289    method public void setListener(android.telephony.ims.ImsUtListener);
9290    method public int transact(android.os.Bundle);
9291    method public int updateCallBarring(int, int, String[]);
9292    method public int updateCallBarringForServiceClass(int, int, String[], int);
9293    method public int updateCallForward(int, int, String, int, int);
9294    method public int updateCallWaiting(boolean, int);
9295    method public int updateClip(boolean);
9296    method public int updateClir(int);
9297    method public int updateColp(boolean);
9298    method public int updateColr(int);
9299  }
9300
9301}
9302
9303package android.telephony.mbms {
9304
9305  public static class DownloadRequest.Builder {
9306    method public android.telephony.mbms.DownloadRequest.Builder setServiceId(String);
9307  }
9308
9309  public final class FileInfo implements android.os.Parcelable {
9310    ctor public FileInfo(android.net.Uri, String);
9311  }
9312
9313  public final class FileServiceInfo extends android.telephony.mbms.ServiceInfo implements android.os.Parcelable {
9314    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>);
9315  }
9316
9317  public class MbmsDownloadReceiver extends android.content.BroadcastReceiver {
9318    field public static final int RESULT_APP_NOTIFICATION_ERROR = 6; // 0x6
9319    field public static final int RESULT_BAD_TEMP_FILE_ROOT = 3; // 0x3
9320    field public static final int RESULT_DOWNLOAD_FINALIZATION_ERROR = 4; // 0x4
9321    field public static final int RESULT_INVALID_ACTION = 1; // 0x1
9322    field public static final int RESULT_MALFORMED_INTENT = 2; // 0x2
9323    field public static final int RESULT_OK = 0; // 0x0
9324    field public static final int RESULT_TEMP_FILE_GENERATION_ERROR = 5; // 0x5
9325  }
9326
9327  public final class StreamingServiceInfo extends android.telephony.mbms.ServiceInfo implements android.os.Parcelable {
9328    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);
9329  }
9330
9331  public final class UriPathPair implements android.os.Parcelable {
9332    method public int describeContents();
9333    method public android.net.Uri getContentUri();
9334    method public android.net.Uri getFilePathUri();
9335    method public void writeToParcel(android.os.Parcel, int);
9336    field @NonNull public static final android.os.Parcelable.Creator<android.telephony.mbms.UriPathPair> CREATOR;
9337  }
9338
9339}
9340
9341package android.telephony.mbms.vendor {
9342
9343  public class MbmsDownloadServiceBase extends android.os.Binder {
9344    ctor public MbmsDownloadServiceBase();
9345    method public int addProgressListener(android.telephony.mbms.DownloadRequest, android.telephony.mbms.DownloadProgressListener) throws android.os.RemoteException;
9346    method public int addStatusListener(android.telephony.mbms.DownloadRequest, android.telephony.mbms.DownloadStatusListener) throws android.os.RemoteException;
9347    method public android.os.IBinder asBinder();
9348    method public int cancelDownload(android.telephony.mbms.DownloadRequest) throws android.os.RemoteException;
9349    method public void dispose(int) throws android.os.RemoteException;
9350    method public int download(android.telephony.mbms.DownloadRequest) throws android.os.RemoteException;
9351    method public int initialize(int, android.telephony.mbms.MbmsDownloadSessionCallback) throws android.os.RemoteException;
9352    method @NonNull public java.util.List<android.telephony.mbms.DownloadRequest> listPendingDownloads(int) throws android.os.RemoteException;
9353    method public void onAppCallbackDied(int, int);
9354    method public boolean onTransact(int, android.os.Parcel, android.os.Parcel, int) throws android.os.RemoteException;
9355    method public int removeProgressListener(android.telephony.mbms.DownloadRequest, android.telephony.mbms.DownloadProgressListener) throws android.os.RemoteException;
9356    method public int removeStatusListener(android.telephony.mbms.DownloadRequest, android.telephony.mbms.DownloadStatusListener) throws android.os.RemoteException;
9357    method public int requestDownloadState(android.telephony.mbms.DownloadRequest, android.telephony.mbms.FileInfo) throws android.os.RemoteException;
9358    method public int requestUpdateFileServices(int, java.util.List<java.lang.String>) throws android.os.RemoteException;
9359    method public int resetDownloadKnowledge(android.telephony.mbms.DownloadRequest) throws android.os.RemoteException;
9360    method public int setTempFileRootDirectory(int, String) throws android.os.RemoteException;
9361  }
9362
9363  public class MbmsGroupCallServiceBase extends android.app.Service {
9364    ctor public MbmsGroupCallServiceBase();
9365    method public void dispose(int) throws android.os.RemoteException;
9366    method public int initialize(@NonNull android.telephony.mbms.MbmsGroupCallSessionCallback, int) throws android.os.RemoteException;
9367    method public void onAppCallbackDied(int, int);
9368    method public android.os.IBinder onBind(android.content.Intent);
9369    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);
9370    method public void stopGroupCall(int, long);
9371    method public void updateGroupCall(int, long, @NonNull java.util.List<java.lang.Integer>, @NonNull java.util.List<java.lang.Integer>);
9372  }
9373
9374  public class MbmsStreamingServiceBase extends android.os.Binder {
9375    ctor public MbmsStreamingServiceBase();
9376    method public android.os.IBinder asBinder();
9377    method public void dispose(int) throws android.os.RemoteException;
9378    method @Nullable public android.net.Uri getPlaybackUri(int, String) throws android.os.RemoteException;
9379    method public int initialize(android.telephony.mbms.MbmsStreamingSessionCallback, int) throws android.os.RemoteException;
9380    method public void onAppCallbackDied(int, int);
9381    method public boolean onTransact(int, android.os.Parcel, android.os.Parcel, int) throws android.os.RemoteException;
9382    method public int requestUpdateStreamingServices(int, java.util.List<java.lang.String>) throws android.os.RemoteException;
9383    method public int startStreaming(int, String, android.telephony.mbms.StreamingServiceCallback) throws android.os.RemoteException;
9384    method public void stopStreaming(int, String) throws android.os.RemoteException;
9385  }
9386
9387  public class VendorUtils {
9388    ctor public VendorUtils();
9389    method public static android.content.ComponentName getAppReceiverFromPackageName(android.content.Context, String);
9390    field public static final String ACTION_CLEANUP = "android.telephony.mbms.action.CLEANUP";
9391    field public static final String ACTION_DOWNLOAD_RESULT_INTERNAL = "android.telephony.mbms.action.DOWNLOAD_RESULT_INTERNAL";
9392    field public static final String ACTION_FILE_DESCRIPTOR_REQUEST = "android.telephony.mbms.action.FILE_DESCRIPTOR_REQUEST";
9393    field public static final String EXTRA_FD_COUNT = "android.telephony.mbms.extra.FD_COUNT";
9394    field public static final String EXTRA_FINAL_URI = "android.telephony.mbms.extra.FINAL_URI";
9395    field public static final String EXTRA_FREE_URI_LIST = "android.telephony.mbms.extra.FREE_URI_LIST";
9396    field public static final String EXTRA_PAUSED_LIST = "android.telephony.mbms.extra.PAUSED_LIST";
9397    field public static final String EXTRA_PAUSED_URI_LIST = "android.telephony.mbms.extra.PAUSED_URI_LIST";
9398    field public static final String EXTRA_SERVICE_ID = "android.telephony.mbms.extra.SERVICE_ID";
9399    field public static final String EXTRA_TEMP_FILES_IN_USE = "android.telephony.mbms.extra.TEMP_FILES_IN_USE";
9400    field public static final String EXTRA_TEMP_FILE_ROOT = "android.telephony.mbms.extra.TEMP_FILE_ROOT";
9401    field public static final String EXTRA_TEMP_LIST = "android.telephony.mbms.extra.TEMP_LIST";
9402  }
9403
9404}
9405
9406package android.util {
9407
9408  public class EventLog {
9409    method public static void readEventsOnWrapping(int[], long, java.util.Collection<android.util.EventLog.Event>) throws java.io.IOException;
9410  }
9411
9412  public static final class EventLog.Event {
9413    method public int getUid();
9414  }
9415
9416  public final class StatsLog {
9417    method public static void writeRaw(@NonNull byte[], int);
9418  }
9419
9420}
9421
9422package android.view {
9423
9424  public abstract class Window {
9425    method public void addSystemFlags(@android.view.WindowManager.LayoutParams.SystemFlags int);
9426  }
9427
9428  public interface WindowManager extends android.view.ViewManager {
9429    method @RequiresPermission(android.Manifest.permission.RESTRICTED_VR_ACCESS) public android.graphics.Region getCurrentImeTouchRegion();
9430  }
9431
9432  public static class WindowManager.LayoutParams extends android.view.ViewGroup.LayoutParams implements android.os.Parcelable {
9433    method public final long getUserActivityTimeout();
9434    method public final void setUserActivityTimeout(long);
9435    field @RequiresPermission(android.Manifest.permission.HIDE_NON_SYSTEM_OVERLAY_WINDOWS) public static final int SYSTEM_FLAG_HIDE_NON_SYSTEM_OVERLAY_WINDOWS = 524288; // 0x80000
9436  }
9437
9438  @IntDef(flag=true, prefix={"SYSTEM_FLAG_"}, value={android.view.WindowManager.LayoutParams.SYSTEM_FLAG_HIDE_NON_SYSTEM_OVERLAY_WINDOWS}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface WindowManager.LayoutParams.SystemFlags {
9439  }
9440
9441}
9442
9443package android.view.accessibility {
9444
9445  public final class AccessibilityManager {
9446    method public int getAccessibilityWindowId(@Nullable android.os.IBinder);
9447    method @RequiresPermission(android.Manifest.permission.MANAGE_ACCESSIBILITY) public void performAccessibilityShortcut();
9448  }
9449
9450}
9451
9452package android.view.autofill {
9453
9454  public final class AutofillManager {
9455    method public void setAugmentedAutofillWhitelist(@Nullable java.util.Set<java.lang.String>, @Nullable java.util.Set<android.content.ComponentName>);
9456  }
9457
9458}
9459
9460package android.view.contentcapture {
9461
9462  public final class ContentCaptureContext implements android.os.Parcelable {
9463    method @Nullable public android.content.ComponentName getActivityComponent();
9464    method public int getDisplayId();
9465    method public int getFlags();
9466    method @Nullable public android.view.contentcapture.ContentCaptureSessionId getParentSessionId();
9467    method public int getTaskId();
9468    field public static final int FLAG_DISABLED_BY_APP = 1; // 0x1
9469    field public static final int FLAG_DISABLED_BY_FLAG_SECURE = 2; // 0x2
9470    field public static final int FLAG_RECONNECTED = 4; // 0x4
9471  }
9472
9473  public final class ContentCaptureEvent implements android.os.Parcelable {
9474    method public int describeContents();
9475    method @Nullable public android.view.contentcapture.ContentCaptureContext getContentCaptureContext();
9476    method public long getEventTime();
9477    method @Nullable public android.view.autofill.AutofillId getId();
9478    method @Nullable public java.util.List<android.view.autofill.AutofillId> getIds();
9479    method @Nullable public CharSequence getText();
9480    method public int getType();
9481    method @Nullable public android.view.contentcapture.ViewNode getViewNode();
9482    method public void writeToParcel(android.os.Parcel, int);
9483    field @NonNull public static final android.os.Parcelable.Creator<android.view.contentcapture.ContentCaptureEvent> CREATOR;
9484    field public static final int TYPE_CONTEXT_UPDATED = 6; // 0x6
9485    field public static final int TYPE_SESSION_PAUSED = 8; // 0x8
9486    field public static final int TYPE_SESSION_RESUMED = 7; // 0x7
9487    field public static final int TYPE_VIEW_APPEARED = 1; // 0x1
9488    field public static final int TYPE_VIEW_DISAPPEARED = 2; // 0x2
9489    field public static final int TYPE_VIEW_TEXT_CHANGED = 3; // 0x3
9490    field public static final int TYPE_VIEW_TREE_APPEARED = 5; // 0x5
9491    field public static final int TYPE_VIEW_TREE_APPEARING = 4; // 0x4
9492  }
9493
9494  public final class ContentCaptureManager {
9495    method public boolean isContentCaptureFeatureEnabled();
9496  }
9497
9498  public final class ViewNode extends android.app.assist.AssistStructure.ViewNode {
9499    method @Nullable public android.view.autofill.AutofillId getParentAutofillId();
9500  }
9501
9502}
9503
9504package android.webkit {
9505
9506  public abstract class CookieManager {
9507    method protected abstract boolean allowFileSchemeCookiesImpl();
9508    method public abstract String getCookie(String, boolean);
9509    method public String getCookie(android.net.WebAddress);
9510    method public abstract boolean hasCookies(boolean);
9511    method protected abstract void setAcceptFileSchemeCookiesImpl(boolean);
9512  }
9513
9514  public class FindActionModeCallback implements android.view.ActionMode.Callback android.text.TextWatcher android.view.View.OnClickListener android.webkit.WebView.FindListener {
9515    ctor public FindActionModeCallback(android.content.Context);
9516    method public void afterTextChanged(android.text.Editable);
9517    method public void beforeTextChanged(CharSequence, int, int, int);
9518    method public void findAll();
9519    method public void finish();
9520    method public int getActionModeGlobalBottom();
9521    method public boolean onActionItemClicked(android.view.ActionMode, android.view.MenuItem);
9522    method public void onClick(android.view.View);
9523    method public boolean onCreateActionMode(android.view.ActionMode, android.view.Menu);
9524    method public void onDestroyActionMode(android.view.ActionMode);
9525    method public void onFindResultReceived(int, int, boolean);
9526    method public boolean onPrepareActionMode(android.view.ActionMode, android.view.Menu);
9527    method public void onTextChanged(CharSequence, int, int, int);
9528    method public void setText(String);
9529    method public void setWebView(@NonNull android.webkit.WebView);
9530    method public void showSoftInput();
9531    method public void updateMatchCount(int, int, boolean);
9532  }
9533
9534  public static class FindActionModeCallback.NoAction implements android.view.ActionMode.Callback {
9535    ctor public FindActionModeCallback.NoAction();
9536    method public boolean onActionItemClicked(android.view.ActionMode, android.view.MenuItem);
9537    method public boolean onCreateActionMode(android.view.ActionMode, android.view.Menu);
9538    method public void onDestroyActionMode(android.view.ActionMode);
9539    method public boolean onPrepareActionMode(android.view.ActionMode, android.view.Menu);
9540  }
9541
9542  public class GeolocationPermissions {
9543    ctor public GeolocationPermissions();
9544  }
9545
9546  public class HttpAuthHandler extends android.os.Handler {
9547    ctor public HttpAuthHandler();
9548  }
9549
9550  public class JsDialogHelper {
9551    ctor public JsDialogHelper(android.webkit.JsPromptResult, int, String, String, String);
9552    ctor public JsDialogHelper(android.webkit.JsPromptResult, android.os.Message);
9553    method public boolean invokeCallback(android.webkit.WebChromeClient, android.webkit.WebView);
9554    method public void showDialog(android.content.Context);
9555    field public static final int ALERT = 1; // 0x1
9556    field public static final int CONFIRM = 2; // 0x2
9557    field public static final int PROMPT = 3; // 0x3
9558    field public static final int UNLOAD = 4; // 0x4
9559  }
9560
9561  public class JsPromptResult extends android.webkit.JsResult {
9562    ctor public JsPromptResult(android.webkit.JsResult.ResultReceiver);
9563    method public String getStringResult();
9564  }
9565
9566  public class JsResult {
9567    ctor public JsResult(android.webkit.JsResult.ResultReceiver);
9568    method public final boolean getResult();
9569  }
9570
9571  public static interface JsResult.ResultReceiver {
9572    method public void onJsResultComplete(android.webkit.JsResult);
9573  }
9574
9575  public class SslErrorHandler extends android.os.Handler {
9576    ctor public SslErrorHandler();
9577  }
9578
9579  @Deprecated public abstract class TokenBindingService {
9580    ctor @Deprecated public TokenBindingService();
9581  }
9582
9583  public class WebChromeClient {
9584    method @Deprecated public void openFileChooser(android.webkit.ValueCallback<android.net.Uri>, String, String);
9585  }
9586
9587  public abstract class WebHistoryItem implements java.lang.Cloneable {
9588    method @Deprecated public abstract int getId();
9589  }
9590
9591  @Deprecated public abstract class WebIconDatabase {
9592    method @Deprecated public abstract void bulkRequestIconForPageUrl(android.content.ContentResolver, String, android.webkit.WebIconDatabase.IconListener);
9593  }
9594
9595  public abstract class WebMessagePort {
9596    ctor public WebMessagePort();
9597  }
9598
9599  public abstract class WebResourceError {
9600    ctor public WebResourceError();
9601  }
9602
9603  public class WebResourceResponse {
9604    ctor public WebResourceResponse(boolean, String, String, int, String, java.util.Map<java.lang.String,java.lang.String>, java.io.InputStream);
9605  }
9606
9607  public abstract class WebSettings {
9608    method public abstract boolean getAcceptThirdPartyCookies();
9609    method @Deprecated public abstract boolean getNavDump();
9610    method @Deprecated public abstract boolean getPluginsEnabled();
9611    method @Deprecated public abstract boolean getUseWebViewBackgroundForOverscrollBackground();
9612    method @Deprecated public abstract int getUserAgent();
9613    method public abstract boolean getVideoOverlayForEmbeddedEncryptedVideoEnabled();
9614    method public abstract void setAcceptThirdPartyCookies(boolean);
9615    method @Deprecated public abstract void setNavDump(boolean);
9616    method @Deprecated public abstract void setPluginsEnabled(boolean);
9617    method @Deprecated public abstract void setUseWebViewBackgroundForOverscrollBackground(boolean);
9618    method @Deprecated public abstract void setUserAgent(int);
9619    method public abstract void setVideoOverlayForEmbeddedEncryptedVideoEnabled(boolean);
9620  }
9621
9622  public class WebStorage {
9623    ctor public WebStorage();
9624  }
9625
9626  public static class WebStorage.Origin {
9627    ctor protected WebStorage.Origin(String, long, long);
9628  }
9629
9630  public class WebView extends android.widget.AbsoluteLayout implements android.view.ViewGroup.OnHierarchyChangeListener android.view.ViewTreeObserver.OnGlobalFocusChangeListener {
9631    method public android.webkit.WebViewProvider getWebViewProvider();
9632  }
9633
9634  public static class WebView.HitTestResult {
9635    ctor public WebView.HitTestResult();
9636    method public void setExtra(String);
9637    method public void setType(int);
9638  }
9639
9640  public class WebView.PrivateAccess {
9641    ctor public WebView.PrivateAccess();
9642    method public void awakenScrollBars(int);
9643    method public void awakenScrollBars(int, boolean);
9644    method public float getHorizontalScrollFactor();
9645    method public int getHorizontalScrollbarHeight();
9646    method public float getVerticalScrollFactor();
9647    method public void onScrollChanged(int, int, int, int);
9648    method public void overScrollBy(int, int, int, int, int, int, int, int, boolean);
9649    method public void setMeasuredDimension(int, int);
9650    method public void setScrollXRaw(int);
9651    method public void setScrollYRaw(int);
9652    method public void super_computeScroll();
9653    method public boolean super_dispatchKeyEvent(android.view.KeyEvent);
9654    method public int super_getScrollBarStyle();
9655    method public void super_onDrawVerticalScrollBar(android.graphics.Canvas, android.graphics.drawable.Drawable, int, int, int, int);
9656    method public boolean super_onGenericMotionEvent(android.view.MotionEvent);
9657    method public boolean super_onHoverEvent(android.view.MotionEvent);
9658    method public boolean super_performAccessibilityAction(int, android.os.Bundle);
9659    method public boolean super_performLongClick();
9660    method public boolean super_requestFocus(int, android.graphics.Rect);
9661    method public void super_scrollTo(int, int);
9662    method public boolean super_setFrame(int, int, int, int);
9663    method public void super_setLayoutParams(android.view.ViewGroup.LayoutParams);
9664    method public void super_startActivityForResult(android.content.Intent, int);
9665  }
9666
9667  public final class WebViewDelegate {
9668    method public void addWebViewAssetPath(android.content.Context);
9669    method @Deprecated public void callDrawGlFunction(android.graphics.Canvas, long);
9670    method @Deprecated public void callDrawGlFunction(@NonNull android.graphics.Canvas, long, @Nullable Runnable);
9671    method @Deprecated public boolean canInvokeDrawGlFunctor(android.view.View);
9672    method @Deprecated public void detachDrawGlFunctor(android.view.View, long);
9673    method public void drawWebViewFunctor(@NonNull android.graphics.Canvas, int);
9674    method public android.app.Application getApplication();
9675    method public String getDataDirectorySuffix();
9676    method public String getErrorString(android.content.Context, int);
9677    method public int getPackageId(android.content.res.Resources, String);
9678    method @Deprecated public void invokeDrawGlFunctor(android.view.View, long, boolean);
9679    method public boolean isMultiProcessEnabled();
9680    method public boolean isTraceTagEnabled();
9681    method public void setOnTraceEnabledChangeListener(android.webkit.WebViewDelegate.OnTraceEnabledChangeListener);
9682  }
9683
9684  public static interface WebViewDelegate.OnTraceEnabledChangeListener {
9685    method public void onTraceEnabledChange(boolean);
9686  }
9687
9688  public final class WebViewFactory {
9689    ctor public WebViewFactory();
9690    method public static android.content.pm.PackageInfo getLoadedPackageInfo();
9691    method public static int loadWebViewNativeLibraryFromPackage(String, ClassLoader);
9692    method public static void prepareWebViewInZygote();
9693    field public static final int LIBLOAD_ADDRESS_SPACE_NOT_RESERVED = 2; // 0x2
9694    field public static final int LIBLOAD_FAILED_JNI_CALL = 7; // 0x7
9695    field public static final int LIBLOAD_FAILED_LISTING_WEBVIEW_PACKAGES = 4; // 0x4
9696    field public static final int LIBLOAD_FAILED_TO_FIND_NAMESPACE = 10; // 0xa
9697    field public static final int LIBLOAD_FAILED_TO_LOAD_LIBRARY = 6; // 0x6
9698    field public static final int LIBLOAD_FAILED_TO_OPEN_RELRO_FILE = 5; // 0x5
9699    field public static final int LIBLOAD_FAILED_WAITING_FOR_RELRO = 3; // 0x3
9700    field public static final int LIBLOAD_FAILED_WAITING_FOR_WEBVIEW_REASON_UNKNOWN = 8; // 0x8
9701    field public static final int LIBLOAD_SUCCESS = 0; // 0x0
9702    field public static final int LIBLOAD_WRONG_PACKAGE_NAME = 1; // 0x1
9703  }
9704
9705  public interface WebViewFactoryProvider {
9706    method public android.webkit.WebViewProvider createWebView(android.webkit.WebView, android.webkit.WebView.PrivateAccess);
9707    method public android.webkit.CookieManager getCookieManager();
9708    method public android.webkit.GeolocationPermissions getGeolocationPermissions();
9709    method public android.webkit.ServiceWorkerController getServiceWorkerController();
9710    method public android.webkit.WebViewFactoryProvider.Statics getStatics();
9711    method @Deprecated public android.webkit.TokenBindingService getTokenBindingService();
9712    method public android.webkit.TracingController getTracingController();
9713    method public android.webkit.WebIconDatabase getWebIconDatabase();
9714    method public android.webkit.WebStorage getWebStorage();
9715    method public ClassLoader getWebViewClassLoader();
9716    method public android.webkit.WebViewDatabase getWebViewDatabase(android.content.Context);
9717  }
9718
9719  public static interface WebViewFactoryProvider.Statics {
9720    method public void clearClientCertPreferences(Runnable);
9721    method public void enableSlowWholeDocumentDraw();
9722    method public String findAddress(String);
9723    method public void freeMemoryForTests();
9724    method public String getDefaultUserAgent(android.content.Context);
9725    method @NonNull public android.net.Uri getSafeBrowsingPrivacyPolicyUrl();
9726    method public void initSafeBrowsing(android.content.Context, android.webkit.ValueCallback<java.lang.Boolean>);
9727    method public android.net.Uri[] parseFileChooserResult(int, android.content.Intent);
9728    method public void setSafeBrowsingWhitelist(java.util.List<java.lang.String>, android.webkit.ValueCallback<java.lang.Boolean>);
9729    method public void setWebContentsDebuggingEnabled(boolean);
9730  }
9731
9732  public interface WebViewProvider {
9733    method public void addJavascriptInterface(Object, String);
9734    method public boolean canGoBack();
9735    method public boolean canGoBackOrForward(int);
9736    method public boolean canGoForward();
9737    method public boolean canZoomIn();
9738    method public boolean canZoomOut();
9739    method public android.graphics.Picture capturePicture();
9740    method public void clearCache(boolean);
9741    method public void clearFormData();
9742    method public void clearHistory();
9743    method public void clearMatches();
9744    method public void clearSslPreferences();
9745    method public void clearView();
9746    method public android.webkit.WebBackForwardList copyBackForwardList();
9747    method public android.print.PrintDocumentAdapter createPrintDocumentAdapter(String);
9748    method public android.webkit.WebMessagePort[] createWebMessageChannel();
9749    method public void destroy();
9750    method public void documentHasImages(android.os.Message);
9751    method public void dumpViewHierarchyWithProperties(java.io.BufferedWriter, int);
9752    method public void evaluateJavaScript(String, android.webkit.ValueCallback<java.lang.String>);
9753    method public int findAll(String);
9754    method public void findAllAsync(String);
9755    method public android.view.View findHierarchyView(String, int);
9756    method public void findNext(boolean);
9757    method public void flingScroll(int, int);
9758    method public void freeMemory();
9759    method public android.net.http.SslCertificate getCertificate();
9760    method public int getContentHeight();
9761    method public int getContentWidth();
9762    method public android.graphics.Bitmap getFavicon();
9763    method public android.webkit.WebView.HitTestResult getHitTestResult();
9764    method public String[] getHttpAuthUsernamePassword(String, String);
9765    method public String getOriginalUrl();
9766    method public int getProgress();
9767    method public boolean getRendererPriorityWaivedWhenNotVisible();
9768    method public int getRendererRequestedPriority();
9769    method public float getScale();
9770    method public android.webkit.WebViewProvider.ScrollDelegate getScrollDelegate();
9771    method public android.webkit.WebSettings getSettings();
9772    method @NonNull public default android.view.textclassifier.TextClassifier getTextClassifier();
9773    method public String getTitle();
9774    method public String getTouchIconUrl();
9775    method public String getUrl();
9776    method public android.webkit.WebViewProvider.ViewDelegate getViewDelegate();
9777    method public int getVisibleTitleHeight();
9778    method public android.webkit.WebChromeClient getWebChromeClient();
9779    method public android.webkit.WebViewClient getWebViewClient();
9780    method @Nullable public android.webkit.WebViewRenderProcess getWebViewRenderProcess();
9781    method @Nullable public android.webkit.WebViewRenderProcessClient getWebViewRenderProcessClient();
9782    method public android.view.View getZoomControls();
9783    method public void goBack();
9784    method public void goBackOrForward(int);
9785    method public void goForward();
9786    method public void init(java.util.Map<java.lang.String,java.lang.Object>, boolean);
9787    method public void insertVisualStateCallback(long, android.webkit.WebView.VisualStateCallback);
9788    method public void invokeZoomPicker();
9789    method public boolean isPaused();
9790    method public boolean isPrivateBrowsingEnabled();
9791    method public void loadData(String, String, String);
9792    method public void loadDataWithBaseURL(String, String, String, String, String);
9793    method public void loadUrl(String, java.util.Map<java.lang.String,java.lang.String>);
9794    method public void loadUrl(String);
9795    method public void notifyFindDialogDismissed();
9796    method public void onPause();
9797    method public void onResume();
9798    method public boolean overlayHorizontalScrollbar();
9799    method public boolean overlayVerticalScrollbar();
9800    method public boolean pageDown(boolean);
9801    method public boolean pageUp(boolean);
9802    method public void pauseTimers();
9803    method public void postMessageToMainFrame(android.webkit.WebMessage, android.net.Uri);
9804    method public void postUrl(String, byte[]);
9805    method public void reload();
9806    method public void removeJavascriptInterface(String);
9807    method public void requestFocusNodeHref(android.os.Message);
9808    method public void requestImageRef(android.os.Message);
9809    method public boolean restorePicture(android.os.Bundle, java.io.File);
9810    method public android.webkit.WebBackForwardList restoreState(android.os.Bundle);
9811    method public void resumeTimers();
9812    method public void savePassword(String, String, String);
9813    method public boolean savePicture(android.os.Bundle, java.io.File);
9814    method public android.webkit.WebBackForwardList saveState(android.os.Bundle);
9815    method public void saveWebArchive(String);
9816    method public void saveWebArchive(String, boolean, android.webkit.ValueCallback<java.lang.String>);
9817    method public void setCertificate(android.net.http.SslCertificate);
9818    method public void setDownloadListener(android.webkit.DownloadListener);
9819    method public void setFindListener(android.webkit.WebView.FindListener);
9820    method public void setHorizontalScrollbarOverlay(boolean);
9821    method public void setHttpAuthUsernamePassword(String, String, String, String);
9822    method public void setInitialScale(int);
9823    method public void setMapTrackballToArrowKeys(boolean);
9824    method public void setNetworkAvailable(boolean);
9825    method public void setPictureListener(android.webkit.WebView.PictureListener);
9826    method public void setRendererPriorityPolicy(int, boolean);
9827    method public default void setTextClassifier(@Nullable android.view.textclassifier.TextClassifier);
9828    method public void setVerticalScrollbarOverlay(boolean);
9829    method public void setWebChromeClient(android.webkit.WebChromeClient);
9830    method public void setWebViewClient(android.webkit.WebViewClient);
9831    method public void setWebViewRenderProcessClient(@Nullable java.util.concurrent.Executor, @Nullable android.webkit.WebViewRenderProcessClient);
9832    method public boolean showFindDialog(String, boolean);
9833    method public void stopLoading();
9834    method public boolean zoomBy(float);
9835    method public boolean zoomIn();
9836    method public boolean zoomOut();
9837  }
9838
9839  public static interface WebViewProvider.ScrollDelegate {
9840    method public int computeHorizontalScrollOffset();
9841    method public int computeHorizontalScrollRange();
9842    method public void computeScroll();
9843    method public int computeVerticalScrollExtent();
9844    method public int computeVerticalScrollOffset();
9845    method public int computeVerticalScrollRange();
9846  }
9847
9848  public static interface WebViewProvider.ViewDelegate {
9849    method public default void autofill(android.util.SparseArray<android.view.autofill.AutofillValue>);
9850    method public boolean dispatchKeyEvent(android.view.KeyEvent);
9851    method public android.view.View findFocus(android.view.View);
9852    method public android.view.accessibility.AccessibilityNodeProvider getAccessibilityNodeProvider();
9853    method public android.os.Handler getHandler(android.os.Handler);
9854    method public default boolean isVisibleToUserForAutofill(int);
9855    method public void onActivityResult(int, int, android.content.Intent);
9856    method public void onAttachedToWindow();
9857    method public default boolean onCheckIsTextEditor();
9858    method public void onConfigurationChanged(android.content.res.Configuration);
9859    method public android.view.inputmethod.InputConnection onCreateInputConnection(android.view.inputmethod.EditorInfo);
9860    method public void onDetachedFromWindow();
9861    method public boolean onDragEvent(android.view.DragEvent);
9862    method public void onDraw(android.graphics.Canvas);
9863    method public void onDrawVerticalScrollBar(android.graphics.Canvas, android.graphics.drawable.Drawable, int, int, int, int);
9864    method public void onFinishTemporaryDetach();
9865    method public void onFocusChanged(boolean, int, android.graphics.Rect);
9866    method public boolean onGenericMotionEvent(android.view.MotionEvent);
9867    method public boolean onHoverEvent(android.view.MotionEvent);
9868    method public void onInitializeAccessibilityEvent(android.view.accessibility.AccessibilityEvent);
9869    method public void onInitializeAccessibilityNodeInfo(android.view.accessibility.AccessibilityNodeInfo);
9870    method public boolean onKeyDown(int, android.view.KeyEvent);
9871    method public boolean onKeyMultiple(int, int, android.view.KeyEvent);
9872    method public boolean onKeyUp(int, android.view.KeyEvent);
9873    method public void onMeasure(int, int);
9874    method public default void onMovedToDisplay(int, android.content.res.Configuration);
9875    method public void onOverScrolled(int, int, boolean, boolean);
9876    method public default void onProvideAutofillVirtualStructure(android.view.ViewStructure, int);
9877    method public default void onProvideContentCaptureStructure(@NonNull android.view.ViewStructure, int);
9878    method public void onProvideVirtualStructure(android.view.ViewStructure);
9879    method public void onScrollChanged(int, int, int, int);
9880    method public void onSizeChanged(int, int, int, int);
9881    method public void onStartTemporaryDetach();
9882    method public boolean onTouchEvent(android.view.MotionEvent);
9883    method public boolean onTrackballEvent(android.view.MotionEvent);
9884    method public void onVisibilityChanged(android.view.View, int);
9885    method public void onWindowFocusChanged(boolean);
9886    method public void onWindowVisibilityChanged(int);
9887    method public boolean performAccessibilityAction(int, android.os.Bundle);
9888    method public boolean performLongClick();
9889    method public void preDispatchDraw(android.graphics.Canvas);
9890    method public boolean requestChildRectangleOnScreen(android.view.View, android.graphics.Rect, boolean);
9891    method public boolean requestFocus(int, android.graphics.Rect);
9892    method public void setBackgroundColor(int);
9893    method public boolean setFrame(int, int, int, int);
9894    method public void setLayerType(int, android.graphics.Paint);
9895    method public void setLayoutParams(android.view.ViewGroup.LayoutParams);
9896    method public void setOverScrollMode(int);
9897    method public void setScrollBarStyle(int);
9898    method public boolean shouldDelayChildPressedState();
9899  }
9900
9901  public final class WebViewProviderInfo implements android.os.Parcelable {
9902    ctor public WebViewProviderInfo(String, String, boolean, boolean, String[]);
9903    method public int describeContents();
9904    method public void writeToParcel(android.os.Parcel, int);
9905    field @NonNull public static final android.os.Parcelable.Creator<android.webkit.WebViewProviderInfo> CREATOR;
9906    field public final boolean availableByDefault;
9907    field public final String description;
9908    field public final boolean isFallback;
9909    field public final String packageName;
9910    field public final android.content.pm.Signature[] signatures;
9911  }
9912
9913  public final class WebViewUpdateService {
9914    method public static android.webkit.WebViewProviderInfo[] getAllWebViewPackages();
9915    method public static String getCurrentWebViewPackageName();
9916    method public static android.webkit.WebViewProviderInfo[] getValidWebViewPackages();
9917  }
9918
9919}
9920
9921